|
Replies:
9
-
Last Post:
Jan 14, 2008 7:50 AM
by: tjquinn
|
|
|
|
|
|
|
web start
Posted:
Oct 25, 2007 4:28 PM
|
|
|
Hi people! I did a fresh start of the glassfish on a remote host roberth, I succesful deployed a working enterprise app but I can't start the client. I get the same error by appclient or javaws
Oct 25, 2007 8:06:18 PM com.sun.enterprise.appclient.MainWithModuleSupport prepareSecurity INFO: Security Manager is ON. Oct 25, 2007 8:06:18 PM com.sun.enterprise.appclient.MainWithModuleSupport setTargetServerProperties INFO: ACC001:Using ClientContainer file: [/tmp/sunacc56917.xml]. Oct 25, 2007 8:06:18 PM com.sun.enterprise.appclient.MainWithModuleSupport <init> INFO: ACC024: IIOP endpoint(s) = roberth:3700 Oct 25, 2007 8:06:20 PM com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl <init> WARNING: "IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 127.0.0.1; port: 3700" org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
What am I doing wrong ?.. Am I forgetting something ?.. I 'm using glassfish V2-b58g
Thank you !!
|
|
|
|
|
|
|
Re: web start
Posted:
Oct 26, 2007 7:46 AM
in response to: sebaxtz
|
|
|
Hi.
You may have two distinct but related problems, one in the appclient script case and one in the Java Web Start case.
Notice that the error message refers to host 127.0.0.1 and not roberth? This means that the app client container's local ORB is trying to contact a remote ORB at that loopback address and finding no ORB there. It looks as if your system is translating roberth to 127.0.0.1. Do you have a setting like that in your hosts file, for example?
This <target-server> information is provided differently during a Java Web Start launch. In this case, because the server knows what host and port its ORB uses it sends this information automatically in the JNLP document that launches the app client. But, if the server sends roberth:3700 to the client but the client translates roberth to the loopback address 127.0.0.1 then the attempt to connect to the server's ORB will actually try to connect to the local system, and presumably it is not running there.
Can you verify how your client system is translating roberth?
- Tim
|
|
|
|
|
|
|
|
Re: web start
Posted:
Oct 26, 2007 4:08 PM
in response to: tjquinn
|
|
|
HI Tim, thank you for your reply !.. Host roberth is succesful resolved:
sebaxtz@sebaxtz ent-test-app-client]$ ping roberth PING roberth (10.0.0.100) 56(84) bytes of data. 64 bytes from roberth (10.0.0.100): icmp_seq=1 ttl=64 time=0.215 ms 64 bytes from roberth (10.0.0.100): icmp_seq=2 ttl=64 time=0.176 ms sebaxtz@sebaxtz ent-test-app-client]$ ping sebaxtz PING sebaxtz (127.0.0.1) 56(84) bytes of data. 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=1 ttl=64 time=0.063 ms 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=2 ttl=64 time=0.041 ms 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=3 ttl=64 time=0.046 ms
I don't know what read, and where I should look for something additional !.. its driving me crazy... I get the same error message, pointing to 127.0.0.1 if I run from command line:
java -Dorg.omg.CORBA.ORBInitialHost=roberth -classpath /opt/glassfish/lib/appserv-rt.jar:./ent-test-app-client.jar:/opt/glassfish/lib/javaee.jar enttest.Main BeanTestRemote
I don't know WHY it's looking for localhost ! opt/glassfish/ is the directory of the local glassfish, turned off. if I start it (localhost glassfish not roberth), I get:
Exception in thread "main" java.lang.NoClassDefFoundError: ejb/BeanTestRemote at enttest.Main.<init>(Main.java:48) at enttest.Main.main(Main.java:59)
??????? I really don't know how override the F____ING 127.0.0.1 ! it seems like if would find the JNDI in localhost, but why ??..
kind regards!!
|
|
|
|
|
|
|
|
Re: web start
Posted:
Oct 26, 2007 11:21 PM
in response to: sebaxtz
|
|
|
I have something you can try just for kicks. I apologize in advance if I'm trivializing your problem.
When I first started using the web start functionality, I was confused by something similar. In my development environment I usually end up changing the network address (ip) of the default orb listener (orb-listener-1) to the actual IP address of the machine. If I don't, web start tries to use 127.0.0.1.
In the GUI, go to:
Configuration --> ORB --> IIOP Listeners --> orb-listener-1
The network address defaults to 0.0.0.0 for me. If it is, change it to the IP address of your machine temporarily and see if that makes and difference. I don't know what impact (if any) this would have in a production environment.
Ryan
glassfish@javadesktop.org wrote: > HI Tim, thank you for your reply !.. > Host roberth is succesful resolved: > > sebaxtz@sebaxtz ent-test-app-client]$ ping roberth > PING roberth (10.0.0.100) 56(84) bytes of data. > 64 bytes from roberth (10.0.0.100): icmp_seq=1 ttl=64 time=0.215 ms > 64 bytes from roberth (10.0.0.100): icmp_seq=2 ttl=64 time=0.176 ms > > sebaxtz@sebaxtz ent-test-app-client]$ ping sebaxtz > PING sebaxtz (127.0.0.1) 56(84) bytes of data. > 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=1 ttl=64 time=0.063 ms > 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=2 ttl=64 time=0.041 ms > 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=3 ttl=64 time=0.046 ms > > > I don't know what read, and where I should look for something additional !.. > its driving me crazy... I get the same error message, pointing to 127.0.0.1 if I run from command line: > > java -Dorg.omg.CORBA.ORBInitialHost=roberth -classpath /opt/glassfish/lib/appserv-rt.jar:./ent-test-app-client.jar:/opt/glassfish/lib/javaee.jar enttest.Main BeanTestRemote > > I don't know WHY it's looking for localhost ! > opt/glassfish/ is the directory of the local glassfish, turned off. if I start it (localhost glassfish not roberth), I get: > > Exception in thread "main" java.lang.NoClassDefFoundError: ejb/BeanTestRemote > at enttest.Main.<init>(Main.java:48) > at enttest.Main.main(Main.java:59) > > ??????? > I really don't know how override the F____ING 127.0.0.1 ! > it seems like if would find the JNDI in localhost, but why ??.. > > kind regards!! > [Message sent by forum member 'sebaxtz' (sebaxtz)] > > http://forums.java.net/jive/thread.jspa?messageID=242437 > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@glassfish.dev.java.net > For additional commands, e-mail: users-help@glassfish.dev.java.net > >
--------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@glassfish.dev.java.net For additional commands, e-mail: users-help@glassfish.dev.java.net
|
|
|
|
|
|
|
|
Re: web start
Posted:
Oct 29, 2007 2:14 PM
in response to: Ryan J
|
|
|
Ryan!.. thank you very much !.. I really appreciate your help! You were right ! I changed the ORB listener IP for the network address of the main network interface and worked. before that, it was entering in a loop trying to connect different ports, BUT ALWAYS in localhost!!!!!!
I think it should be different, in my modest opinion I understand 0.0.0.0 means listen for all address available, even if I did telnet from a remote host to port 3700 it was open, that is what confused me.
Anyway, now I can run it from webstart or by the command line below.
|
|
|
|
|
|
|
|
Re: web start
Posted:
Nov 5, 2007 10:45 AM
in response to: sebaxtz
|
|
|
I had exactly the same symptoms, and changing the ORB listener IP for the network address of the main network interface worked for me too - after a re-start of GlassFish (v2).
My next problem is that the web start application uses Web Services, but I get a version mismatch like this:
05-Nov-2007 18:34:44 org.jdesktop.application.Task failed SEVERE: richMapClient.MapClient$StrikeStationRetriever@19bdb65 failed: java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file:/C:/Documents%20and%20Settings/pjl/Application%20Data/Sun/Java/Deployment/cache/6.0/54/4117176-31c625b3!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/standards/) java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file:/C:/Documents%20and%20Settings/pjl/Application%20Data/Sun/Java/Deployment/cache/6.0/54/4117176-31c625b3!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/standards/)
Adding JAX-WS 2.1 to the .ear didn't help, any suggestions how to specify the correct class path for the Web Start application please?
|
|
|
|
|
|
|
|
Re: web start
Posted:
Nov 5, 2007 1:30 PM
in response to: freddiefishcake
|
|
|
Hi.
I may not have all the details correct, but I'll start and others who know more about this can chime in.
First, I think the error message is exactly correct. Place a copy of the 2.1 web services-related JARs into the <jre>/lib/ext directory.
Here's why. Using Java SE 5, the web services-related classes were not part of the Java runtime environment. As long as the GlassFish-provided copies of these JARs were in the classpath then all was well. Java could find the requested versions of the classes from those JARs. These classes are in the GlassFish-provided webservices-rt.jar.
Starting in Java SE 6 the Java runtime itself includes the web-services related classes - but the 2.0 version. Because of the normal class-loading delegation model, the classes in the JRE are used before the ones in the GlassFish-provided webservices-rt.jar that is in the class path. That's why the error message makes the suggestion about the endorsed directory mechanism.
I assume you did not already try that. In theory, if you place the webservices-rt.jar into the lib/ext directory for the JRE your client is using that should work around the problem.
Are you running a Java client or launching a Java EE app client using the GlassFish built-in support for Java Web Start?
- Tim
|
|
|
|
|
|
|
|
Re: web start
Posted:
Dec 13, 2007 1:19 AM
in response to: tjquinn
|
|
|
Hi, I've got problem with JAX-WS version. Clients have JAVA 6 and I want to use JAX-WS 2.1.x. My app is deploy with java web start. So I can't access to endorsed folder of client. How can I force use JAX-Ws 2.1?
Thanks laurent
|
|
|
|
|
|
|
|
Re: web start
Posted:
Dec 13, 2007 6:22 AM
in response to: laurentapo
|
|
|
Hi, Laurent.
This is indeed a problem because there is no good way to have a Java Web Start-launched program use JAX-WS 2.1 if a public release of Java SE 6 is in use. This is because the JVM's bootstrap class loader will load the classes related to JAX-WS (which will be JAX-WS 2.0 classes) before the GlassFish classloader has a chance to load the 2.1 classes.
As I understand it, JAX-WS 2.1 is planned to be in Java SE 6 Update N, which according to this FAQ https://jdk6.dev.java.net/6uNfaq.html is planned to be available in the middle of 2008. Early access is downloadable now.
I wish I had a more favorable answer for you.
- Tim
|
|
|
|
|