Re: Re: Re: Re: Re: Re: Re: Re: Re: cannot run client application using jclient

Benjamin Jailly <[email protected]> Thu, 14 Apr 2011 18:22:39 +0200
Newsgroups gmane.comp.java.objectweb.jonas
Message-ID <[email protected]>
I removed the descriptors. 
I had the exact syntax you proposed.


ClientStubGen says :

ClientStubGen.execute : Client stub generation for 'path_to_my_jar_file/myClientApp.jar'
2011-04-14 18:11:18,585 : ClientModifier.modify : Processing Client myClientApp.jar
Exception in thread "main" java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.ow2.jonas.client.boot.Bootstrap.main(Bootstrap.java:103)
Caused by: org.ow2.jonas.generators.genbase.GenBaseException: JarStorer.constr.create
	at org.ow2.jonas.generators.genbase.utils.JarStorer.<init>(JarStorer.java:66)
	at org.ow2.jonas.generators.genbase.modifier.ArchiveModifier.save(ArchiveModifier.java:92)
	at org.ow2.jonas.generators.genbase.modifier.ArchiveModifier.save(ArchiveModifier.java:116)
	at org.ow2.jonas.generators.genclientstub.modifier.ClientModifier.modify(ClientModifier.java:95)
	at org.ow2.jonas.generators.genclientstub.ClientStubGen.execute(ClientStubGen.java:124)
	at org.ow2.jonas.generators.genclientstub.ClientStubGen.execute(ClientStubGen.java:94)
	at org.ow2.jonas.generators.genclientstub.ClientStubGen.main(ClientStubGen.java:74)
	... 5 more


And I'm sure a little stupid thing is missing....

Do I need to provide a manifest to the ear ??

Benjamin

Le 14 avr. 2011 à 14:34, Guillaume Sauthier a écrit :

> I forgot the static:
> 
> @EJB
> private static com.test.FacadeBeanRemote facade;
> 
> --G
> 
> Le 14/04/2011 14:26, Guillaume Sauthier a écrit :
>> 
>> Why don't you simply have :
>> 
>> @EJB
>> private com.test.FacadeBeanRemote facade;
>> 
>> Without any descriptors...
>> 
>> --G
>> 
>> Le 14/04/2011 11:44, Benjamin Jailly a écrit :
>>> 
>>> I opened the bug on JIRA.
>>> Yes I'm using EJB3.
>>> 
>>> Benjamin
>>> 
>>> 
>>> Le 14 avr. 2011 à 11:25, Guillaume Sauthier a écrit :
>>> 
>>>> OK, You may have another issue but please open a bug the for the NPE.
>>>> 
>>>> Are you using EJB3 ?
>>>> 
>>>> --G
>>>> 
>>>> Le 14/04/2011 11:05, Benjamin Jailly a écrit :
>>>>> 
>>>>> Hi Guillaume,
>>>>> 
>>>>> 
>>>>> I think it is a problem with my application-client.xml or jonas-client.xml.
>>>>> my jar application needs to lookup an EJB located in the ejb-jar (inside the ear).
>>>>> 
>>>>> I'm currently trying to see the problem using ClientStubGen and I just saw:
>>>>> 
>>>>> Digester.error : Parse Error at line 14 column 13: cvc-complex-type.2.4.a: Invalid content was found starting with element 'remote'. One of '{"http://java.sun.com/xml/ns/j2ee":home}' is expected.
>>>>> 
>>>>> My EJB has only a remote interface. 
>>>>> Do I need to provide a home interface ?? 
>>>>> Can it be a problem with jonas-ejb-jar.xml ??
>>>>> 
>>>>> Here is my of application-client.xml:
>>>>> 
>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> 
>>>>> <application-client xmlns="http://java.sun.com/xml/ns/j2ee"
>>>>> 
>>>>> 
>>>>>                           
>>>>> 
>>>>>                         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>>> 
>>>>> 
>>>>>                           
>>>>> 
>>>>>                         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>>>>> 
>>>>> 
>>>>>                           
>>>>> 
>>>>>                         http://java.sun.com/xml/ns/j2ee/application-client_1_4.xsd"
>>>>> 
>>>>> 
>>>>>                           
>>>>> 
>>>>>                         version="1.4">
>>>>> 
>>>>>   <display-name>Client Side</display-name>
>>>>>   
>>>>>   <ejb-ref>
>>>>>     <ejb-ref-name>ejb/FacadeBean</ejb-ref-name>
>>>>>     <ejb-ref-type>Session</ejb-ref-type>
>>>>>     <remote>com.test.FacadeBeanRemote</remote>
>>>>>   </ejb-ref>
>>>>> 
>>>>> </application-client>
>>>>> 
>>>>> and jonas-client.xml:
>>>>> 
>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> 
>>>>> <jonas-client xmlns="http://www.objectweb.org/jonas/ns"
>>>>> 
>>>>> 
>>>>>                         
>>>>> 
>>>>>                       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>>> 
>>>>> 
>>>>>                         
>>>>> 
>>>>>                       xsi:schemaLocation="http://www.objectweb.org/jonas/ns
>>>>>     http://www.objectweb.org/jonas/ns/jonas-client_4_0.xsd" >
>>>>> 
>>>>>   <jonas-ejb-ref>
>>>>>     <ejb-ref-name>ejb/FacadeBean</ejb-ref-name>
>>>>>     <jndi-name>JNDI_FacadeBean</jndi-name>
>>>>>   </jonas-ejb-ref>
>>>>> </jonas-client>
>>>>> 
>>>>> 
>>>>> Thanks for your time.
>>>>> 
>>>>> Benjamin
>>>>> 
>>>>> 
>>>>> Le 14 avr. 2011 à 10:36, Guillaume Sauthier a écrit :
>>>>> 
>>>>>> Hmmm
>>>>>> Can you open a bug on JIRA for this please ?
>>>>>> 
>>>>>> Seems we forgot to assign the logger when EarClasspathManager is used for ApplicationClient (shame on us :) ) ...
>>>>>> --G
>>>>>> 
>>>>>> Le 13/04/2011 15:04, Benjamin Jailly a écrit :
>>>>>>> 
>>>>>>> ouuups, forgot to tell you :-)
>>>>>>> 
>>>>>>> I tried with both 5.1.5 and 5.2.0.
>>>>>>> 
>>>>>>> Benjamin
>>>>>>> 
>>>>>>> Le 13 avr. 2011 à 13:48, Guillaume Sauthier a écrit :
>>>>>>> 
>>>>>>>> Yeah, what version of JOnAS are you using ? :)
>>>>>>>> --G
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Le 13/04/2011 12:48, Benjamin Jailly a écrit :
>>>>>>>>> 
>>>>>>>>> Hi all,
>>>>>>>>> 
>>>>>>>>> I have an ear application myEntrepriseApp containing a war, an ejb-jar and a jar client.
>>>>>>>>> The ear is built using Maven2. 
>>>>>>>>> 
>>>>>>>>> Deploying the ear application works fine. The webapp contained in the war is also working properly.
>>>>>>>>> 
>>>>>>>>> But when I try to run the jar client application, I have the following error:
>>>>>>>>> 
>>>>>>>>> There was the following exception : null
>>>>>>>>> java.lang.NullPointerException
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at org.ow2.jonas.lib.cpmanager.EarClassPathManager.resolveClassPath(EarClassPathManager.java:281)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at org.ow2.jonas.lib.cpmanager.EarClassPathManager.getResolvedClassPath(EarClassPathManager.java:228)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at org.ow2.jonas.client.ClientContainer.extractAndAnalyzeEar(ClientContainer.java:1183)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at org.ow2.jonas.client.ClientContainer.start(ClientContainer.java:421)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at org.ow2.jonas.client.ClientContainer.main(ClientContainer.java:244)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                           
>>>>>>>>> 
>>>>>>>>>                                         at org.ow2.jonas.client.boot.Bootstrap.main(Bootstrap.java:103)
>>>>>>>>> 
>>>>>>>>> I guess it doesn't find the manifest of the jar client, which is at its good place in the compiled jar (META-INF/MANIFEST.MF).
>>>>>>>>> 
>>>>>>>>> The command I'm using to launch the jar client is:
>>>>>>>>> jclient -nowsgen $JONAS_BASE/deploy/myEntrepriseApp-0.1-SNAPSHOT.ear
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> the pom.xml of the jar client is the following:
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> <?xml version="1.0"?>
>>>>>>>>> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
>>>>>>>>>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>>>>>>>>>     <modelVersion>4.0.0</modelVersion>
>>>>>>>>>     <parent>
>>>>>>>>>         <artifactId>myEntrepriseApp</artifactId>
>>>>>>>>>         <groupId>com.test</groupId>
>>>>>>>>>         <version>0.1-SNAPSHOT</version>
>>>>>>>>>     </parent>
>>>>>>>>>     <groupId>com.test</groupId>
>>>>>>>>>     <artifactId>myClientApp</artifactId>
>>>>>>>>>     <version>0.1-SNAPSHOT</version>
>>>>>>>>>     <name> myClientApp</name>
>>>>>>>>>     <packaging>jar</packaging>
>>>>>>>>>     <dependencies>
>>>>>>>>>     </dependencies>
>>>>>>>>>     <build>
>>>>>>>>>         <plugins>
>>>>>>>>>             <plugin>
>>>>>>>>>                 <groupId>org.apache.maven.plugins</groupId>
>>>>>>>>>                 <artifactId>maven-jar-plugin</artifactId>
>>>>>>>>>                 <version>2.3.1</version>
>>>>>>>>>                 <configuration>
>>>>>>>>>                     <archive>
>>>>>>>>>                         <manifest>            
>>>>>>>>>                             <mainClass>com.test.Main</mainClass>
>>>>>>>>>                             <packageName>com.test</packageName>
>>>>>>>>>                         </manifest>
>>>>>>>>>                     </archive>
>>>>>>>>>                 </configuration>
>>>>>>>>>             </plugin>
>>>>>>>>>         </plugins>
>>>>>>>>>         <finalName> myClientApp</finalName>
>>>>>>>>>     </build>
>>>>>>>>>     </project>
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Did I miss something ?
>>>>>>>>> 
>>>>>>>>> Thanks for your help.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> regards, 
>>>>>>>>> Benjamin
>>>>>>>>> -----------------------------------------------------
>>>>>>>>> Benjamin Jailly
>>>>>>>>> 
>>>>>>>>> Laboratoire Télécom Claude Chappe
>>>>>>>>> Équipe de recherche SATIN
>>>>>>>>> Bureau I012
>>>>>>>>> 
>>>>>>>>> TELECOM Saint-Etienne
>>>>>>>>> 25 rue du Dr Rémy Annino
>>>>>>>>> 42 000 Saint-Étienne
>>>>>>>>> 
>>>>>>>>> [email protected]
>>>>>>>>> 
>>>>>>>> <Guillaume_Sauthier.vcf>
>>>>>>> 
>>>>>>> -----------------------------------------------------
>>>>>>> Benjamin Jailly
>>>>>>> 
>>>>>>> Laboratoire Télécom Claude Chappe
>>>>>>> Équipe de recherche SATIN
>>>>>>> Bureau I012
>>>>>>> 
>>>>>>> TELECOM Saint-Etienne
>>>>>>> 25 rue du Dr Rémy Annino
>>>>>>> 42 000 Saint-Étienne
>>>>>>> 
>>>>>>> [email protected]
>>>>>>> 
>>>>>> <Guillaume_Sauthier.vcf>
>>>>> 
>>>>> -----------------------------------------------------
>>>>> Benjamin Jailly
>>>>> 
>>>>> Laboratoire Télécom Claude Chappe
>>>>> Équipe de recherche SATIN
>>>>> Bureau I012
>>>>> 
>>>>> TELECOM Saint-Etienne
>>>>> 25 rue du Dr Rémy Annino
>>>>> 42 000 Saint-Étienne
>>>>> 
>>>>> [email protected]
>>>>> 
>>>> <Guillaume_Sauthier.vcf>
>>> 
>>> -----------------------------------------------------
>>> Benjamin Jailly
>>> 
>>> Laboratoire Télécom Claude Chappe
>>> Équipe de recherche SATIN
>>> Bureau I012
>>> 
>>> TELECOM Saint-Etienne
>>> 25 rue du Dr Rémy Annino
>>> 42 000 Saint-Étienne
>>> 
>>> [email protected]
>>> 
> <Guillaume_Sauthier.vcf>

-----------------------------------------------------
Benjamin Jailly

Laboratoire Télécom Claude Chappe
Équipe de recherche SATIN
Bureau I012

TELECOM Saint-Etienne
25 rue du Dr Rémy Annino
42 000 Saint-Étienne

[email protected]