How to reference * .jar files in the wsgen class path
I'm having trouble defining a class path using wsgen in an ANT file.
<target name="wsgen"> <property name="wsgen_cp" value="./build/classes/" /> <echo message="classpath is : ${wsgen_cp}"/> <exec executable="wsgen"> <!-- Classpath --> <arg value="-verbose" /> <arg value="-classpath" /> <arg value="${wsgen_cp}" /> <!-- Sortie des sources --> <arg value="-d" /> <arg value="${project.build.dir}/build/generated/"/> <arg value="-r" /> <arg value="${project.build.dir}/build/wsdl"/> <arg value="-s" /> <arg value="${project.build.dir}/build/sources"/> <!-- Classes de WebServices --> <arg value="-keep" /> <arg value="rpm.patient.wsimpl.RpmPatientInterfaceImpl" /> </exec> </target> As soon as I run the target, I get the following error:
[exec] Exception in thread "main" java.lang.NoClassDefFoundError: rpm/patient/RpmPatientInterface [exec] at java.lang.ClassLoader.defineClass1(Native Method) [exec] at java.lang.ClassLoader.defineClass(ClassLoader.java:791) [exec] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) [exec] at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) [exec] at java.net.URLClassLoader.access$100(URLClassLoader.java:71) [exec] at java.net.URLClassLoader$1.run(URLClassLoader.java:361) [exec] at java.net.URLClassLoader$1.run(URLClassLoader.java:355) [exec] at java.security.AccessController.doPrivileged(Native Method) [exec] at java.net.URLClassLoader.findClass(URLClassLoader.java:354) [exec] at java.lang.ClassLoader.loadClass(ClassLoader.java:423) [exec] at java.lang.ClassLoader.loadClass(ClassLoader.java:356) [exec] at com.sun.tools.internal.ws.wscompile.WsgenOptions.getClass(WsgenOptions.java:287) [exec] at com.sun.tools.internal.ws.wscompile.WsgenOptions.validateEndpointClass(WsgenOptions.java:223) [exec] at com.sun.tools.internal.ws.wscompile.WsgenOptions.validate(WsgenOptions.java:214) [exec] at com.sun.tools.internal.ws.wscompile.WsgenTool.run(WsgenTool.java:110) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [exec] at java.lang.reflect.Method.invoke(Method.java:601) [exec] at com.sun.tools.internal.ws.Invoker.invoke(Invoker.java:120) [exec] at com.sun.tools.internal.ws.WsGen.main(WsGen.java:42) [exec] Caused by: java.lang.ClassNotFoundException: rpm.patient.RpmPatientInterface [exec] at java.net.URLClassLoader$1.run(URLClassLoader.java:366) [exec] at java.net.URLClassLoader$1.run(URLClassLoader.java:355) [exec] at java.security.AccessController.doPrivileged(Native Method) [exec] at java.net.URLClassLoader.findClass(URLClassLoader.java:354) [exec] at java.lang.ClassLoader.loadClass(ClassLoader.java:423) [exec] at java.lang.ClassLoader.loadClass(ClassLoader.java:356) [exec] ... 21 more When I add the appropriate jar to my classpath (where rpm / patient / RpmPatientInterface is located):
It seems that the class path is invalid because it does not find the file from which I am trying to create my stubs: [exec] Class not found: "rpm.patient.wsimpl.RpmPatientInterfaceImpl" [exec] Usage: WSGEN [parameters]
Any clues that could help me?
No one has answered this question yet.
See related questions: