HI,
I'm trying to use call.invoke(Envelope ), so i created a Envelope without the attriabutes,
here is the source code
package samples.security;
import javax.xml.namespace.QName;
//import org.apache.axis.AxisFault;
import org.apache.axis.MessageContext;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.message.SOAPBodyElement;
import org.apache.axis.message.SOAPEnvelope;
//import org.apache.axis.utils.Options;
import org.apache.axis.utils.XMLUtils;
//import org.apache.xpath.operations.String;
import org.apache.axis.encoding.XMLType;
import javax.xml.rpc.ParameterMode;
import javax.xml.soap.Name;
import javax.xml.namespace.QName;
public class Client {
//private static Name hello;
public static void main(String[] args) throws Exception {
try {
System.out.println("\n============= 1 ==============");
Service service = new Service();
System.out.println("\n============= 2 ==============");
Call call = (Call) service.createCall();
System.out.println("\n============= 3 ==============");
call.setTargetEndpointAddress(new java.net.URL("http://localhost:5678/mr/rpcrouter"));
System.out.println("\n============= 4 ==============");
SOAPEnvelope env = new SOAPEnvelope();
System.out.println("\n============= 5 ==============");
SOAPBodyElement sbe = new SOAPBodyElement(XMLUtils.StringToElement("urn:dss", "validateSession", ""));
env.getBody().addBodyElement(env.createName("stoken"));
env.getBody().addBodyElement(env.createName("reqID"));
env.getBody().addBodyElement(env.createName("clientID"));
System.out.println("\n============= 6 ==============");
sbe.setAttribute("hello","world","jhkjh");
System.out.println("vector is "+env.getBodyElements());
XMLUtils.PrettyElementToStream(env.getAsDOM(), System.out);
System.out.println("\n============= 7 ==============");
env = new SignedSOAPEnvelope(env, "http://xml-security");
System.out.println("\n============= 8 ==============");
System.out.println("\n============= Request ==============");
XMLUtils.PrettyElementToStream(env.getAsDOM(), System.out);
call.invoke(env);
MessageContext mc = call.getMessageContext();
System.out.println("\n============= Response ==============");
XMLUtils.PrettyElementToStream(mc.getResponseMessage().getSOAPEnvelope().getAsDOM(), System.out);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
the webservice I'm trying access, which expects 3 parameters, I'm not sure how to pass those parameters in the envelope
any help would be great
Thx
Sam
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!