I'm using axis-1.0 (server side) and MS SOAP Toolkit 3.0 (client side) to send a dime attachment. Starting from the attached WSDL, a call from MSSOAP Toolkit to axis raise the following error:
------ Tried to invoke method public java.lang.String org.tempuri.Service1SoapBImpl.sendMail(byte[]) throws java.rmi.RemoteException with arguments org.apache.axis.attachments.AttachmentPart. The arguments do not match the signature. ------ The code generated from WSDL2Java define "sendMail (byte[])" but later try to invoke "sendMail (AttachmentPart)". Can someone suggest a workaround? Thanks -- Walter Franzini [EMAIL PROTECTED] -- Walter Franzini [EMAIL PROTECTED]
<?xml version="1.0" encoding="utf-8"?> <definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://tempuri.org/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://tempuri.org/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:dime="http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> <message name="SendMailSoapIn"> <part name="file" type="xsd:base64Binary"/> </message> <message name="SendMailSoapOut"> <part name="parameters" type="xsd:string" /> </message> <portType name="Service1Soap"> <operation name="SendMail"> <input message="s0:SendMailSoapIn" /> <output message="s0:SendMailSoapOut" /> </operation> </portType> <binding name="Service1SoapB" type="s0:Service1Soap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc" /> <operation name="SendMail"> <soap:operation soapAction="http://tempuri.org/SendMail" /> <input> <dime:message layout="http://schemas.xmlsoap.org/ws/2002/04/dime/closed-layout" wsdl:required="true"/> <soap:body parts="file" use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://tempuri.org/"/> </input> <output> <soap:body use="encoded" namespace="http://tempuri.org/" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </output> </operation> </binding> <service name="Service1"> <port name="Service1Soap" binding="s0:Service1SoapB"> <soap:address location="http://127.0.0.1:8081/axis/services/Service1Soap" /> </port> </service> </definitions>
