[jboss-svn-commits] JBL Code SVN: r38428 - labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Oct 25 12:08:26 EDT 2013
Author: tcunning
Date: 2013-10-25 12:08:25 -0400 (Fri, 25 Oct 2013)
New Revision: 38428
Modified:
labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/SOAPProcessor.java
Log:
JBESB-3947
Read WSDL eagerly and resolve "target-host-url" from the endpoint address location
defined in it if it's a local file.
Modified: labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/SOAPProcessor.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/SOAPProcessor.java 2013-10-25 12:03:22 UTC (rev 38427)
+++ labs/jbossesb/branches/JBESB_4_11_CP2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/SOAPProcessor.java 2013-10-25 16:08:25 UTC (rev 38428)
@@ -23,15 +23,17 @@
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import javax.servlet.ServletContext;
import org.jboss.internal.soa.esb.publish.Publish;
import org.jboss.internal.soa.esb.util.JBossDeployerUtil;
-import org.jboss.metadata.web.jboss.JBossWebMetaData;
import org.jboss.soa.esb.ConfigurationException;
import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
import org.jboss.soa.esb.actions.ActionProcessingException;
@@ -41,6 +43,8 @@
import org.jboss.soa.esb.actions.soap.adapter.SOAPProcessorHttpServletRequest;
import org.jboss.soa.esb.actions.soap.adapter.SOAPProcessorHttpServletResponse;
import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.http.HttpHeader;
+import org.jboss.soa.esb.http.HttpRequest;
import org.jboss.soa.esb.listeners.message.MessageDeliverException;
import org.jboss.soa.esb.message.Message;
import org.jboss.soa.esb.message.MessagePayloadProxy;
@@ -48,7 +52,6 @@
import org.jboss.soa.esb.message.ResponseHeader;
import org.jboss.soa.esb.message.ResponseStatus;
import org.jboss.soa.esb.message.body.content.BytesBody;
-import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.deployment.Endpoint;
import org.jboss.wsf.spi.invocation.EndpointAssociation;
import org.jboss.wsf.spi.invocation.RequestHandler;
@@ -144,11 +147,21 @@
RequestHandler requestHandler = endpoint.getRequestHandler();
final Map<String, List<String>> headers = new HashMap<String, List<String>>() ;
+ final HttpRequest httpRequest = HttpRequest.getRequest(message);
final Properties properties = message.getProperties() ;
- final String[] names = properties.getNames() ;
+ final Set<String> names = getHeaderNames(httpRequest, properties);
for(final String name: names)
{
- final Object value = properties.getProperty(name) ;
+ Object value = null;
+ if (httpRequest != null) {
+ HttpHeader header = httpRequest.getHeader(name);
+ if (header != null) {
+ value = header.getValue();
+ }
+ }
+ if (value == null) {
+ value = properties.getProperty(name);
+ }
if (value != null)
{
String normalisedName = name.toLowerCase() ;
@@ -273,6 +286,17 @@
}
}
+ private Set<String> getHeaderNames(HttpRequest httpRequest, Properties properties) {
+ Set<String> names = new HashSet<String>();
+ if (httpRequest != null) {
+ for (HttpHeader header : httpRequest.getHeaders()) {
+ names.add(header.getName());
+ }
+ }
+ names.addAll(Arrays.asList(properties.getNames()));
+ return names;
+ }
+
private String getHeaderValue(final Map<String, List<String>> headers,
final String header)
{
More information about the jboss-svn-commits
mailing list