cancel
Showing results for 
Search instead for 
Did you mean: 

SOAPAction HTTP header case sensitive

Former Member
0 Kudos

Hi gurus,

I am trying to consume a webmethods java webservice via XI/PI NW2004 and when I send a request, PI send the soapaction field in uppercase.

POST http://webservices.kuehne-nagel.com/HelloWorld_test HTTP/1.0

Accept: /

Host: https://webservices.kuehne-nagel.com/HelloWorld_test

User-Agent: SAP-Messaging-com.sap.aii.messaging/1.0505

content-id: <soap-4C4DF1260912013BE10080009E344EB9sap.com>

Content-Type: text/xml; charset=utf-8

Content-Length: 316

SOAPACTION: "http://webservices.kuehne-nagel.com/helloWorld/hello"

It should be exactly like SOAPAction : "http://webservices.kuehne-nagel.com/helloWorld/hello"

How can I set/change it on XI/PI ?

Regards,

Rodolfo Miã

Accepted Solutions (0)

Answers (1)

Answers (1)

stefan_grube
Active Contributor
0 Kudos

"Field names are case-insensitive"

http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2

You need not change it.

Former Member
0 Kudos

Stefan,

Thanks for your repply.

Yes, fields names are not case sensitive, but I am having problems with HTTP header fields.

The SOAPACTION header field name is wrong into my request message. Should be like SOAPAction.

Regards,

Rodolfo Miã

stefan_grube
Active Contributor
0 Kudos

Once again: HTTP header fields are not case sensitive.

Do you have an issue with it?

Former Member
0 Kudos

Hi Stefan,

Yes, I have an Issue with it.

HTTP verbs are case sensitive. (http://www.w3.org/TR/wsdl)

So, when I send parameter SOAPACTION instead of SOAPAction, I get this error:

"Soapfault: Binder not found for SOAPAction=null"

Its only happens when I consume a Java webservice.

stefan_grube
Active Contributor
0 Kudos

As I have already written two times, HTTP header field names as SOAPAction are not case sensitive.

This is written in words which I think everyone can understand in rfc2616.

The SOAP adapter has always worked that way and no one complained so far.

Maybe your Java webservise does not work correctly?

Make sure that the web service accepts all HTTP header fields according to RFC 2616.

Edited by: Stefan Grube on Jul 29, 2010 1:06 PM

stefan_grube
Active Contributor
0 Kudos

> HTTP verbs are case sensitive. (http://www.w3.org/TR/wsdl)

Can you tell me, where this document mentions that HTTP header fields are case sensitive?

Former Member
0 Kudos

Stefan,

The issue is related to HTTP verb.

4.4 http:binding

The http:binding element indicates that this binding uses the HTTP protocol.

<definitions .... >

<binding .... >

<http:binding verb="nmtoken"/>

</binding>

</definitions>

The value of the required verb attribute indicates the HTTP verb. Common values are GET or POST, but others may be used. Note that HTTP verbs are case sensitive.

Acording to my Webservice vendor, the SOAPAction are indicated into this section.

Also, I am working with SAP Support and got this repply:

28.07.2010 - 16:38:47 CET - Resposta by SAP

Hello Rodolfo!

... Yes, the value should be SOAPAction

instead of SOAPACTION....

stefan_grube
Active Contributor
0 Kudos

> The value of the required verb attribute indicates the HTTP verb. Common values are GET or POST, but others may be used. Note that HTTP verbs are case sensitive.

This section does not say anything about HTTP headers. GET and POST are not headers, but HTTP methods.

> Acording to my Webservice vendor, the SOAPAction are indicated into this section.

This section has nothing to do with SOAPAction

> Also, I am working with SAP Support and got this repply:

> ... Yes, the value should be SOAPAction

> instead of SOAPACTION....

I do not comment this.

You have now following possibilities:

1. Convince your vendor to accept HTTP headers according to above mentioned RFC

2. Convince SAP that to change SOAPAction

Good luck.