I have deployed a simple web service using Apache Tomcat 6.0 and Axis 1.4 in Windows XP. Now the server is very simple:
Now if the client doesn't send any parameters then everything works well (I am using Eclipse to run the client). But as sson as I try to send a parameter to the server, I get the following error:Code:import java.io.*; import java.util.*; /* HelloWorld.java This is our web service */ public class HelloWorld { public String getHelloWorld(String id) { String retName=""; try { File indexFile = new File("index.txt"); retName=indexFile.getAbsolutePath()+id; } catch(Exception e) { e.printStackTrace(); } return retName; } }
"javax.xml.rpc.JAXRPCException: Number of parameters passed in (0) doesn't match the number of IN/INOUT parameters (1) from the addParameter() calls"
Why is this happening??? My client is also very simple:
Please guys, I need to solve this problem with in the next couple of days.Code:package dummyC; import java.util.*; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.encoding.XMLType; import org.apache.axis.utils.Options; import javax.xml.namespace.QName; import javax.xml.rpc.ParameterMode; import javax.xml.rpc.*; public class DummyC { /** * @param args */ public static void main(String[] args) { try { Service service = new Service(); Call call = (Call)service.createCall(); String endpoint ="http://localhost:8081/axis/HelloWorld.jws"; call.setTargetEndpointAddress(new java.net.URL(endpoint)); call.setOperationName(new QName("getHelloWorld")); call.addParameter("param1",XMLType.XSD_STRING, ParameterMode.IN); String output = (String)call.invoke(new Object[]{}); System.out.println("Got result : " + output); } catch(Exception e) { System.out.print("sssss: "+e.toString()); } } }
Bye.


Reply With Quote