Eclipse RCP 4 java web start - Nothing happens after equinox starts up - eclipse-rcp

I'm trying to get the Eclipse RCP application I developed to work with java web start. I've followed several guides and came up with a setup that should work (apparently not since I'm making this post).
My web start structure looks like this: http://i.imgur.com/QJBy90g.png (Cant post images because of my reputation)
The plugins directory contains all my jars, and the features directory contains all my jnlp files. APPLICATION.JNLP is the jnlp file I use start everything up.
Content of APPLICATION.JNLP:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="file://localhost/home/imas/Desktop/POWER/" href="APPLICATION.JNLP" >
<information>
<title>Shipping app - ws</title>
<vendor>Imas</vendor>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<application-desc main-class="org.eclipse.equinox.launcher.WebStartMain">
<argument>-clearPersistedState</argument>
<argument>-consoleLog</argument>
<argument>-noexit</argument>
</application-desc>
<resources>
<j2se version="1.7+"/>
<jar href="plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar"/>
<extension name="wrapper feature" href="features/com.vangenechten.shipping.wrapperfeature_1.0.0.201603310945.jnlp" />
<!-- OSGI setup -->
<property name="osgi.instance.area" value="#user.home/Desktop/POWER/configuration"/>
<property name="osgi.configuration.area" value="#user.home/Desktop/POWER/configuration"/>
<property name="eclipse.application"/>
<property name="osgi.debug" value="true"/>
<property name="osgi.clean" value="true"/>
<property name="eclipse.application" value="org.eclipse.e4.ui.workbench.swt.E4Application"/>
<property name="osgi.bundles.defaultStartLevel" value="4"/>
<property name="eclipse.product" value="com.vangenechten.shipping.product"/>
<property name="osgi.console" value=""/>
<property name="osgi.bundles" value="org.eclipse.core.runtime#2:start,org.eclipse.equinox.event#3:start,org.eclipse.equinox.ds#3:start"/>
</resources>
Content of wrapper feature jnlp:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="file://localhost/home/imas/Desktop/POWER/">
<information>
<title>Wrapperfeature</title>
<vendor>VANGENECHTEN</vendor>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources>
<j2se version="1.7+" />
</resources>
<resources>
<extension href="features/com.vangenechten.shipping.feature_1.0.0.201603310945.jnlp" />
<jar href="plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar"/>
</resources>
Content of the feature jnlp:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="file://localhost/home/imas/Desktop/POWER/">
<information>
<title>Feature</title>
<vendor>VANGENECHTEN</vendor>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources>
<j2se version="1.7+" />
</resources>
<resources>
<extension href="features/org.eclipse.rcp_4.5.1.v20150904-0015.jnlp" />
<jar href="plugins/com.vangenechten.shipping_1.0.0.201603291126.jar"/>
</resources>
Content of rcp jnlp:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="file://localhost/home/imas/Desktop/POWER/">
<information>
<title>Eclipse RCP</title>
<vendor>Eclipse.org</vendor>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources>
<j2se version="1.7+" />
</resources>
<resources>
<extension href="features/org.eclipse.e4.rcp_1.4.0.v20150903-1804.jnlp" />
<jar href="plugins/org.eclipse.help_3.6.0.v20130326-1254.jar"/>
<jar href="plugins/org.eclipse.ui_3.107.0.v20150507-1945.jar"/>
<jar href="plugins/org.eclipse.ui.workbench_3.107.0.v20150825-2206.jar"/>
<jar href="plugins/org.eclipse.update.configurator_3.3.300.v20140518-1928.jar"/>
<jar href="plugins/org.eclipse.rcp_4.5.1.v20150904-0015.jar"/>
</resources>
<resources os="Mac">
<jar href="plugins/org.eclipse.ui.cocoa_1.1.100.v20150315-1253.jar"/>
</resources>
Content of rcp 4 jnlp:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="file://localhost/home/imas/Desktop/POWER/">
<information>
<title>Eclipse e4 Rich Client Platform</title>
<vendor>Eclipse.org</vendor>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources>
<j2se version="1.7+" />
</resources>
<resources>
<jar href="plugins/org.eclipse.e4.core.services_2.0.0.v20150403-1912.jar"/>
<jar href="plugins/org.eclipse.e4.ui.workbench.swt_0.13.0.v20150504-0621.jar"/>
<jar href="plugins/org.eclipse.e4.core.commands_0.11.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.e4.ui.bindings_0.11.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.e4.ui.model.workbench_1.1.100.v20150407-1430.jar"/>
<jar href="plugins/org.eclipse.e4.ui.services_1.2.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.e4.ui.workbench.renderers.swt_0.13.0.v20150901-1347.jar"/>
<jar href="plugins/org.eclipse.e4.ui.workbench_1.3.0.v20150531-1948.jar"/>
<jar href="plugins/org.eclipse.e4.ui.css.core_0.11.0.v20150511-1937.jar"/>
<jar href="plugins/org.eclipse.e4.ui.css.swt_0.12.0.v20150511-1003.jar"/>
<jar href="plugins/org.apache.batik.css_1.7.0.v201011041433.jar"/>
<jar href="plugins/org.w3c.css.sac_1.3.1.v200903091627.jar"/>
<jar href="plugins/org.apache.batik.util_1.7.0.v201011041433.jar"/>
<jar href="plugins/org.w3c.dom.svg_1.1.0.v201011041433.jar"/>
<jar href="plugins/org.w3c.dom.smil_1.0.1.v200903091627.jar"/>
<jar href="plugins/org.w3c.dom.events_3.0.0.draft20060413_v201105210656.jar"/>
<jar href="plugins/javax.inject_1.0.0.v20091030.jar"/>
<jar href="plugins/javax.annotation_1.2.0.v201401042248.jar"/>
<jar href="plugins/org.eclipse.e4.core.di_1.5.0.v20150421-2214.jar"/>
<jar href="plugins/org.eclipse.e4.core.contexts_1.4.0.v20150828-0818.jar"/>
<jar href="plugins/org.apache.batik.util.gui_1.7.0.v200903091627.jar"/>
<jar href="plugins/javax.xml_1.3.4.v201005080400.jar"/>
<jar href="plugins/org.eclipse.e4.core.di.extensions_0.13.0.v20150421-2214.jar"/>
<jar href="plugins/org.eclipse.e4.ui.css.swt.theme_0.10.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.e4.ui.di_1.1.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.e4.ui.widgets_1.1.0.v20150427-1751.jar"/>
</resources>
<resources os="Mac">
<jar href="plugins/org.eclipse.e4.ui.workbench.renderers.swt.cocoa_0.11.300.v20150507-1945.jar"/>
</resources>
<resources>
<jar href="plugins/org.eclipse.equinox.common_3.7.0.v20150402-1709.jar"/>
<jar href="plugins/org.eclipse.equinox.ds_1.4.300.v20150423-1356.jar"/>
<jar href="plugins/org.eclipse.equinox.event_1.3.100.v20140115-1647.jar"/>
<jar href="plugins/org.eclipse.core.commands_3.7.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.core.contenttype_3.5.0.v20150421-2214.jar"/>
<jar href="plugins/org.eclipse.core.databinding_1.5.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.core.databinding.beans_1.3.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.core.databinding.observable_1.5.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.core.databinding.property_1.5.0.v20150422-0725.jar"/>
<jar href="plugins/org.eclipse.core.expressions_3.5.0.v20150421-2214.jar"/>
<jar href="plugins/org.eclipse.core.jobs_3.7.0.v20150330-2103.jar"/>
<jar href="plugins/org.eclipse.core.runtime_3.11.1.v20150903-1804.jar"/>
<jar href="plugins/org.eclipse.equinox.app_1.3.300.v20150423-1356.jar"/>
<jar href="plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar"/>
<jar href="plugins/com.ibm.icu_54.1.1.v201501272100.jar"/>
<jar href="plugins/org.eclipse.equinox.preferences_3.5.300.v20150408-1437.jar"/>
<jar href="plugins/org.eclipse.equinox.registry_3.6.0.v20150318-1503.jar"/>
<jar href="plugins/org.eclipse.equinox.simpleconfigurator_1.1.100.v20150423-1455.jar"/>
<jar href="plugins/org.eclipse.osgi_3.10.101.v20150820-1432.jar"/>
<jar href="plugins/org.eclipse.osgi.compatibility.state_1.0.100.v20150402-1551.jar"/>
<jar href="plugins/org.eclipse.osgi.services_3.5.0.v20150519-2006.jar"/>
</resources>
<resources os="Solaris" arch="sparc">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.solaris.sparc_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Solaris" arch="x86">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.solaris.x86_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Mac" arch="x86_64">
<jar href="plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="ppc">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.ppc_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="ppc64">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.ppc64_1.0.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="ppc64le">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.ppc64le_1.0.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="x86">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="s390x">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.s390x_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="s390">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.s390_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Linux" arch="x86_64">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="AIX" arch="ppc">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.aix.ppc_1.1.200.v20150602-1417.jar"/>
</resources>
<resources os="AIX" arch="ppc64">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.aix.ppc64_1.1.200.v20150602-1417.jar"/>
</resources>
<resources os="HP-UX" arch="ia64">
<jar href="plugins/org.eclipse.equinox.launcher.gtk.hpux.ia64_1.0.200.v20150602-1417.jar"/>
</resources>
<resources os="Windows" arch="x86">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.300.v20150602-1417.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417.jar"/>
</resources>
<resources>
<jar href="plugins/org.eclipse.swt_3.104.1.v20150825-0743.jar"/>
<jar href="plugins/org.eclipse.swt.gtk.linux.x86_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Windows" arch="x86">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_64_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="x86">
<jar href="plugins/org.eclipse.swt.gtk.linux.x86_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="s390x">
<jar href="plugins/org.eclipse.swt.gtk.linux.s390x_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="s390">
<jar href="plugins/org.eclipse.swt.gtk.linux.s390_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Solaris" arch="sparc">
<jar href="plugins/org.eclipse.swt.gtk.solaris.sparc_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Solaris" arch="x86">
<jar href="plugins/org.eclipse.swt.gtk.solaris.x86_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="ppc">
<jar href="plugins/org.eclipse.swt.gtk.linux.ppc_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="ppc64">
<jar href="plugins/org.eclipse.swt.gtk.linux.ppc64_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="ppc64le">
<jar href="plugins/org.eclipse.swt.gtk.linux.ppc64le_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Linux" arch="x86_64">
<jar href="plugins/org.eclipse.swt.gtk.linux.x86_64_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="Mac" arch="x86_64">
<jar href="plugins/org.eclipse.swt.cocoa.macosx.x86_64_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="AIX" arch="ppc">
<jar href="plugins/org.eclipse.swt.gtk.aix.ppc_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="AIX" arch="ppc64">
<jar href="plugins/org.eclipse.swt.gtk.aix.ppc64_3.104.1.v20150825-0743.jar"/>
</resources>
<resources os="HP-UX" arch="ia64">
<jar href="plugins/org.eclipse.swt.gtk.hpux.ia64_3.104.1.v20150825-0743.jar"/>
</resources>
<resources>
<jar href="plugins/org.eclipse.equinox.util_1.0.500.v20130404-1337.jar"/>
<jar href="plugins/org.eclipse.jface_3.11.0.v20150602-1400.jar"/>
<jar href="plugins/org.eclipse.jface.databinding_1.7.0.v20150406-2148.jar"/>
<jar href="plugins/org.eclipse.e4.ui.workbench3_0.13.0.v20150422-0725.jar"/>
<jar href="plugins/org.apache.felix.gogo.command_0.10.0.v201209301215.jar"/>
<jar href="plugins/org.apache.felix.gogo.runtime_0.10.0.v201209301036.jar"/>
<jar href="plugins/org.apache.felix.gogo.shell_0.10.0.v201212101605.jar"/>
<jar href="plugins/org.eclipse.equinox.console_1.1.100.v20141023-1406.jar"/>
<jar href="plugins/org.eclipse.e4.ui.workbench.addons.swt_1.2.0.v20150512-1414.jar"/>
<jar href="plugins/org.eclipse.equinox.bidi_0.10.0.v20130327-1442.jar"/>
<jar href="plugins/org.eclipse.e4.ui.dialogs_1.0.0.v20150513-0856.jar"/>
<jar href="plugins/org.apache.commons.jxpath_1.3.0.v200911051830.jar"/>
<jar href="plugins/org.eclipse.e4.emf.xpath_0.1.100.v20150513-0856.jar"/>
<jar href="plugins/org.eclipse.e4.core.di.annotations_1.4.0.v20150528-1451.jar"/>
<jar href="plugins/org.eclipse.emf.ecore_2.11.1.v20150805-0538.jar"/>
<jar href="plugins/org.eclipse.emf.common_2.11.0.v20150805-0538.jar"/>
<jar href="plugins/org.eclipse.emf.ecore.change_2.11.0.v20150805-0538.jar"/>
<jar href="plugins/org.eclipse.emf.ecore.xmi_2.11.1.v20150805-0538.jar"/>
</resources>
<resources os="gtk">
<jar href="plugins/org.eclipse.e4.ui.swt.gtk_1.0.1.v20150708-1529.jar"/>
</resources>
NOTE: I put the gtk linux x 86 version of org.eclipse.swt directly as a resource (without os="Linux" arch="x86") because I would receive no class def found errors. For some reason web start wouldn't load the jar, so I added it directly (Shouldn't be an issue in production, since the application will run on raspberry pi's).
Now when I start javaws with APPLICATION.JNLP I get no error, but the application doesn't start. Below a screenshot of the javaws console
Screenshot of console -> http://i.imgur.com/J0t2zCv.png
NOTE Console doesn't say anything about an error. Normally when there is an error it is showed in the console and written to a log file.
After running the jnlp file, the following folders are added to the configuration folder -> org.eclipse.runtime, org.eclipse.equinox.rcp, org.eclipse.osgi and org.eclipse.update
Any help would be appreciated!

Related

Signing JNLP file with dynamic arguments

I am signing a JNLP file having APPLICATION.JNLP in jar file under folder JNLP-INF. My APPLICATION.JNLP placed in the jar looks as shown below
<jnlp spec="1.0" codebase="https://www.example.com:7008/abc">
<information>
<title>XYZ</title>
<vendor>XYZ</vendor>
<description>XYZ</description>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="abc.jar" />
</resources>
<application-desc main-class="tempclass.Class1">
<argument>*</argument>
<argument>*</argument>
<argument>*</argument>
<argument>*</argument>
<argument>*</argument>
<argument>*</argument>
<argument>*</argument>
</application-desc>
</jnlp>
My generated JNLP file from jsp is shown below
<jnlp spec="1.0" codebase="https://www.example.com:7008/abc">
<information>
<title>XYZ</title>
<vendor>XYZ</vendor>
<description>XYZ</description>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="abc.jar" />
</resources>
<application-desc main-class="tempclass.Class1">
<argument>1</argument>
<argument>2</argument>
<argument>3</argument>
<argument>4</argument>
<argument>5</argument>
<argument>6</argument>
<argument>7</argument>
</application-desc>
</jnlp>
The issue I am facing is on using this APPLICATION.JNLP I am getting "Signed JNLP file do not match with the downloaded jnlp file". On adding exact argument parameters it works. I want to use dynamic launching parameters. What I am doing wrong?
Since Java 8 Update 161 you can define secure arguments within your JNLP.
Insert the property inside the resources element
<property name="jnlp.secure.argument.<argument-name>" value="true"/>
You can also use a wildcard, so that all arguments are marked secure
<property name="jnlp.secure.argument.*" value="true"/>
If I read the doc correctly, the JNLP template in the signed .jar file should be named JNLP-INF/APPLICATION_TEMPLATE.JNLP
JNLP-INF/APPLICATION.JNLP is for the no dynamic case.

Ant stops starting in Eclipse after editing ant file

When I edit my ant file, eclipse doesn't execute the ant correctly (does nothing). The file was auto generated from exporting a runnable jar file and I edited it afterwards. Here the ant file:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project default="create_run_jar" name="Create Runnable Jar for Project Elevox">
<!--this file was created by Eclipse Runnable JAR Export Wizard-->
<!--ANT 1.7 is required -->
<!--define folder properties-->
<property name="dir.buildfile" value="."/>
<property name="dir.workspace" value="${dir.buildfile}/.."/>
<property name="dir.jarfile" value="C:/Users/faust/Desktop/Elevox"/>
<property name="dir.target" value="C:/Users/faust/Desktop/Elevox/elevox"/>
<target name="create_run_jar">
<copydir src="${dir.buildfile}/image" dest="${dir.target}/image"/>
<copydir src="${dir.buildfile}/models" dest="${dir.target}/models"/>
<copydir src="${dir.buildfile}/music" dest="${dir.target}/music"/>
<copydir src="${dir.buildfile}/shader" dest="${dir.target}/shader"/>
<jar destfile="${dir.jarfile}/Elevox.jar" filesetmanifest="mergewithoutmain">
<manifest>
<attribute name="Main-Class" value="main.Elevox"/>
<attribute name="Class-Path" value="."/>
</manifest>
<fileset dir="${dir.buildfile}/bin"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/disruptor.jar"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/jogg-0.0.7.jar"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/jorbis-0.0.15.jar"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/lwjgl_util.jar"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/lwjgl.jar"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/PNGDecoder.jar"/>
<zipfileset excludes="META-INF/*.SF" src="${dir.buildfile}/lib/slick-util.jar"/>
</jar>
<exec executable="cmd">
<arg value="/c"/>
<arg value="${dir.buildfile}/bundle.bat"/>
<arg value="-p"/>
</exec>
</target>
</project>
Did I make a mistake?
I solved it. It was a classpath error of a specific jar file, which was not well added to the classpath (path contained %20). After deleting it from the classpath and adding it manually again it worked.

GWTP Compile Error Rest-Dispatch

I am having trouble with GWTP Rest-Dispatch, when I include the Rest-Dispatch configurations (as stated in the wiki) these compiler errors: http://pastebin.com/eWNg2c94 (compile log)
I have no idea what is causing this, I am using Ivy dependency manager (IvyDE eclipse). I have verified all the gwtp-rest dependencies exist. I am using both Dispatchers (Rpc/Rest) here is my applications gwt module configuration.
<?xml version="1.0" encoding="UTF-8"?>
<module rename-to="ims">
<!-- Inherit the core Web Toolkit stuff -->
<inherits name="com.google.gwt.user.User" />
<inherits name="com.google.gwt.logging.Logging"/>
<set-property name="gwt.logging.consoleHandler" value="DISABLED"/>
<set-property name="gwt.logging.popupHandler" value="DISABLED" />
<extend-property name="locale" values="en"></extend-property>
<!-- Core module inherits -->
<inherits name="nz.co.doltech.framework.module.Framework" />
<inherits name="nz.co.doltech.ims.Resources" />
<!-- Theme module inherits -->
<inherits name="nz.co.doltech.framework.themes.SyrenaTheme"/>
<!-- GXT -->
<!--stylesheet src="reset.css" /-->
<!--inherits name='com.sencha.gxt.ui.GXT' /-->
<!-- GXT Theme -->
<!-- <inherits name='com.sencha.gxt.theme.blue.Blue'/> -->
<!-- <inherits name='com.sencha.gxt.theme.gray.Gray' /> -->
<!--inherits name="com.sencha.gxt.theme.neptune.Theme" /-->
<!-- Library module inherits -->
<inherits name="com.gwtplatform.dispatch.rest.DispatchRest"/>
<inherits name="com.gwtplatform.dispatch.rpc.DispatchRpc"/>
<inherits name="com.gwtplatform.mvp.Mvp"/>
<inherits name="com.google.gwt.uibinder.UiBinder"/>
<inherits name="com.google.gwt.query.Query"/>
<inherits name="org.gwtbootstrap3.GwtBootstrap3CDN"/>
<inherits name="nz.co.doltech.framework.extensions.gwtbootstrap3.datepicker.Datepicker"/>
<inherits name="org.atmosphere.gwt.Client"/>
<replace-with class="org.atmosphere.gwt.client.impl.IEHTMLFileCometTransport">
<when-type-is class="org.atmosphere.gwt.client.impl.CometTransport"/>
<any>
<when-property-is name="user.agent" value="ie6"/>
<when-property-is name="user.agent" value="ie8"/>
<when-property-is name="user.agent" value="ie9"/>
</any>
</replace-with>
<!-- Framework module inherits -->
<inherits name="nz.co.doltech.framework.libraries.maydu.validation.ValidationLibrary" />
<inherits name="nz.co.doltech.framework.libraries.chosen.Chosen" />
<!-- Module entry point -->
<entry-point class="nz.co.doltech.ims.client.Application"/>
<extend-configuration-property name="gin.ginjector.modules"
value="nz.co.doltech.ims.client.gin.ClientModule" />
<set-configuration-property name="gwtp.bootstrapper"
value="nz.co.doltech.ims.client.BootstrapperImpl"/>
<set-configuration-property name="gwtp.prebootstrapper"
value="nz.co.doltech.ims.client.BootstrapperImpl.PreBootstrapperImpl"/>
<extend-configuration-property name="document.compatMode" value="BackCompat" />
<!-- Specify the paths for translatable code -->
<source path="client" />
<source path="shared" />
<generate-with class="com.google.gwt.uibinder.rebind.FixedUiBinderGenerator">
<when-type-assignable class="com.google.gwt.uibinder.client.UiBinder"/>
</generate-with>
<!-- RPC Serialization Ignores -->
<extend-configuration-property name="rpc.blacklist" value="javax.*"/>
<extend-configuration-property name="rpc.blacklist" value="com.google.gwt.user.client.ui.*"/>
<extend-configuration-property name="rpc.blacklist" value="com.google.gwt.query.client.*"/>
<extend-configuration-property name="rpc.blacklist" value="com.google.gwt.aria.client.*"/>
<extend-configuration-property name="rpc.blacklist" value="com.google.gwt.dom.client.*"/>
<extend-configuration-property name="rpc.blacklist" value="com.google.gwt.validation.client.*"/>
<extend-configuration-property name="rpc.blacklist" value="nz.co.doltech.framework.extensions.gwtbootstrap3.client.*"/>
<extend-configuration-property name="rpc.blacklist" value="nz.co.doltech.framework.libraries.maydu.validation.client.*"/>
<extend-configuration-property name="rpc.blacklist" value="nz.co.doltech.framework.themes.syrena.ui.*"/>
</module>
My ANT build script:
<!--
================================
Build Application Binaries
================================
-->
<target name="javac" depends="tests" description="Compile java source">
<mkdir dir="war/WEB-INF/classes" />
<javac srcdir="src" includes="**" encoding="utf-8" destdir="war/WEB-INF/classes" source="1.7" target="1.7"
nowarn="true" debug="true" debuglevel="lines,vars,source" includeantruntime="false">
<classpath refid="project.class.path" />
<classpath refid="tomcat.libs"/>
</javac>
<copy todir="war/WEB-INF/classes">
<fileset dir="src" excludes="**/*.java" />
<fileset dir="resources" excludes="**/*.java" />
<fileset dir="database" excludes="**/*.java" />
</copy>
</target>
<target name="gwtc" depends="javac" description="GWT compile to JavaScript">
<java failonerror="true" fork="true" classname="com.google.gwt.dev.Compiler" maxmemory="512m">
<classpath>
<pathelement location="src"/>
<path refid="project.class.path"/>
</classpath>
<arg value="-war"/>
<arg value="war"/>
<!--arg value="-strict" /-->
<!-- Logging level arguments -->
<!--arg value="-logLevel" />
<arg value="ERROR" /-->
<!-- Optimization arguments -->
<!--arg value="-XenableClosureCompiler"/>
<arg value="-XdisableClassMetadata"/-->
<!-- add jvmarg -Xss16M or similar if you see a StackOverflowError -->
<jvmarg value="-Xmx512M"/>
<!-- Additional arguments like -style PRETTY or -logLevel DEBUG -->
<arg value="nz.co.doltech.framework.module.Framework"/>
<arg value="nz.co.doltech.framework.login.Login"/>
<arg value="nz.co.doltech.ims.Ims"/>
</java>
</target>
<target name="build" depends="gwtc" description="Build web application entry point"/>
If anyone else has had similar problems I would really really appreciate the help.
You are not using MvpWithEntryPoint but your own entry point, so you need to tell GIN to load the generated modules. Can you make sure your Ginjector looks like the one described here: https://github.com/ArcBees/GWTP/wiki/Rest-Dispatch#installing-with-your-own-ginjector
MOre specifically, in the #GinModules you need to add this argument: properties = {"gin.ginjector.modules"} and the following method to your interface: RestDispatch getRestDispatch();

Unable to run-applet default Griffon app

With a new Griffon (v0.9.4) app, having nothing more done to it than to install plugins that will be needed for the project later, I am unable to griffon run-applet or run-webstart on the project. The error I get is JAR resources in JNLP file are not signed by same certificate
Here is the Launch File:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE jnlp SYSTEM "http://java.sun.com/dtd/JNLP-1.5.dtd">
<jnlp
version="0.1"
codebase="file:/C:/Users/[REDACTED]/Client/staging/"
href="applet.jnlp"
>
<information>
<title>Client 0.1</title>
<vendor>[REDACTED]</vendor>
<homepage href="http://localhost/Client"/>
<!--fallback description-->
<description>Client 0.1</description>
<description kind="one-line">Client 0.1</description>
<description kind="short">Client 0.1</description>
<description kind="tooltip">Client 0.1</description>
<!-- fallback icon -->
<icon href="griffon-icon-48x48.png" kind="default" width="48" height="48"/>
<!-- icon used for splash screen -->
<icon href="griffon.png" kind="default" width="391" height="123"/>
<!-- icon used in menu -->
<icon href="griffon-icon-16x16.png" kind="default" width="48" height="48"/>
<!-- icon used on desktop -->
<icon href="griffon-icon-32x32.png" kind="default" width="32" height="32"/>
<!-- to create shortcuts, uncomment this
<shortcut online="true">
<desktop/>
<menu submenu="Client"/>
</shortcut>
-->
<offline-allowed/>
</information>
<security>
<all-permissions/>
<!--<j2ee-application-client-permissions/>-->
</security>
<resources>
<property name="griffon.runmode" value="applet"/>
<property name="jnlp.packEnabled" value="true"/>
<j2se version="1.5+" />
<!-- auto-added jars follow, griffon-rt, app, and groovy -->
<jar href='griffon-rt-0.9.4.jar' main='true'/>
<jar href='Client.jar' main='false' />
<jar href='commons-0.2.jar'/>
<jar href='commons-beanutils-1.8.0.jar'/>
<jar href='commons-codec-1.3.jar'/>
<jar href='commons-collections-3.2.1.jar'/>
<jar href='commons-lang-2.4.jar'/>
<jar href='ezmorph-1.0.6.jar'/>
<jar href='griffon-i18n-addon-0.4.1.jar'/>
<jar href='griffon-jbusycomponent-addon-0.5.2.jar'/>
<jar href='griffon-jxlayer-addon-0.2.jar'/>
<jar href='griffon-miglayout-addon-0.3.jar'/>
<jar href='griffon-rest-addon-0.7.1.jar'/>
<jar href='groovy-all-1.8.2.jar'/>
<jar href='http-builder-0.5.1.jar'/>
<jar href='httpclient-4.0.3.jar'/>
<jar href='httpcore-4.0.1.jar'/>
<jar href='jbusycomponent-1.2.1.jar'/>
<jar href='jcl-over-slf4j-1.6.1.jar'/>
<jar href='json-lib-2.3-jdk15.jar'/>
<jar href='jul-to-slf4j-1.6.1.jar'/>
<jar href='jxlayer-3.0.4.jar'/>
<jar href='log4j-1.2.16.jar'/>
<jar href='miglayout-3.7.4.jar'/>
<jar href='multiplegradientpaint-1.0.jar'/>
<jar href='nekohtml-1.9.9.jar'/>
<jar href='org.springframework.beans-3.0.5.RELEASE.jar'/>
<jar href='org.springframework.context-3.0.5.RELEASE.jar'/>
<jar href='org.springframework.core-3.0.5.RELEASE.jar'/>
<jar href='signpost-commonshttp4-1.2.1.1.jar'/>
<jar href='signpost-core-1.2.1.1.jar'/>
<jar href='slf4j-api-1.6.1.jar'/>
<jar href='slf4j-log4j12-1.6.1.jar'/>
<jar href='swing-worker-1.1.jar'/>
<jar href='swingx-beaninfo-1.6.2-2.jar'/>
<jar href='swingx-core-1.6.2-2.jar'/>
<jar href='swingxbuilder-0.1.8.1.jar'/>
<jar href='timingframework-1.0.jar'/>
<jar href='xml-resolver-1.2.jar'/>
<!-- Add all extra jars below here, or the app may break -->
</resources>
<resources os='Windows' arch='x86'>
</resources>
<applet-desc
documentbase="file:/C:/Users/[REDACTED]/Client/staging/"
name="ClientApplet"
main-class="griffon.swing.SwingApplet"
width="320"
height="240">
<!-- params are ignored when referenced from web page for 6u10 -->
<!--<param name="key1" value="value1"/>-->
<!--<param name="key2" value="value2"/>-->
</applet-desc>
</jnlp>
Here is the Exception:
JNLPException[category: Launch File Error : Exception: null : LaunchDesc:
<jnlp spec="1.0+" codebase="file:/C:/Users/[REDACTED]/Client/staging/" version="0.1" href="file:/C:/Users/[REDACTED]/Client/staging/applet.jnlp">
<information>
<title>Client 0.1</title>
<vendor>[REDACTED]</vendor>
<homepage href="http://localhost/Client"/>
<description>Client 0.1</description>
<description kind="short">Client 0.1</description>
<description kind="one-line">Client 0.1</description>
<description kind="tooltip">Client 0.1</description>
<icon href="file:/C:/Users/[REDACTED]/Client/staging/griffon-icon-48x48.png" height="48" width="48" kind="default"/>
<icon href="file:/C:/Users/[REDACTED]/Client/staging/griffon.png" height="123" width="391" kind="default"/>
<icon href="file:/C:/Users/[REDACTED]/Client/staging/griffon-icon-16x16.png" height="48" width="48" kind="default"/>
<icon href="file:/C:/Users/[REDACTED]/Client/staging/griffon-icon-32x32.png" height="32" width="32" kind="default"/>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<update check="timeout" policy="always"/>
<resources>
<property name="griffon.runmode" value="applet"/>
<java version="1.5+"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/griffon-rt-0.9.4.jar" download="eager" main="true"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/Client.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/commons-0.2.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/commons-beanutils-1.8.0.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/commons-codec-1.3.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/commons-collections-3.2.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/commons-lang-2.4.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/ezmorph-1.0.6.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/griffon-i18n-addon-0.4.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/griffon-jbusycomponent-addon-0.5.2.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/griffon-jxlayer-addon-0.2.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/griffon-miglayout-addon-0.3.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/griffon-rest-addon-0.7.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/groovy-all-1.8.2.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/http-builder-0.5.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/httpclient-4.0.3.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/httpcore-4.0.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/jbusycomponent-1.2.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/jcl-over-slf4j-1.6.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/json-lib-2.3-jdk15.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/jul-to-slf4j-1.6.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/jxlayer-3.0.4.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/log4j-1.2.16.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/miglayout-3.7.4.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/multiplegradientpaint-1.0.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/nekohtml-1.9.9.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/org.springframework.beans-3.0.5.RELEASE.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/org.springframework.context-3.0.5.RELEASE.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/org.springframework.core-3.0.5.RELEASE.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/signpost-commonshttp4-1.2.1.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/signpost-core-1.2.1.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/slf4j-api-1.6.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/slf4j-log4j12-1.6.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/swing-worker-1.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/swingx-beaninfo-1.6.2-2.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/swingx-core-1.6.2-2.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/swingxbuilder-0.1.8.1.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/timingframework-1.0.jar" download="eager" main="false"/>
<jar href="file:/C:/Users/[REDACTED]/Client/staging/xml-resolver-1.2.jar" download="eager" main="false"/>
</resources>
<applet-desc name="ClientApplet" main-class="griffon.swing.SwingApplet" documentbase="file:/C:/Users/[REDACTED]/Client/staging/" width="320" height="240"/>
</jnlp> ]
at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(LaunchDownload.java:1798)
at com.sun.javaws.LaunchDownload.checkSignedResources(LaunchDownload.java:1508)
at com.sun.javaws.Launcher.prepareResources(Launcher.java:1231)
at com.sun.javaws.Launcher.prepareAllResources(Launcher.java:620)
at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:326)
at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:198)
at com.sun.javaws.Launcher.launch(Launcher.java:115)
at com.sun.javaws.Main.launchApp(Main.java:417)
at com.sun.javaws.Main.continueInSecureThread(Main.java:249)
at com.sun.javaws.Main$1.run(Main.java:111)
at java.lang.Thread.run(Unknown Source)
I'm not really sure where to begin looking for how to fix this, but I would think that it should be able to work out-of-the-box.
Looks like one of those dependencies comes with its own signature and the packaging process does not remove it. This could probably be a bug in the $GRIFFON_HOME/scripts/Package.groovy
Different extensions can use different code signing certificates. Presuming that the Jars must stay signed by whoever signs them now, move those Jars into their own extension(s). See the component-desc Element for further details.
As an aside, there are a number of suspect aspects to the JNLP file shown. Make sure you validate it using JaNeLA.

How to conditionally include manifest options when making a JAR in ANT

I am using ANT to manage multiple projects. I have a build-common.xml script that individual projects include. Some projects are libraries, others are programs. For the programs, I would like to include
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
in the <jar> tag. For libraries, I would like to have an empty jar tag as follows.
<target name="jar" depends="compile" description="generate a jar">
<mkdir dir="${build}/jar" />
<property name="jarfile" value="${jar}/${ant.project.name}.jar" />
<jar jarfile="${jarfile}" basedir="${classes}">
</jar>
</target>
Is there a way I can include the manifest attribute Main-Class only if the property main.class is defined?
Thanks!
Use conditional targets:
<target name="jar-mkdir" depends="compile" description="generate a jar">
<mkdir dir="${build}/jar" />
<property name="jarfile" value="${jar}/${ant.project.name}.jar" />
</target>
<target name="jar-main" depends="compile" description="generate a jar" if="main.class">
<jar jarfile="${jarfile}" basedir="${classes}">
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
</jar>
</target>
<target name="jar-nomain" depends="compile" description="generate a jar" unless="main.class">
<jar jarfile="${jarfile}" basedir="${classes}">
</jar>
</target>
<target name="jar" depends="compile, jar-mkdir, jar-main, jar-nomain" description="generate a jar">
</target>
This will run jar-main (and add the manifest) only when main.class is present. When it is not present jar-nomain will run.