You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Niels Bo <ni...@gmail.com> on 2009/05/10 14:04:54 UTC

The SOAP action specified on the message, '', does not match the HTTP SOAP Action

Hi

I have generated a client (wsdl2jave) from this wsdl: 
http://api.rkd.reuters.com/schemas/wsdl/TokenManagement_1_HttpsAndAnonymous.wsdl

But I receive this error back: "The SOAP action specified on the message,
'', does not match the HTTP SOAP Action"
The in and out messages are below.

I can see that CXF does not put any SoapAction in the <soap:header> as
expected by the reciving service. And as far as I have debugged this is the
behviour in SoapPreProtocolOutInterceptor when version is Soap12.

Is there an error in the service or CXF, that I should report?
But how can I fix this now? Make my own version of
SoapPreProtocolOutInterceptor??


Best regards
Niels Bo

INFO: Outbound Message
---------------------------
ID: 1
Address:
https://api.rkd.reuters.com/api/2006/05/01/TokenManagement_1.svc/Anonymous
Encoding: UTF-8
Content-Type: application/soap+xml;
action="http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagement_1/CreateServiceToken_1"
Headers: {Accept=[*/*]}
Payload: <soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Header
/><soap:Body><ns2:CreateServiceToken_Request_1 ....

INFO: Inbound Message
----------------------------
ID: 1
Encoding: UTF-8
Content-Type: application/soap+xml
Headers: {X-Powered-By=[ASP.NET], X-AspNet-Version=[2.0.50727],
connection=[Keep-Alive], Date=[Sun, 10 May 2009 11:19:54 GMT],
transfer-encoding=[chunked], Server=[Microsoft-IIS/6.0],
content-type=[application/soap+xml], Via=[1.1 RKDAPI],
Cache-Control=[private]}
Payload: <?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:a="http://www.w3.org/2005/08/addressing"
xmlns:s="http://www.w3.org/2003/05/soap-envelope"><s:Header><a:Action
s:mustUnderstand="1">http://www.reuters.com/ns/2006/05/01/webservices/rkd/Faults_1/Fault_1_Reply</a:Action></s:Header><s:Body><s:Fault><s:Code><s:Value>s:Receiver</s:Value><s:Subcode><s:Value
xmlns:a="http://www.reuters.com/ns/2006/05/01/webservices/rkd/Faults_1">a:General_UnhandledException</s:Value></s:Subcode></s:Code><s:Reason><s:Text
xml:lang="en-GB">The SOAP action specified on the message, '', does not
match the HTTP SOAP Action, ...


-- 
View this message in context: http://www.nabble.com/The-SOAP-action-specified-on-the-message%2C-%27%27%2C-does-not-match-the-HTTP-SOAP-Action-tp23469494p23469494.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: The SOAP action specified on the message, '', does not match the HTTP SOAP Action

Posted by Niels Bo <ni...@gmail.com>.
Thanks!
That solved the problem.

Niels


dkulp wrote:
> 
> 
> It looks like you don't have ws-addressing turned on.   If you turn on ws-
> addressing, then the header should have the action and other addressing 
> headers added to it.
> 
> The WSDL you pointed to actually has a WS-SecurityPolicy policy fragment
> in 
> it.   Thus, if you use CXF 2.2.x and add the security/policy/addressing 
> modules (or use the big bundle), it should be automatic.     The policy
> engine 
> would see the <wsaw:UsingAddressing/> element in the policy and
> automatically 
> turn on the addressing.
> 
> Dan
> 
> 
> On Sun May 10 2009 8:04:54 am Niels Bo wrote:
>> Hi
>>
>> I have generated a client (wsdl2jave) from this wsdl:
>> http://api.rkd.reuters.com/schemas/wsdl/TokenManagement_1_HttpsAndAnonymous
>>.wsdl
>>
>> But I receive this error back: "The SOAP action specified on the message,
>> '', does not match the HTTP SOAP Action"
>> The in and out messages are below.
>>
>> I can see that CXF does not put any SoapAction in the <soap:header> as
>> expected by the reciving service. And as far as I have debugged this is
>> the
>> behviour in SoapPreProtocolOutInterceptor when version is Soap12.
>>
>> Is there an error in the service or CXF, that I should report?
>> But how can I fix this now? Make my own version of
>> SoapPreProtocolOutInterceptor??
>>
>>
>> Best regards
>> Niels Bo
>>
>> INFO: Outbound Message
>> ---------------------------
>> ID: 1
>> Address:
>> https://api.rkd.reuters.com/api/2006/05/01/TokenManagement_1.svc/Anonymous
>> Encoding: UTF-8
>> Content-Type: application/soap+xml;
>> action="http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagemen
>>t_1/CreateServiceToken_1" Headers: {Accept=[*/*]}
>> Payload: <soap:Envelope
>> xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Header
>> /><soap:Body><ns2:CreateServiceToken_Request_1 ....
>>
>> INFO: Inbound Message
>> ----------------------------
>> ID: 1
>> Encoding: UTF-8
>> Content-Type: application/soap+xml
>> Headers: {X-Powered-By=[ASP.NET], X-AspNet-Version=[2.0.50727],
>> connection=[Keep-Alive], Date=[Sun, 10 May 2009 11:19:54 GMT],
>> transfer-encoding=[chunked], Server=[Microsoft-IIS/6.0],
>> content-type=[application/soap+xml], Via=[1.1 RKDAPI],
>> Cache-Control=[private]}
>> Payload: <?xml version="1.0" encoding="UTF-8"?>
>> <s:Envelope xmlns:a="http://www.w3.org/2005/08/addressing"
>> xmlns:s="http://www.w3.org/2003/05/soap-envelope"><s:Header><a:Action
>> s:mustUnderstand="1">http://www.reuters.com/ns/2006/05/01/webservices/rkd/F
>>aults_1/Fault_1_Reply</a:Action></s:Header><s:Body><s:Fault><s:Code><s:Value
>>>s:Receiver</s:Value><s:Subcode><s:Value
>> xmlns:a="http://www.reuters.com/ns/2006/05/01/webservices/rkd/Faults_1">a:G
>>eneral_UnhandledException</s:Value></s:Subcode></s:Code><s:Reason><s:Text
>> xml:lang="en-GB">The SOAP action specified on the message, '', does not
>> match the HTTP SOAP Action, ...
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://www.nabble.com/The-SOAP-action-specified-on-the-message%2C-%27%27%2C-does-not-match-the-HTTP-SOAP-Action-tp23469494p23528975.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: The SOAP action specified on the message, '', does not match the HTTP SOAP Action

Posted by Daniel Kulp <dk...@apache.org>.
It looks like you don't have ws-addressing turned on.   If you turn on ws-
addressing, then the header should have the action and other addressing 
headers added to it.

The WSDL you pointed to actually has a WS-SecurityPolicy policy fragment in 
it.   Thus, if you use CXF 2.2.x and add the security/policy/addressing 
modules (or use the big bundle), it should be automatic.     The policy engine 
would see the <wsaw:UsingAddressing/> element in the policy and automatically 
turn on the addressing.

Dan


On Sun May 10 2009 8:04:54 am Niels Bo wrote:
> Hi
>
> I have generated a client (wsdl2jave) from this wsdl:
> http://api.rkd.reuters.com/schemas/wsdl/TokenManagement_1_HttpsAndAnonymous
>.wsdl
>
> But I receive this error back: "The SOAP action specified on the message,
> '', does not match the HTTP SOAP Action"
> The in and out messages are below.
>
> I can see that CXF does not put any SoapAction in the <soap:header> as
> expected by the reciving service. And as far as I have debugged this is the
> behviour in SoapPreProtocolOutInterceptor when version is Soap12.
>
> Is there an error in the service or CXF, that I should report?
> But how can I fix this now? Make my own version of
> SoapPreProtocolOutInterceptor??
>
>
> Best regards
> Niels Bo
>
> INFO: Outbound Message
> ---------------------------
> ID: 1
> Address:
> https://api.rkd.reuters.com/api/2006/05/01/TokenManagement_1.svc/Anonymous
> Encoding: UTF-8
> Content-Type: application/soap+xml;
> action="http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagemen
>t_1/CreateServiceToken_1" Headers: {Accept=[*/*]}
> Payload: <soap:Envelope
> xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Header
> /><soap:Body><ns2:CreateServiceToken_Request_1 ....
>
> INFO: Inbound Message
> ----------------------------
> ID: 1
> Encoding: UTF-8
> Content-Type: application/soap+xml
> Headers: {X-Powered-By=[ASP.NET], X-AspNet-Version=[2.0.50727],
> connection=[Keep-Alive], Date=[Sun, 10 May 2009 11:19:54 GMT],
> transfer-encoding=[chunked], Server=[Microsoft-IIS/6.0],
> content-type=[application/soap+xml], Via=[1.1 RKDAPI],
> Cache-Control=[private]}
> Payload: <?xml version="1.0" encoding="UTF-8"?>
> <s:Envelope xmlns:a="http://www.w3.org/2005/08/addressing"
> xmlns:s="http://www.w3.org/2003/05/soap-envelope"><s:Header><a:Action
> s:mustUnderstand="1">http://www.reuters.com/ns/2006/05/01/webservices/rkd/F
>aults_1/Fault_1_Reply</a:Action></s:Header><s:Body><s:Fault><s:Code><s:Value
>>s:Receiver</s:Value><s:Subcode><s:Value
> xmlns:a="http://www.reuters.com/ns/2006/05/01/webservices/rkd/Faults_1">a:G
>eneral_UnhandledException</s:Value></s:Subcode></s:Code><s:Reason><s:Text
> xml:lang="en-GB">The SOAP action specified on the message, '', does not
> match the HTTP SOAP Action, ...

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog