java - ActionMismatch while using web service -
i'm trying connect , use web service method. i'm getting following error:
the soap action specified on message, '', not match http soap action, 'http://tempuri.org/xpto/foobar'.    in fact, code says this:
_state.getmessagecontext().setproperty("http.soap.action", "http://yadayadayada");   but doesn't state message.
the wsdl states this:
<wsdl:input wsaw:action="http://tempuri.org/foo/bar" message="tns:xpto"/>        
this question has been solved. had alter code auto generated wsdl2java. in stub class, auto generated code looks this;
    (...)            org.apache.axis.client.call _call = createcall();     _call.setoperation(_operations[11]);     _call.setusesoapaction(true);     _call.setsoapactionuri("http://tempuri.org/foo/bar");     _call.setencodingstyle(null);     _call.setproperty(org.apache.axis.client.call.send_type_attr, boolean.false);     _call.setproperty(org.apache.axis.axisengine.prop_domultirefs, boolean.false);     _call.setsoapversion(org.apache.axis.soap.soapconstants.soap12_constants);     _call.setoperationname(new javax.xml.namespace.qname("http://tempuri.org/", "bar"));      setrequestheaders(_call);     setattachments(_call);   i had add following, before setrequestheaders:
    setheader("http://www.w3.org/2005/08/addressing", "to",  "http://wsdl.url");     setheader("http://www.w3.org/2005/08/addressing", "action",  "http://tempuri.org/foo/bar");      soapheaderelement[]  headers = getheaders();     (soapheaderelement h : headers) { h.setrole(null); }      setrequestheaders(_call);     setattachments(_call);      
Comments
Post a Comment