Page 1 of 1

Create WSDL with EmmCreateWSDL.sh

Posted: Thu Dec 20, 2012 3:37 pm
by abonline
Hallo at all,

i have a problem. I installed OpenEmm-2011 and want create the WSDL-file with this command:

Code: Select all

./EmmCreateWSDL.sh -o ws.wsdl -l "http://localhost:8080/em_webservice" -n "http://localhost:8080/em_webservice" -w ALL org.agnitas.webservice.EMMWEBService_Port
and the return statemant(error) is

Code: Select all

Exception in thread "main" java.lang.NoClassDefFoundError: org.apache.axis.encoding.ser.BeanDeserializer
   at java.lang.Class.initializeClass(libgcj.so.10)
   at java.lang.Class.forName(libgcj.so.10)
   at org.apache.axis.encoding.ser.BeanDeserializerFactory.class$(BeanDeserializerFactory.java:43)
   at org.apache.axis.encoding.ser.BeanDeserializerFactory.<init>(BeanDeserializerFactory.java:43)
   at org.apache.axis.encoding.DefaultTypeMappingImpl.initMappings(DefaultTypeMappingImpl.java:471)
   at org.apache.axis.encoding.DefaultTypeMappingImpl.<init>(DefaultTypeMappingImpl.java:91)
   at org.apache.axis.encoding.DefaultTypeMappingImpl.getSingletonDelegate(DefaultTypeMappingImpl.java:85)
   at org.apache.axis.encoding.TypeMappingRegistryImpl.<init>(TypeMappingRegistryImpl.java:155)
   at org.apache.axis.encoding.TypeMappingRegistryImpl.<init>(TypeMappingRegistryImpl.java:149)
   at org.apache.axis.wsdl.fromJava.Emitter.<clinit>(Emitter.java:747)
   at java.lang.Class.initializeClass(libgcj.so.10)
   at org.apache.axis.wsdl.Java2WSDL.createEmitter(Java2WSDL.java:279)
   at org.apache.axis.wsdl.Java2WSDL.<init>(Java2WSDL.java:270)
   at org.apache.axis.wsdl.Java2WSDL.main(Java2WSDL.java:680)
Caused by: java.lang.VerifyError: verification failed at PC 104 in org.apache.axis.encoding.ser.BeanDeserializer:handleMixedContent(()V): incompatible type on stack
   at java.lang.Class.initializeClass(libgcj.so.10)
   ...13 more
I hope you can help me fast :)

Sincerely

Re: Create WSDL with EmmCreateWSDL.sh

Posted: Thu Dec 20, 2012 8:15 pm
by maschoff
Do you use Oracle's Java?

Accordingt to the WS documentation you should use

Code: Select all

./EmmCreateWSDL.sh -o ws.wsdl -l "http://yourdomain:8080/emm_webservice"  -n "urn:agnitas-webservice" -w ALL org.agnitas.webservice.EmmWebService_Port

Re: Create WSDL with EmmCreateWSDL.sh

Posted: Fri Dec 21, 2012 11:27 am
by abonline
ahhh that was the problem thank you very mutch, i installed the right java, but in the java path was to the openjdk.

Now another problem sorry :)

I want to connect to the wsdl with php, but i just get an error, because i dont know the path to the ws.wsdl.
Is that right that the file is in /home/openemm/webservices?
and i now the paths of the "hello world" page in "http://localhost/emm_webservice" are wrong.

Code: Select all

include_once('OpenEMM.class.php');
$openemm = new OpenEMM('ws.wsdl', 'test', 'test');
var_dump($openemm);
The error is like

Code: Select all

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'ws.wsdl' : failed to load external entity "ws.wsdl" in ....../emmapi/OpenEMM.class.php:35 Stack trace: #0 ..../emmapi/OpenEMM.class.php(35): SoapClient->SoapClient('ws.wsdl', Array) #1 ..../emmapi/index.php(29): OpenEMM->OpenEMM('ws.wsdl', 'test', 'test') #2 {main} thrown in .../emmapi/OpenEMM.class.php on line 35

Re: Create WSDL with EmmCreateWSDL.sh

Posted: Fri Dec 21, 2012 11:37 am
by abonline
It's okay, it works :) thank you for all