If I add the following entry to the services.xml:
<property key="readXsiType">false</property>
I now get a gelco.messaging.v1.creditcard.GelcoCCTransaction object
however none of the values are populated.
Do I need to explicitly set the xsi:type for the GelcoCCTransaction
parameter? If so, how is this accomplished?
Again this is what is currently being sent from Mule...
<in0 xmlns="" xsi:type="xsd:string">
[EMAIL PROTECTED]
04/23/2007 05:31 PM
Please respond to
[email protected]
To
[email protected]
cc
Subject
[xfire-dev] java.lang.IllegalArgumentException: argument type mismatch
I'm having issues getting XFire to recognize and incoming request as the
actual object, it seems to be recognizing as a String and therefore giving
us java.lang.IllegalArgumentException: argument type mismatch.
Any thoughts would be greatly appreciated? Details explained below....
Service Method Definition
public abstract void ICreditCardService.loadGelcoCCTransaction(
gelco.messaging.v1.creditcard.GelcoCCTransaction) throws
GeneralWebServiceException
Service Method called via Mule 1.3.3 XFireWsdlConnector:
value="wsdl-xfire:
http://localhost:7001/webservices/services/CreditCardService?wsdl&method=loadGelcoCCTransaction
"
/>http://localhost:7001/webservices/services/CreditCardService?wsdl&method=loadGelcoCCTransaction
Sample MessageIn -> currentMessage -> body: (XFire seems to think of this
as a String Object rather than converting it to and Object)
[<gelco.messaging.v1.creditcard.GelcoCCTransaction>
...
...
</gelco.messaging.v1.creditcard.GelcoCCTransaction>]
WebService Error Trace:
558781 [ExecuteThread: '14' for queue: 'weblogic.kernel.Default'] ERROR
org.codehaus.xfire.handler.DefaultFaultHandler - Fault occurred!
java.lang.IllegalArgumentException: argument type mismatch
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:324)
at org.codehaus.xfire.service.invoker.AbstractInvoker.invoke(
AbstractInvoker.java:54)
at org.codehaus.xfire.service.invoker.ObjectInvoker.invoke(
ObjectInvoker.java:45)
at
org.codehaus.xfire.service.binding.ServiceInvocationHandler.sendMessage(
ServiceInvocationHandler.java:322)
at
org.codehaus.xfire.service.binding.ServiceInvocationHandler$1.run(
ServiceInvocationHandler.java:86)
at
org.codehaus.xfire.service.binding.ServiceInvocationHandler.execute(
ServiceInvocationHandler.java:134)
at
org.codehaus.xfire.service.binding.ServiceInvocationHandler.invoke(
ServiceInvocationHandler.java:109)
at org.codehaus.xfire.handler.HandlerPipeline.invoke(
HandlerPipeline.java:131)
at org.codehaus.xfire.transport.DefaultEndpoint.onReceive(
DefaultEndpoint.java:64)
at org.codehaus.xfire.transport.AbstractChannel.receive(
AbstractChannel.java:38)
at
org.codehaus.xfire.transport.http.XFireServletController.invoke(
XFireServletController.java:304)
at
org.codehaus.xfire.transport.http.XFireServletController.doService(
XFireServletController.java:129)
at org.codehaus.xfire.transport.http.XFireServlet.doPost(
XFireServlet.java:116)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(
ServletStubImpl.java:1072)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(
ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(
ServletStubImpl.java:348)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(
WebAppServletContext.java:6981)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(
AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(
SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(
WebAppServletContext.java:3892)
at weblogic.servlet.internal.ServletRequestImpl.execute(
ServletRequestImpl.java:2766)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
Mule Error Trace -> specifically <in0 xmlns="" xsi:type="xsd:string">:
DEBUG 2007-04-23 17:12:09,390
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "POST /webservices/services/CreditCardService
HTTP/1.1[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "SOAPAction: ""[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "Content-Type: text/xml; charset=UTF-8[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0;
Windows NT 5.0; XFire Client +http://xfire.codehaus.org)[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "Host: localhost:7001[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "Expect: 100-continue[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "Content-Length: 1399[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: >> "[\r][\n]"
DEBUG 2007-04-23 17:12:09,406
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: << "HTTP/1.1 100 Continue[\r][\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "<soap:Envelope xmlns:soap="
http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance
"><soap:Body><loadGelcoCCTransaction xmlns="
http://creditcard.webservice.expense.gelco"><in0 xmlns=""
xsi:type="xsd:string">
<gelco.messaging.v1.creditcard.GelcoCCTransaction>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <actionCode>4</actionCode>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <issuerName>VCF40</issuerName>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<transactionId>1111820001378606_24492807023118000100038_1/24/07_1</transactionId>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<memberCardId>1111820001378606</memberCardId>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <transDt>2007-01-23 00:00:00.0
CST</transDt>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<merchRefId>24492807023118000100038</merchRefId>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <dtlSeqNumber>1</dtlSeqNumber>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <tranCd>10</tranCd>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <postDt>2007-01-24 00:00:00.0
CST</postDt>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<postedAmt>77.57000000000001</postedAmt>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <merchName>MANDARIN
GOURMET</merchName>[\n]"
DEBUG 2007-04-23 17:12:09,421
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<merchCity>412-2616151</merchCity>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <merchSt>PA</merchSt>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <merchCntry>00840</merchCntry>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <merchZip>152220000</merchZip>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <tranCat>5812</tranCat>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <currCd>00840</currCd>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<tranAmt>77.57000000000001</tranAmt>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> " <memoPostInd>0</memoPostInd>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<centralBillCardId></centralBillCardId>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >> "
<ccCorporationId>0000000089</ccCorporationId>[\n]"
DEBUG 2007-04-23 17:12:09,453
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: >>
"</gelco.messaging.v1.creditcard.GelcoCCTransaction></in0></loadGelcoCCTransaction></soap:Body>
</soap:Envelope>"
read a packet PING : ok
Got ping response from JVM
DEBUG 2007-04-23 17:12:09,578
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: << "HTTP/1.1 500 Internal Server Error[\r][\n]"
DEBUG 2007-04-23 17:12:09,578
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: << "Date: Mon, 23 Apr 2007 22:12:09 GMT[\r][\n]"
DEBUG 2007-04-23 17:12:09,578
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: << "Content-Type: text/xml; charset=UTF-8[\r][\n]"
DEBUG 2007-04-23 17:12:09,578
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.header: << "Transfer-Encoding: chunked[\r][\n]"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "0"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "1"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "d"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "9"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "[\r]"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "[\n]"
DEBUG 2007-04-23 17:12:09,609
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
httpclient.wire.content: << "<soap:Envelope xmlns:soap="
http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance
"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Illegal
argument invoking
'gelco.expense.webservice.creditcard.ICreditCardService.loadGelcoCCTransaction(gelco.messaging.v1.creditcard.GelcoCCTransaction)':
argument type mismatch</faultstring></soap:Fault></soap:Body>
</soap:Envelope>"
DEBUG 2007-04-23 17:12:09,734
[XFireWsdlConnector.XFireWsdlConnector.dispatchers.dispatcher.1]
org.codehaus.xfire.client.Client: Received message to
http://localhost:7001/webservices/services/CreditCardService