[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