Hi,

I've successfully used attachments to pass one input String parameter and 
get a String returned, for example:

     class MultipleSOAPAttachmentsService, method DataHandler 
reverseString(DataHandler)

But when I try to pass two input String parameters, for example:

     class MultipleSOAPAttachmentsService, method DataHandler 
concatenateStrings(DataHandler, DataHandler)

The RPCProvider(JavaProvider).invoke(MessageContext) throws an 
AxisFault with detailMessage "No such method 'concatenateStrings'", even 
though when I run AxisServlet it shows that 
MultipleSOAPAttachmentsService defines functions reverseString and 
concatenateStrings.

I think the parameter matching part of the invocation is not matching the 
two attachments I've sent in with the call with the two parameters defined 
for the service.  At first I thought I got the containment relationship wrong 
when I added the second attachment.  But the SOAP message seems to 
be constructed correctly.

Here's what TCPMON shows for the successful reverseString call and for 
the unsuccessful concatenateStrings call, followed by the deployment 
wsdd.

Anyone know what I'm doing wrong here?  Thanks!

 . . Phil

_______________________________________

reverseString request

<?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>
  <reverseString xmlns="">
   <source href="cid:CC92E5192DD9117AA5B5CA9362A0D8F5"; xmlns=""/>
  </reverseString>
 </soapenv:Body>
</soapenv:Envelope>

 ------=_Part_0_1499478125.1059751870377
Content-Type: text/plain 
Content-Transfer-Encoding: binary 
Content-Id: <CC92E5192DD9117AA5B5CA9362A0D8F5>  

How about this? 
------=_Part_0_1499478125.1059751870377-- 

reverseString response

<?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>
  <reverseStringResponse 
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
   <returnqname href="cid:9D1D602142978B268B75A35D37982F16"; 
xmlns:ns1="MultipleSOAPAttachmentsService"/>
  </reverseStringResponse>
 </soapenv:Body>
</soapenv:Envelope> 
--1927951303.1059751871008.JavaMail.javamailuser.localhost 
Content-Type: text/plain 
Content-Transfer-Encoding: binary 
Content-Id: <9D1D602142978B268B75A35D37982F16>  

?siht tuoba woH 
--1927951303.1059751871008.JavaMail.javamailuser.localhost-- 
_______________________________________

concatenateStrings request

<?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>
  <concatenateStrings xmlns="">
   <source href="cid:908314EFC7686E7DC9CA8975989F5405"; xmlns=""/>
   <source href="cid:B53BFC8397913CEC44BB00C929C73D34"; xmlns=""/>
  </concatenateStrings>
 </soapenv:Body>
</soapenv:Envelope> 
------=_Part_0_653523790.1059753343405 
Content-Type: text/plain 
Content-Transfer-Encoding: binary 
Content-Id: <908314EFC7686E7DC9CA8975989F5405>  

One 
------=_Part_0_653523790.1059753343405 
Content-Type: text/plain 
Content-Transfer-Encoding: binary 
Content-Id: <B53BFC8397913CEC44BB00C929C73D34>  

Two 
------=_Part_0_653523790.1059753343405-- 

concatenateStrings response

<?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>
  <soapenv:Fault>
   <faultcode>Server.userException</faultcode>
   <faultstring>No such operation 'concatenateStrings'</faultstring>
   <detail/>
  </soapenv:Fault>
 </soapenv:Body>
</soapenv:Envelope>
_______________________________________

wsdd

<deployment xmlns="http://xml.apache.org/axis/wsdd/"; 
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"; 
xmlns:ns1="MultipleSOAPAttachmentsService">

        <service name="MultipleSOAPAttachmentsService" 
provider="java:RPC">

                <parameter name="className" 
value="us.pooch.soaptest.attachments.soapservice.MultipleSOAPAttachme
ntsService" />

                <parameter name="allowedMethods" 
value="reverseString concatenateStrings" />

                <operation name="reverseString" 
returnQName="returnqname" returnType="ns1:DataHandler">
                        <parameter name="dh" 
type="ns1:DataHandler" />
                </operation>

                <operation name="concatenateStrings" 
returnQName="returnqname" returnType="ns1:DataHandler">
                        <parameter name="dh1" 
type="ns1:DataHandler" />
                        <parameter name="dh2" 
type="ns1:DataHandler" />
                </operation>

                <typeMapping 
deserializer="org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFact
ory" languageSpecificType="java:javax.activation.DataHandler" 
qname="ns1:DataHandler" 
serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory" 
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"; />

        </service>

</deployment>

Reply via email to