You are viewing a plain text version of this content. The canonical link for it is here.
Posted to agila-user@incubator.apache.org by Davide Ling <li...@libero.it> on 2005/11/12 10:51:50 UTC

Ok with Invoke but...

Hi,
Now I'm able to invoke an assessorService... but only if this service is 
deployed on Jboss
and not the Sun SJSAS.
(now the service is rpc style. Ok Matthieu? ;-) )
I'll explain the question:

If I send a SOAP message with the static stub using Sun JAX-RPC api, the 
message
is like this one (note assessmentRequestMessage has no namespace).
Either Sun's sjsas and Jboss work with this message:

------------------- Sent with static stub -----------------
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:ns0="http://davideling.altervista.org/assessorService/">
<env:Body>
<ns0:assessmentRequest>
<assessmentRequestMessage>
<name>Ugolino</name>
<surname>Ling</surname>
<address>
   <street>via pippo</street>
   <number>13</number>
   <city>Pippolandia</city>
   <zip>51039</zip>
   <country>Italia</country>
</address>
<taxNumber>dvdlng456ytr78</taxNumber>
<cardNumber>26521735451237</cardNumber>
<totalPrice>1345.78</totalPrice>
</assessmentRequestMessage>
</ns0:assessmentRequest>
</env:Body>
</env:Envelope>

Instead agila send messages with a default namespace in assessmentRequest,
so assessmentRequestMessage inherits the namespace.
Jboss accepts this message too, but Sun's sjsas not:
----------------- Sent by agila ----------------------
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:assessmentRequest 
xmlns="http://davideling.altervista.org/assessorService/"
    xmlns:ns1="http://davideling.altervista.org/assessorService/">
<assessmentRequestMessage>
<name>Paperina</name>
<surname>Ling</surname>
<address>
   <street>Piazza Cristoforo Colombo</street>
   <number>156</number>
   <city>Genova</city>
   <zip>20089</zip>
   <country>Italy</country>
</address>
<taxNumber>123456789abcdefg</taxNumber>
<cardNumber>123456789abcdefg</cardNumber>
<totalPrice>350.0</totalPrice>
</assessmentRequestMessage>
</ns1:assessmentRequest>
</soapenv:Body>
</soapenv:Envelope>

Sun's sjsas seem doesn't like the assessmentRequestMessage inherited 
namespace:

---------------------------- sjsas logs ----------------------------
expected=assessmentRequestMessage, 
actual={http://davideling.altervista.org/assessorService/}assessmentRequestMessage
unexpected element name: expected=assessmentRequestMessage, 
actual={http://davideling.altervista.org/assessorService/}assessmentRequestMessage
    at 
assessorService.AssessorServicePT_assessmentRequest_RequestStruct_LiteralSerializer.doDeserialize(AssessorServicePT_assessmentRequest_RequestStruct_LiteralSerializer.java:57)
    at 
com.sun.xml.rpc.encoding.literal.LiteralObjectSerializerBase.internalDeserialize(LiteralObjectSerializerBase.java:216)
    at 
com.sun.xml.rpc.encoding.literal.LiteralObjectSerializerBase.deserialize(LiteralObjectSerializerBase.java:124)
    at 
assessorService.AssessorServicePT_Tie.deserialize_assessmentRequest(AssessorServicePT_Tie.java:101)
    at 
assessorService.AssessorServicePT_Tie.readFirstBodyElement(AssessorServicePT_Tie.java:87)
    at 
com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:245)
    at 
com.sun.enterprise.webservice.EjbWebServiceDispatcher.handlePost(EjbWebServiceDispatcher.java:146)
    at 
com.sun.enterprise.webservice.EjbWebServiceDispatcher.invoke(EjbWebServiceDispatcher.java:79)
    at 
com.sun.enterprise.webservice.EjbWebServiceValve.dispatchToEjbEndpoint(EjbWebServiceValve.java:187)
    at 
com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:131)
    at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:542)
    at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
    at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
    at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185)
    at 
com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653)
    at 
com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534)
    at 
com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403)
    at 
com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)

-- 
Davide Ling
Sito personale - http://davideling.altervista.org