[jboss-svn-commits] JBL Code SVN: r18605 - in labs/jbossesb/workspace/sandbox: jetty/quickstart1 and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Feb 27 12:52:47 EST 2008


Author: tfennelly
Date: 2008-02-27 12:52:47 -0500 (Wed, 27 Feb 2008)
New Revision: 18605

Added:
   labs/jbossesb/workspace/sandbox/HttpRouter/sample1/localhost-https-12346.properties
   labs/jbossesb/workspace/sandbox/jetty/quickstart1/jettyrealm.properties
Modified:
   labs/jbossesb/workspace/sandbox/HttpRouter/sample1/build.xml
   labs/jbossesb/workspace/sandbox/HttpRouter/sample1/jboss-esb.xml
   labs/jbossesb/workspace/sandbox/jetty/quickstart1/build.xml
   labs/jbossesb/workspace/sandbox/jetty/quickstart1/jboss-esb.xml
   labs/jbossesb/workspace/sandbox/jetty/quickstart1/server-12345.xml
   labs/jbossesb/workspace/sandbox/jetty/quickstart1/src/org/jboss/soa/esb/samples/quickstart/httptest/HttpRequestPrinter.java
Log:
Added https and tried to configure Http BASIC Authentication.

Modified: labs/jbossesb/workspace/sandbox/HttpRouter/sample1/build.xml
===================================================================
--- labs/jbossesb/workspace/sandbox/HttpRouter/sample1/build.xml	2008-02-27 16:02:46 UTC (rev 18604)
+++ labs/jbossesb/workspace/sandbox/HttpRouter/sample1/build.xml	2008-02-27 17:52:47 UTC (rev 18605)
@@ -5,8 +5,6 @@
 		${line.separator}
 	</description>
 
-    <property name="additional.deploys" value="server-12345.xml" />
-
     <!-- Import the base Ant build script... -->
 	<import file="../conf/base-build.xml"/>
 
@@ -17,4 +15,19 @@
         </java>
     </target>
 
+
+    <target name="quickstart-specific-assemblies">
+        <pathconvert targetos="unix" property="keystoredir">
+            <path><pathelement location="${org.jboss.esb.server.home}"/></path>
+        </pathconvert>
+
+        <property name="keystore" value="${keystoredir}/jetty12346.keystore" />
+
+        <copy file="localhost-https-12346.properties" todir="build/META-INF">
+            <filterset>
+                <filter token="keystore" value="${keystore}" />
+            </filterset>
+        </copy>
+    </target>
+    
 </project>

Modified: labs/jbossesb/workspace/sandbox/HttpRouter/sample1/jboss-esb.xml
===================================================================
--- labs/jbossesb/workspace/sandbox/HttpRouter/sample1/jboss-esb.xml	2008-02-27 16:02:46 UTC (rev 18604)
+++ labs/jbossesb/workspace/sandbox/HttpRouter/sample1/jboss-esb.xml	2008-02-27 17:52:47 UTC (rev 18605)
@@ -28,7 +28,9 @@
             </listeners>
             <actions>
                 <action name="httprouter" class="org.jboss.soa.esb.http.HttpRouter">
-                    <property name="endpointUrl" value="http://localhost:12345/blah"/>
+                    <property name="endpointUrl" value="https://localhost:12346/blah">
+                        <http-client-property name="file" value="/META-INF/localhost-https-12346.properties" />
+                    </property>
                     <property name="method" value="GET" /> <!-- Currently only supports GET or POST - easy to add more! -->
                     <property name="responseType" value="STRING" /> <!-- Response should be set back on message as STRING or BYTES - default STRING -->
                     <property name="headers">

Added: labs/jbossesb/workspace/sandbox/HttpRouter/sample1/localhost-https-12346.properties
===================================================================
--- labs/jbossesb/workspace/sandbox/HttpRouter/sample1/localhost-https-12346.properties	                        (rev 0)
+++ labs/jbossesb/workspace/sandbox/HttpRouter/sample1/localhost-https-12346.properties	2008-02-27 17:52:47 UTC (rev 18605)
@@ -0,0 +1,11 @@
+# See: 
+# - http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpRouter and
+# - http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpClientFactory
+
+# Configurators
+configurators=HttpProtocol
+
+# HttpProtocol config...
+protocol-socket-factory=org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory
+keystore=@keystore@
+keystore-passw=jettypass
\ No newline at end of file


Property changes on: labs/jbossesb/workspace/sandbox/HttpRouter/sample1/localhost-https-12346.properties
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: labs/jbossesb/workspace/sandbox/jetty/quickstart1/build.xml
===================================================================
--- labs/jbossesb/workspace/sandbox/jetty/quickstart1/build.xml	2008-02-27 16:02:46 UTC (rev 18604)
+++ labs/jbossesb/workspace/sandbox/jetty/quickstart1/build.xml	2008-02-27 17:52:47 UTC (rev 18605)
@@ -1,13 +1,40 @@
 <project name="jetty_http_gateway_sample1" default="deploy" basedir=".">
-	
-	<description> 
+
+    <property environment="env" />
+
+    <description>
 		${ant.project.name}
 		${line.separator}
 	</description>
 
-    <property name="additional.deploys" value="server-12345.xml" />
-
     <!-- Import the base Ant build script... -->
 	<import file="../conf/base-build.xml"/>
 
+    <target name="quickstart-specific-assemblies">
+        <pathconvert targetos="unix" property="keystoredir">
+            <path><pathelement location="${org.jboss.esb.server.home}"/></path>
+        </pathconvert>
+
+        <property name="keystore" value="${keystoredir}/jetty12346.keystore" />
+
+        <delete file="${keystore}" failonerror="false"/>
+        <genkey keystore="${keystore}" storepass="jettypass" keypass="jettypass" keyalg="RSA" alias="jetty">
+            <dname>
+                <param name="CN" value="localhost"/>
+                <param name="OU" value="jetty"/>
+                <param name="O" value="jetty"/>
+                <param name="C" value="IE"/>
+            </dname>
+        </genkey>
+
+        <copy file="server-12345.xml" todir="build/META-INF">
+            <filterset>
+                <filter token="keystoredir" value="${keystoredir}" />
+                <filter token="keystore" value="${keystore}" />
+            </filterset>
+        </copy>
+
+        <copy file="jettyrealm.properties" todir="${keystoredir}"/>
+    </target>
+
 </project>

Modified: labs/jbossesb/workspace/sandbox/jetty/quickstart1/jboss-esb.xml
===================================================================
--- labs/jbossesb/workspace/sandbox/jetty/quickstart1/jboss-esb.xml	2008-02-27 16:02:46 UTC (rev 18604)
+++ labs/jbossesb/workspace/sandbox/jetty/quickstart1/jboss-esb.xml	2008-02-27 17:52:47 UTC (rev 18605)
@@ -9,8 +9,7 @@
 
             <listeners>
                 <groovy-listener name="Http-12345" script="JettyGateway">
-                    <property name="jettyConfig" value="/server-12345.xml" />
-                    <!-- property name="port" value="12345" / -->
+                    <property name="jettyConfig" value="/META-INF/server-12345.xml" />
                 </groovy-listener>
             </listeners>
             <actions>

Added: labs/jbossesb/workspace/sandbox/jetty/quickstart1/jettyrealm.properties
===================================================================
--- labs/jbossesb/workspace/sandbox/jetty/quickstart1/jettyrealm.properties	                        (rev 0)
+++ labs/jbossesb/workspace/sandbox/jetty/quickstart1/jettyrealm.properties	2008-02-27 17:52:47 UTC (rev 18605)
@@ -0,0 +1 @@
+jettyuser: jettyuser,jettyrole


Property changes on: labs/jbossesb/workspace/sandbox/jetty/quickstart1/jettyrealm.properties
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: labs/jbossesb/workspace/sandbox/jetty/quickstart1/server-12345.xml
===================================================================
--- labs/jbossesb/workspace/sandbox/jetty/quickstart1/server-12345.xml	2008-02-27 16:02:46 UTC (rev 18604)
+++ labs/jbossesb/workspace/sandbox/jetty/quickstart1/server-12345.xml	2008-02-27 17:52:47 UTC (rev 18605)
@@ -12,5 +12,91 @@
 
     <!-- Confige a HTTPS connector ala
          http://docs.codehaus.org/display/JETTY/Ssl+Connector+Guide -->
+    <Call name="addConnector">
+        <Arg>
+            <New class="org.mortbay.jetty.security.SslSocketConnector">
+                <Set name="Port">12346</Set>
+                <Set name="maxIdleTime">30000</Set>
+                <Set name="keystore">@keystore@</Set>
+                <Set name="password">jettypass</Set>
+                <Set name="keyPassword">jettypass</Set>
+                <Set name="truststore">@keystore@</Set>
+                <Set name="trustPassword">jettypass</Set>
+            </New>
+        </Arg>
+    </Call>
 
+    <Set name="handler">
+        <New class="org.mortbay.jetty.handler.HandlerCollection">
+            <Set name="handlers">
+                <Array type="org.mortbay.jetty.Handler">
+                    <Item>
+                        <New class="org.mortbay.jetty.servlet.Context">
+                            <Set name="contextPath">/abcd</Set>
+                            <Set name="securityHandler">
+                                <New class="org.mortbay.jetty.security.SecurityHandler">
+                                    <Set name="userRealm">
+                                        <New class="org.mortbay.jetty.security.HashUserRealm">
+                                            <Set name="name">Test Realm</Set>
+                                            <Set name="config">@keystoredir@/jettyrealm.properties</Set>
+                                        </New>
+                                    </Set>
+                                    <Set name="constraintMappings">
+                                        <Array type="org.mortbay.jetty.security.ConstraintMapping">
+                                            <Item>
+                                                <New class="org.mortbay.jetty.security.ConstraintMapping">
+                                                    <Set name="constraint">
+                                                        <New class="org.mortbay.jetty.security.Constraint">
+                                                            <Set name="name">BASIC</Set>
+                                                            <Set name="roles">
+                                                                <Array type="java.lang.String">
+                                                                    <Item>jettyrole</Item>
+                                                                </Array>
+                                                            </Set>
+                                                            <Set name="authenticate" type="java.lang.Boolean">true</Set>
+                                                        </New>
+                                                    </Set>
+                                                    <Set name="PathSpec">/abcd</Set>
+                                                </New>
+                                            </Item>
+                                        </Array>
+                                    </Set>
+                                </New>
+                            </Set>
+                        </New>
+                    </Item>
+                </Array>
+            </Set>
+        </New>
+    </Set>
+
+    <!--
+        Connector connector = new SelectChannelConnector();
+        connector.setPort(8080);
+        server.setConnectors(new Connector[]{connector});
+
+        Constraint constraint = new Constraint();
+        constraint.setName(Constraint.__BASIC_AUTH);;
+        constraint.setRoles(new String[]{"user","admin","moderator"});
+        constraint.setAuthenticate(true);
+
+        ConstraintMapping cm = new ConstraintMapping();
+        cm.setConstraint(constraint);
+        cm.setPathSpec("/*");
+
+        SecurityHandler sh = new SecurityHandler();
+        sh.setUserRealm(new HashUserRealm("MyRealm",System.getProperty("jetty.home)+"/etc/realm.properties"));
+        sh.setConstraintMappings(new ConstraintMapping[]{cm});
+
+        WebAppContext webappcontext = new WebAppContext();
+        webappcontext.setContextPath("/mywebapp");
+        webappcontext.setWar("./path/to/my/war/orExplodedwar");
+        webappcontext.addHandler(sh);
+
+        HandlerCollection handlers= new HandlerCollection();
+        handlers.setHandlers(new Handler[]{webappcontext, new DefaultHandler()});
+
+        server.setHandler(handlers);
+    -->
+
 </Configure>
\ No newline at end of file

Modified: labs/jbossesb/workspace/sandbox/jetty/quickstart1/src/org/jboss/soa/esb/samples/quickstart/httptest/HttpRequestPrinter.java
===================================================================
--- labs/jbossesb/workspace/sandbox/jetty/quickstart1/src/org/jboss/soa/esb/samples/quickstart/httptest/HttpRequestPrinter.java	2008-02-27 16:02:46 UTC (rev 18604)
+++ labs/jbossesb/workspace/sandbox/jetty/quickstart1/src/org/jboss/soa/esb/samples/quickstart/httptest/HttpRequestPrinter.java	2008-02-27 17:52:47 UTC (rev 18605)
@@ -5,6 +5,7 @@
 import org.jboss.soa.esb.http.HttpInvocation;
 import org.jboss.soa.esb.message.Message;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.Enumeration;
 
 public class HttpRequestPrinter extends AbstractActionLifecycle {
@@ -23,7 +24,8 @@
 
         response.append("<pre>\n");
 
-        response.append("HTTP Method: " + invocation.getHttpRequest().getMethod());
+        HttpServletRequest httpRequest = invocation.getHttpRequest();
+        response.append("HTTP Method: " + httpRequest.getMethod() + " (" + (httpRequest.isSecure()?"https":"http") + ")");
 
         response.append("\n\nMessage Payload:\n");
         response.append("\t" + message.getBody().get());
@@ -32,21 +34,17 @@
         response.append("\t" + invocation.getTarget());
 
         response.append("\n\nRequest:\n");
-        response.append("\tPathInfo: " + invocation.getHttpRequest().getPathInfo() + "\n");
-        response.append("\tQuery String: " + invocation.getHttpRequest().getQueryString() + "\n");
-        response.append("\tQuery Params: " + invocation.getHttpRequest().getParameterMap() + "\n");
+        response.append("\tPathInfo: " + httpRequest.getPathInfo() + "\n");
+        response.append("\tQuery String: " + httpRequest.getQueryString() + "\n");
+        response.append("\tQuery Params: " + httpRequest.getParameterMap() + "\n");
         response.append("\tHeaders: \n");
-        Enumeration<String> headerNames = invocation.getHttpRequest().getHeaderNames();
+        Enumeration<String> headerNames = httpRequest.getHeaderNames();
         while (headerNames.hasMoreElements()) {
             String name = headerNames.nextElement();
 
-            response.append("\t\t" + name + ": " + invocation.getHttpRequest().getHeader(name) + "\n");
+            response.append("\t\t" + name + ": " + httpRequest.getHeader(name) + "\n");
         }
 
-        response.append("\n\nResponse:\n");
-        response.append("\tClass: " + invocation.getHttpResponse().getClass().getName() + "\n");
-        response.append("\tIsCommited: " + invocation.getHttpResponse().isCommitted() + "\n");
-
         response.append("</pre>");
 
         message.getBody().add(response.toString());
@@ -55,6 +53,4 @@
 
         return message;
     }
-
-
 }
\ No newline at end of file




More information about the jboss-svn-commits mailing list