This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Today I try to create new Maven Enterprise Application project using the integrated template in NB (20090319). I was very unpleasantly surprised when I see that Application Client Module is missing in the "[New Project][Maven][Maven Enterprise Application][Settings]" wizard page. There are only: - EJB Module - Web App Module - Assembly Module For comparison in "[New Project][Java EE]" the Enterprise Application Client can be created as new or with existing sources. Also in "[Enterprise Application][Server and Settings]" 2 more options are available: - Create Application Client Module - Main Class
a missing feature is not a defect. I'm not entirely sure what the application client does but I was told it's reasonably rare and we can skip it for 6.7 (unlike ejbs, wars and ears)
The main duties of this modules are: - to sign all Client Application JARs; - to prepare the JNLP file; - to put JNLP file and signed JARs in the Java Web Start (JWS) Servlet from where can be accessed. This functionality is already implemented from the old (ANT based) Java EE Application Project. The only problem with this already implemented functionality is that the new JNLP specification implemented in VM u10+ is not supported. To be able to use it the application should be started with JDK/JRE u6 for example.
The current supported application client is: http://java.sun.com/xml/ns/javaee/application-client_5.xsd It will be very good if Swing based Web Services Client also is supported: http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_2.xsd
SwingX Web Services project: https://swingx-ws.dev.java.net/
Now: - on build EnterpriseApplication.ear is created; - on deploy: 1. "gfdeploy" folder is created 2. EnterpriseApplicationClient.jar is created when "...-app-client" is selected as "Client Module" in "Run" tree node of the Project Properties. When "...-war" is selected the EnterpriseApplicationClient.jar is not created.
Also the steps for Deploy and Run of one JEE Application Client are different for different Java EE Servers. For example the Apache Geronimo steps are: http://cwiki.apache.org/GMOxDOC21/deploy-and-run-jee-application-client.html
All of my Java EE project are with Java Web Start Clients (Java EE Application Client). That's why I can not use Java EE Maven support. In the same time I would like to switch from ANT to MAVEN as soon as possible. What are the plans for Maven to support Java EE Application Clients?
not for 6.7, we are after last milestone already. that's why the issue's target milestone is marked "next"
not for 6.8 either I'm sorry.
Why so? This issue is related with Rich Internet Applications (RIA) where the competitors are Adobe Flex, Eclipse RCP, etc. All Java RIA Clients are based on Swing and/or JavaFX. So, if this feature is not working for the new technologies together like GlassFish + JWS + Swing/JavaFX where is the focus of Sun for RIA market?
I forgot the last big competitor: Microsoft Silverlight.
You can definitely create rich clients which connect to a Java EE backend even now. The "Java EE application client" capabilities are not really required. What specifically would you like to use that requires the "appclient" capability? My opinion is that you can just create an ordinary Maven Java project for the client, and a Maven Web application for the backend. I am not sure if the Maven Java project supports WebStart - if it does not, then it should, I think. Same applies to Ant projects - you should be able to create a Java SE Ant project (which supports WebStart well) for the frontend, and an Ant web application for the backend. I don't see why AppClient should be needed.
I am totally agree that I can create rich client manually. Also with some restrictions regarding new features in JDK6 this is possible with ANT. The problem is that Maven Java Project does not support Java Web Start (JWS). That's why Maven Enterprise Application project doesn't support JWS also.
what exactly does "webstart support" mean? You can surely configure the project with http://mojo.codehaus.org/webstart/webstart-maven-plugin/ (not sure about the quality of the plugin, never tried it myself). Do you have the project configured and some feature in the IDE cannot be used? What is the problem and is the expected result? mkubec: BTW what do the ant projects do apart from adding a panel to the customizer and adding some build scripts to build the webapp?
The plugin looks OK. I will try it when I have time. In this case it is good to integrate it in Maven Enterprise Application project and NetBeans. This will help testing and bug fixing. The problem with ANT and JWS is that the generated JWS Client can not be used with new versions of JDK/JRE. Now my clients use Java 6 u1 because this is the only version which can be used with generated client. I haven't time to search where is the problem and that's why my clients works with old Java version. Also from the internet I see that many people have similar problems and they point that the other working JDK version is 6u7.
Re. "BTW what do the ant projects do apart from adding a panel to the customizer and adding some build scripts to build the webapp?" Basically that's all, JNLP descriptor is generated from project metadata during project build. Actually it doesn't build webapp, just JNLP descriptor and HMTL test page. And it's not implemented in ant/projects but in javawebstart module. Re. "The problem with ANT and JWS is that the generated JWS Client can not be used with new versions of JDK/JRE. Now my clients use Java 6 u1 because this is the only version which can be used with generated client. I haven't time to search where is the problem and that's why my clients works with old Java version. Also from the internet I see that many people have similar problems and they point that the other working JDK version is 6u7." Do you mean that generated JNLP file doesn't work with latest JDKs? Is there any bug report?
> "Do you mean that generated JNLP file doesn't work with latest JDKs? Is there any bug report?" The problem is in JNLP Servlet and the generated JNLP file from this servlet. When you start the client from NetBeans it works because the starting mode is different than when you start the client from the Web using JNLP Servlet.
Changing the default owner to issues@javaee.
+1 Still missing in in NetBeans 6.9
This old bug may not be relevant anymore. If you can still reproduce it in 8.2 development builds please reopen this issue. Thanks for your cooperation, NetBeans IDE 8.2 Release Boss