[
https://jira.jboss.org/jira/browse/JBESB-2814?page=com.atlassian.jira.plu...
]
David Ward commented on JBESB-2814:
-----------------------------------
Here's an example of an incoming ESB Message Properties:
{org.jboss.soa.esb.message.time.dob=Tue Sep 08 16:28:51 GMT-05:00 2009,
RequestInfoMap={protocol=HTTP/1.1, scheme=https, content-length=254, contentLength=254,
pathInfo=null, host=localhost:9443, serverName=localhost, user-agent=Jakarta
Commons-HttpClient/3.0.1, contextPath=/Proxy_Security/HelloWorldWS, remoteHost=127.0.0.1,
remoteUser=null, remoteAddr=127.0.0.1, content-type=text/xml;charset=UTF-8,
contentType=text/xml;charset=UTF-8, soapaction="", authType=null,
authorization=Basic YWRtaW46YWRtaW4=, queryString=null, characterEncoding=UTF-8,
localAddr=127.0.0.1, requestSessionId=null, requestPath=/,
requestURI=/Proxy_Security/HelloWorldWS/, pathInfoTokens=[Ljava.lang.String;@1ee3c8d,
localName=dwardlinux, method=POST}, org.jboss.soa.esb.message.time.dod=Tue Sep 08 16:28:51
GMT-05:00 2009}
You can see that "soapaction" is now nested inside "RequestInfoMap",
where it used to be a top-level ESB Message property itself.
HTTP request headers now nested inside RequestInfoMap property causes
invisibility to HttpRouter and dependents
---------------------------------------------------------------------------------------------------------------
Key: JBESB-2814
URL:
https://jira.jboss.org/jira/browse/JBESB-2814
Project: JBoss ESB
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Transports
Affects Versions: 4.7
Reporter: David Ward
Assignee: Tom Fennelly
Priority: Blocker
Fix For: 4.7
It appears the new http gateway on trunk is now nesting the incoming http request headers
into a ESB Message property of "RequestInfoMap". There is code assuming the
request headers would be top-level properties.
For example, HttpSOAPProxyTransport embeds usage of HttpRouter, setting it's default
configuration of "MappedHeaderList" to "Content-Type, Accept,
Authorization, SOAPAction". On lines 232-255 of HttpRouter (the setMappedHttpHeaders
and getHttpHeaders methods), the mapped headers are attempted to be pulled directly out of
the ESB Message Properties, *not* to first pull out the "RequestInfoMap" then
pull out the header properties from that map. This breaks the webservice_proxy_security
quickstart, but more importantly, it would break any code or configuration usage out there
where people are assuming the old location of the request headers.
I'm okay with the change to nest the request headers inside the RequestInfoMap
property, however 1) HttpRouter getHttpHeaders(Message,String):Object needs to be updated,
and 2) we need to make sure the release notes warns users of this change, just in case
there was custom code or configuration out there assuming the old property location.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira