[jboss-svn-commits] JBL Code SVN: r23736 - in labs/jbossesb/workspace/mlittle/legstar/product: samples/quickstarts/tomcat_listener/src/org/jboss/soa/esb/samples/quickstart/tomcatlistener and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Nov 5 22:07:02 EST 2008
Author: jim.ma
Date: 2008-11-05 22:07:02 -0500 (Wed, 05 Nov 2008)
New Revision: 23736
Modified:
labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatDispatchServlet.java
labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatMessageComposer.java
labs/jbossesb/workspace/mlittle/legstar/product/samples/quickstarts/tomcat_listener/src/org/jboss/soa/esb/samples/quickstart/tomcatlistener/MyAction.java
Log:
Comined the request info and http headers to one map
Modified: labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatDispatchServlet.java
===================================================================
--- labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatDispatchServlet.java 2008-11-06 02:29:44 UTC (rev 23735)
+++ labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatDispatchServlet.java 2008-11-06 03:07:02 UTC (rev 23736)
@@ -32,12 +32,12 @@
import org.jboss.soa.esb.helpers.ConfigTree;
import org.jboss.soa.esb.listeners.message.UncomposedMessageDeliveryAdapter;
import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.util.ClassUtil;
/**
* This class is for dispatching the http request to ESB action process pipe
* line.By default, this servlet will be used to set to default servlet mapping
- * in tomcat StandardContext. This class is subclass of DefaultServlet
+ * in the created StandardContext.
+ * This class will also return the esb error message and error stack trace to client
*
* @author <a href="mailto:ema at redhat.com">Jim Ma</a>
*/
Modified: labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatMessageComposer.java
===================================================================
--- labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatMessageComposer.java 2008-11-06 02:29:44 UTC (rev 23735)
+++ labs/jbossesb/workspace/mlittle/legstar/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/TomcatMessageComposer.java 2008-11-06 03:07:02 UTC (rev 23736)
@@ -45,7 +45,7 @@
* TomcatMessageComposer class is used to compose the HttpServletRquest
* to ESB aware message and decompse the ESB aware message to HttpServletRespones
* <p>
- * This class will put the http request header in ESB message properties with the key "RequestHeaderMap".
+ * This class will put the http request header and other requst information in ESB message properties with the key "RequestInfoMap".
* <p>If the request is the submitted from html form(with the <code>Content-Type: application/x-www-form-urlencoded</code>), HttpServletRequest.getParameterMap() result)
* will be put in ESB message properties. The key for it is "RequestParamterMap". It put the the byte array read from request inputstream in message payload.
* <p>In decompose process, the header map in message properties will be added
@@ -59,9 +59,6 @@
public class TomcatMessageComposer<T extends TomcatRequestWrapper>
extends AbstractMessageComposer<T> {
- /** Request header map key in esb message properties */
- public static final String HTTP_REQUEST_HEADER_MAP = "RequestHeaderMap";
-
/** Request parameter map key in esb message properties */
public static final String HTTP_REQUEST_PARAMETER_MAP = "RequestParameterMap";
@@ -108,9 +105,8 @@
throw new MessageDeliverException(
"Failed to read body data from http request", e);
}
- //Set Http Header header
+ //Set http request info
message.getProperties().setProperty(HTTP_REQUEST_INFO_MAP, getRequestInfo(request));
- message.getProperties().setProperty(HTTP_REQUEST_HEADER_MAP, getHeaders(request));
if (paraMap != null && paraMap.size() > 0) {
message.getProperties().setProperty(this.HTTP_REQUEST_PARAMETER_MAP, paraMap);
}
@@ -160,23 +156,12 @@
}
/**
- * Method for get http header map from a servlet request
+ * Method for get request information from a servlet request
+ * The result includes the http header and other servlet request information
* @param request ServletRequest
- * @return HeaderMap
+ * @return Request information includes the http header and other information parsed by
+ * servlet container from a servlet request
*/
- @SuppressWarnings("unchecked")
- public Map<String, Object> getHeaders(final HttpServletRequest request) {
- Map headerMap = new java.util.HashMap<String, String>();
- Enumeration enumeration = request.getHeaderNames();
- while (enumeration.hasMoreElements()) {
- String name = (String) enumeration.nextElement();
- String value = request.getHeader(name);
- headerMap.put(name, value);
- }
- return headerMap;
- }
-
-
public Map<String, Object> getRequestInfo(HttpServletRequest request) {
Map<String, Object> requestInfoMap = new HashMap<String, Object>();
requestInfoMap.put("authType", request.getAuthType());
@@ -197,6 +182,14 @@
requestInfoMap.put("requestURI", request.getRequestURI());
requestInfoMap.put("schema", request.getScheme());
requestInfoMap.put("serverName", request.getServerName());
+
+ //Add http header
+ Enumeration enumeration = request.getHeaderNames();
+ while (enumeration.hasMoreElements()) {
+ String name = (String) enumeration.nextElement();
+ String value = request.getHeader(name);
+ requestInfoMap.put(name, value);
+ }
return requestInfoMap;
}
}
Modified: labs/jbossesb/workspace/mlittle/legstar/product/samples/quickstarts/tomcat_listener/src/org/jboss/soa/esb/samples/quickstart/tomcatlistener/MyAction.java
===================================================================
--- labs/jbossesb/workspace/mlittle/legstar/product/samples/quickstarts/tomcat_listener/src/org/jboss/soa/esb/samples/quickstart/tomcatlistener/MyAction.java 2008-11-06 02:29:44 UTC (rev 23735)
+++ labs/jbossesb/workspace/mlittle/legstar/product/samples/quickstarts/tomcat_listener/src/org/jboss/soa/esb/samples/quickstart/tomcatlistener/MyAction.java 2008-11-06 03:07:02 UTC (rev 23736)
@@ -40,14 +40,6 @@
System.out.println("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&");
- System.out.println("------------Http Header-------------------------");
- Map<String, String> headerMap = (Map<String, String>)message.getProperties().getProperty("RequestHeaderMap");
- Iterator<String> ite = headerMap.keySet().iterator();
- while(ite.hasNext()) {
- String key = ite.next();
- System.out.println(key + " : " + headerMap.get(key));
- }
-
System.out.println("------------Http Request Info-------------------");
Map<String, String> requestInfo = (Map<String, String>)message.getProperties().getProperty("RequestInfoMap");
Iterator<String> infoIte = requestInfo.keySet().iterator();
More information about the jboss-svn-commits
mailing list