Details
-
Wish
-
Status: Resolved
-
Critical
-
Resolution: Invalid
-
None
-
None
-
None
-
Apache Tomcat 6.0, Axis 1.4, Eclipse, Windows XP
Description
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:
[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;
}
}
[/code]
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:
"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:
[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)
}
}
[/code]
Please guys, I need to solve this problem with in the next couple of days.
Bye.