Hi
I am trying to use the SOAP API Example (java_soap_examples/src/com/konakart/ApiExample.java)
within my third party java webapp.
There is a directory:
ls java_soap_examples/lib/
activation.jar commons-discovery-0.2.jar kk_wsdl.jar saaj.jar
axis-ant.jar commons-logging-1.0.4.jar log4j-1.2.12.jar wsdl4j-1.5.1.jar
axis.jar jaxrpc.jar
listing some jars, but I assume this is does not contain the API/implementation code.
Any pointers are very much appreciated.
Thanks
Michael
If I were you I would start by looking at the build.xml that is used for running the SOAP examples. (under java_soap_examples)
Currently it contains:
<path id="axis.path">
<pathelement location="./lib/axis.jar" />
<pathelement location="./lib/axis-ant.jar" />
<pathelement location="./lib/axis-schema.jar" />
<pathelement location="./lib/commons-discovery-0.2.jar" />
<pathelement location="./lib/commons-logging-1.0.4.jar" />
<pathelement location="./lib/jaxrpc.jar" />
<pathelement location="./lib/log4j-1.2.12.jar" />
<pathelement location="./lib/saaj.jar" />
<pathelement location="./lib/wsdl4j-1.5.1.jar" />
<pathelement location="./lib/activation.jar" />
<pathelement location="./lib/mail.jar" />
<pathelement location="./lib/wss4j-1.5.5.jar" />
<pathelement location="./lib/xmlsec-1.4.2.jar" />
<pathelement location="./lib/bcprov-jdk14-140.jar" />
<pathelement location="./lib/xalan-2.7.1.jar" />
</path>
<path id="konakart.path">
<pathelement location="../webapps/konakart/WEB-INF/lib/commons-collections-3.1.jar" />
<pathelement location="../webapps/konakart/WEB-INF/lib/commons-configuration-1.1.jar" />
<pathelement location="../webapps/konakart/WEB-INF/lib/commons-lang-2.4.jar" />
<pathelement location="../webapps/konakart/WEB-INF/lib/konakart.jar" />
<pathelement location="../webapps/konakart/WEB-INF/lib/konakart_utils.jar" />
<path location="../webapps/konakart/WEB-INF/classes" />
</path>
<path id="run.path">
<path location="./classes" />
<path refid="konakart.path" />
<path refid="axis.path" />
</path>
Thanks very much for this hint
Cheers
Michael
When running ant then I receive the following exception:
Buildfile: build.xml
clean:
[echo] Cleanup...
axis_client_generation:
[echo] Create the KonaKart client stubs from the WSDL
compile:
[echo] Compile the examples
[mkdir] Created dir: /Users/michaelwechner/src/konakart/konakart-4.2.0.1/java_soap_examples/classes
[javac] Compiling 59 source files to /Users/michaelwechner/src/konakart/konakart-4.2.0.1/java_soap_examples/classes
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
run:
[java] First the low-level version...
[java]
[java] AxisFault
[java] faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
[java] faultSubcode:
[java] faultString: org.apache.axis.InternalException: java.lang.Exception: Couldn't find a matching Java operation for WSDD operation "getCountry" (1 args)
[java] faultActor:
[java] faultNode:
[java] faultDetail:
[java] {http://xml.apache.org/axis/}hostname:michael-wechners-macbook-pro.local
[java]
[java] org.apache.axis.InternalException: java.lang.Exception: Couldn't find a matching Java operation for WSDD operation "getCountry" (1 args)
[java] at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
[java] at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
[java] at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
[java] at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
[java] at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
[java] at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
[java] at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
[java] at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
[java]
[java] Next the recommended high-level version...
[java]
[java] at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
[java] at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
[java] at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
[java] at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
[java] at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
[java] at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
[java] at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
[java] at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
[java] at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
[java] at org.apache.axis.client.Call.invoke(Call.java:2767)
[java] at org.apache.axis.client.Call.invoke(Call.java:2443)
[java] at org.apache.axis.client.Call.invoke(Call.java:2366)
[java] at org.apache.axis.client.Call.invoke(Call.java:1812)
[java] at com.konakart.ws.KKWebServiceEngSoapBindingStub.getAllCountries(Unknown Source)
[java] at com.konakart.AxisExample.lowLevelVersion(Unknown Source)
[java] at com.konakart.AxisExample.main(Unknown Source)
[java] com.konakart.app.KKException: org.apache.axis.InternalException: java.lang.Exception: Couldn't find a matching Java operation for WSDD operation "getCountry" (1 args)
[java] at com.konakart.ws.KKWebServiceSoapMgr.createKKAdminExceptionFromAxisFault(Unknown Source)
[java] at com.konakart.app.KKWSEng.manageException(Unknown Source)
[java] at com.konakart.app.KKWSEng.getAllCountries(Unknown Source)
[java] at com.konakart.AxisExample.highLevelVersion(Unknown Source)
[java] at com.konakart.AxisExample.main(Unknown Source)
[java] Caused by: org.apache.axis.InternalException: java.lang.Exception: Couldn't find a matching Java operation for WSDD operation "getCountry" (1 args)
[java] at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
[java] at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
[java] at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
[java] at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
[java] at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
[java] at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
[java] at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
[java] at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
[java] at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
[java] at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
[java] at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
[java] at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
[java] at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
[java] at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
[java] at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
[java] at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
[java] at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
[java] at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
[java] at org.apache.axis.client.Call.invoke(Call.java:2767)
[java] at org.apache.axis.client.Call.invoke(Call.java:2443)
[java] at org.apache.axis.client.Call.invoke(Call.java:2366)
[java] at org.apache.axis.client.Call.invoke(Call.java:1812)
[java] at com.konakart.ws.KKWebServiceEngSoapBindingStub.getAllCountries(Unknown Source)
[java] at com.konakart.ws.KKWebServiceEng.getAllCountries(Unknown Source)
[java] ... 3 more
Any idea what might be wrong (I am currently still using the 4.2.0.1 version)?
Btw, it would be nice to add a short README.txt explaining stuff like "make sure to set the port correctly within 'konakart.wsdl' etc.
Thanks
Michael
Hi
I have noticed that within build.xml the run.path is using
konakart.jar
and
java_soap_examples/classes
which is based on
java_soap_examples/src/com/konakart/wsapp
which was generated from konakart.wsdl,
whereas it is not clear to me why both "libs" are used, since they seem to have overlapps
re wsapp (and ws).
Also it's not clear to me why the ApiExample is excluded within build.xml
excludes="**/ApiExample.java">
Any pointers are appreciated.
Thanks
Michael
Hi
I have figured out why I have received the exception: I forgot to enable SOAP within Konakart:
webapps/konakart/WEB-INF/server-config.wsdd
<parameter name="allowedMethods" value="*"/>
It's working very fine now, whereas it's my bad that I did not read the user guide properly.
But nevertheless I think it would be good to have a README.txt within the java_soap_examples directory.
Btw. in the case of Wyona Yanel it seems that only the following libs are necessary to make it work:
konakart-4.2.0.1.jar konakart_utils-4.2.0.1.jar commons-lang-2.4.jar
and configuration
konakart_axis_client.properties
Cheers
Michael