You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@xml.apache.org by Rocky Raccoon <rr...@bigfoot.com> on 2000/09/22 02:22:55 UTC
"no signature match" Fault
Hi,
I have Deployed a Soap Service using Tomcat.
This is the DeploymentDescriptor.
<isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment"
id="urn:dst" >
<isd:provider type="java"
scope = "Application"
methods="func1 funct2">
<isd:java class="MySoap" static="false"/>
</isd:provider>
</isd:service>
In my SoapService I have these methods func1 & func2
public String func1(Integer val);
public String func2(String val);
I build a call this way.
String encodingStyleURI = Constants.NS_URI_SOAP_ENC;
BeanSerializer beanSer = new BeanSerializer();
// Build the call.
Call call = new Call();
call.setTargetObjectURI("urn:dst");
call.setMethodName("func1");
call.setEncodingStyleURI(encodingStyleURI);
Vector params = new Vector();
Integer i = new Integer(101);
params.addElement(new Parameter("val", Integer.class,i, null));
call.setParams(params);
Response resp = null;
String strOut = null;
try
{
resp = call.invoke(url, "");
}
catch (SOAPException e)
{
// Process Exception
}
// Check the response.
if (!resp.generatedFault())
{
Parameter ret = resp.getReturnValue();
Object value = ret.getValue();
strOut = value != null ? "\n" + value : null ;
}
else
{
Fault fault = resp.getFault();
strOut =new String("Generated fault: ")
+ " Fault Code = " + fault.getFaultCode()
+ " Fault String = " + fault.getFaultString();
}
Calling func1 generates this Fault.
Fault Code = SOAP-ENV:Server Fault String = MySoap.func1(int) -- no
signature match
The other function func2 gets called properly.
Any idea what I am doing wrong ?
--
rgds
http://www.bigfoot.com/~rrocky/