I'm still having trouble with a very similar problem. I'm using an array as an input,
rather than a return value. I followed the type mapping described above and now I'm
getting a "No deserializer defined for array type InventoryUpdate". I'm confused
because I have both the InventoryUpdate type and the ArrayOfInventoryUpdate mapped to
a BeanDeserializer and an ArrayDeserializer respectively.
Here is the debug output from the server.log:
anonymous wrote :
| 2004-09-17 07:31:39,080 DEBUG [org.jboss.webservice.EngineConfigurationFinder]
Found config at:
file:/home/nfs/darin/dev/ehr/jboss-4.0.0RC2/server/default/deploy/jboss-ws4ee.sar/META-INF/axis-client-config.xml
| 2004-09-17 07:31:39,486 DEBUG [org.jboss.webservice.deployment.ServiceDescription]
Merging with ws4ee deployment meta data:
jar:file:/home/nfs/darin/dev/ehr/deploy/ehr.ear/test.war!/WEB-INF/ws4ee-deployment.xml
| 2004-09-17 07:31:39,490 DEBUG [org.jboss.webservice.deployment.ServiceDescription]
Addinging typeMapping: {http://inventorycontrol.ejb.ehr.com}InventoryUpdate
| 2004-09-17 07:31:39,490 DEBUG [org.jboss.webservice.deployment.ServiceDescription]
Replacing typeMapping: {http://inventorycontrol.ejb.ehr.com}ArrayOfInventoryUpdate
| 2004-09-17 07:31:39,491 DEBUG [org.jboss.webservice.client.ServiceImpl]
initService: port=null
| 2004-09-17 07:31:39,491 DEBUG [org.jboss.webservice.client.ServiceImpl] Service
configuration:
| <operation name='submit' qname='ns1:submit' returnQName='submitReturn'
returnType='xsd:string' xmlns:ns1='http://inventorycontrol.ejb.ehr.com' >
| <parameter name='in0' qname='in0' mode='IN' type='ns1:ArrayOfInventoryUpdate'
xmlns:ns1='http://inventorycontrol.ejb.ehr.com' />
|
|
| <typeMapping
| qname='ns1:InventoryUpdate' xmlns:ns1='http://inventorycontrol.ejb.ehr.com'
| type='java:com.ehr.ejb.inventorycontrol.InventoryUpdate'
| serializer='org.apache.axis.encoding.ser.BeanSerializerFactory'
| deserializer='org.apache.axis.encoding.ser.BeanDeserializerFactory'
| encodingStyle=''>
|
|
| <typeMapping
| qname='ns1:ArrayOfInventoryUpdate'
xmlns:ns1='http://inventorycontrol.ejb.ehr.com'
| type='java:com.ehr.ejb.inventorycontrol.InventoryUpdate[]'
| serializer='org.apache.axis.encoding.ser.ArraySerializerFactory'
| deserializer='org.apache.axis.encoding.ser.ArrayDeserializerFactory'
| encodingStyle=''>
|
|
|
|
| 2004-09-17 07:31:39,500 DEBUG [org.jboss.webservice.client.ServiceImpl] Register
type mapping
[qname={http://inventorycontrol.ejb.ehr.com}InventoryUpdate,class=com.ehr.ejb.inventorycontrol.InventoryUpdate]
| 2004-09-17 07:31:39,501 DEBUG [org.jboss.webservice.client.ServiceImpl] Register
type mapping
[qname={http://inventorycontrol.ejb.ehr.com}ArrayOfInventoryUpdate,class=com.ehr.ejb.inventorycontrol.InventoryUpdate[]]
| 2004-09-17 07:31:39,516 DEBUG [org.jboss.webservice.client.ServiceProxy] Invoke on
jaxrpc service: getPort [interface
com.ehr.ejb.inventorycontrol.InventoryControlEndpoint]
| 2004-09-17 07:31:39,609 DEBUG [org.jboss.webservice.client.PortProxy] Invoke on
service endpoint interface: submit
[[Lcom.ehr.ejb.inventorycontrol.InventoryUpdate;@fde7ba]
| 2004-09-17 07:31:39,621 DEBUG [org.jboss.webservice.client.CallImpl] Fixing use:
[was=encoded,is=literal]
| 2004-09-17 07:31:39,911 DEBUG [org.jboss.webservice.client.ClientEngine] invoke:
[EMAIL PROTECTED]
| 2004-09-17 07:31:39,918 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
Create a handler chain for roles: null
| 2004-09-17 07:31:39,918 DEBUG [org.jboss.webservice.client.ClientEngine] Using
handler chain for port: InventoryControlEndpoint
| 2004-09-17 07:31:39,918 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
Create a handler chain for roles: null
| 2004-09-17 07:31:39,918 DEBUG [org.jboss.webservice.client.ClientEngine] Using
empty handler chain
| 2004-09-17 07:31:39,918 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
init: [config=null]
| 2004-09-17 07:31:39,951 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
Enter: doHandleRequest
| 2004-09-17 07:31:39,951 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
Exit: doHandleRequest with status: true
| 2004-09-17 07:31:40,589 DEBUG
[org.jboss.web.tomcat.security.SecurityAssociationValve] Failed to determine servlet
| java.lang.NullPointerException
| at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:115)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
| at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
| at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
| at
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:122)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
| at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
| at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
| at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
| at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
| at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
| at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
| at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
| at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
| at java.lang.Thread.run(Thread.java:534)
| 2004-09-17 07:31:40,682 DEBUG [org.jboss.webservice.server.InvokerProvider]
initServiceDesc: service=InventoryControlService
| 2004-09-17 07:31:40,686 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
Create a handler chain for roles: []
| 2004-09-17 07:31:40,686 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl]
init: [config=null]
| 2004-09-17 07:31:40,736 DEBUG [org.jboss.webservice.server.ServerEngine] invoke:
[EMAIL PROTECTED]
| 2004-09-17 07:31:40,736 DEBUG [org.jboss.webservice.server.ServerEngine]
TransportHandler: http
| 2004-09-17 07:31:40,777 DEBUG [org.jboss.webservice.server.InvokerProviderEJB]
makeNewServiceObject: class=com.ehr.ejb.inventorycontrol.InventoryControlEndpoint
| 2004-09-17 07:31:40,801 ERROR [org.apache.axis.providers.java.RPCInvocation]
org.xml.sax.SAXException: No deserializer defined for array type InventoryUpdate
| org.xml.sax.SAXException: No deserializer defined for array type InventoryUpdate
| at
org.apache.axis.encoding.ser.ArrayDeserializer.onStartElement(ArrayDeserializer.java:332)
| at
org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:468)
| at
org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1202)
| at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:244)
| at
org.apache.axis.message.SOAPElementAxisImpl.publishToHandler(SOAPElementAxisImpl.java:1409)
| at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:263)
| at org.apache.axis.message.RPCElement.getParams(RPCElement.java:397)
| at
org.apache.axis.providers.java.RPCInvocation.prepareFromRequestEnvelope(RPCInvocation.java:232)
| at
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:104)
| at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:360)
| at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
| at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:162)
| at org.apache.axis.SimpleChain.invoke(SimpleChain.java:125)
| at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:557)
| at
org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:202)
| at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:91)
| at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:971)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
| at
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:372)
| ...
|
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3848578#3848578
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3848578
-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
JBoss-Development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development