User: alborini Date: 01/04/27 01:46:30 Modified: src/docs jbossdocs.xml Added: src/docs howtopetstore.xml Log: Included petstore howto written by Tom Coleman. Revision Changes Path 1.16 +2 -1 manual/src/docs/jbossdocs.xml Index: jbossdocs.xml =================================================================== RCS file: /cvsroot/jboss/manual/src/docs/jbossdocs.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- jbossdocs.xml 2001/04/25 12:40:26 1.15 +++ jbossdocs.xml 2001/04/27 08:46:30 1.16 @@ -10,6 +10,7 @@ <!ENTITY production.xml SYSTEM "production.xml"> <!ENTITY howtotomcat.xml SYSTEM "howtotomcat.xml"> <!ENTITY howtormhexamples.xml SYSTEM "howtormhexamples.xml"> + <!ENTITY howtopetstore.xml SYSTEM "howtopetstore.xml"> <!ENTITY howtojmx.xml SYSTEM "howtojmx.xml"> <!ENTITY howtotimer.xml SYSTEM "howtotimer.xml"> <!ENTITY howtoj2eedeployer.xml SYSTEM "howtoj2eedeployer.xml"> @@ -71,6 +72,6 @@ &howto_socketfactories.xml; &howtojaxp.xml; &howtoverifier.xml; - +&howtopetstore.xml; </chapter> </book> 1.1 manual/src/docs/howtopetstore.xml Index: howtopetstore.xml =================================================================== <?xml version = "1.0" encoding = "UTF-8"?> <section id="howtopetstore"> <title>Deploying the Pet Store 1.1.1 Demo in JBoss</title> <para>Author:<author> <firstname>Tom</firstname> <surname>Coleman</surname> </author> <email>[EMAIL PROTECTED]</email> </para> <section> <title>Introduction</title> <para>The Pet Store sample application (demo) is a relatively robust, well-documented demonstration of J2EE technology and concepts. It implements MVC (Model-View-Controller) architecture.</para> <para>The Pet Store demo can allow developers to gain familiarity with J2EE concepts including application portability, a key J2EE design objective.</para> <para>The Pet Store has been successfully deployed in JBoss PRE 2.1 configured to use Embedded Tomcat and Tomcat 3.2.1/Apache using Sun 1.3 jdk on Linux. The steps provided below apply to JBoss PRE 2.1 since 21st January 2001.</para> </section> <section> <title>Outstanding Deployment Issues</title> <para>Please post your experiences with deploying the Pet Store in JBoss to the jboss-user mailing list.</para> <section> <title>The security adapter</title> <para>The Pet Store implements non-portable security code that works only with the J2EE RI (Reference Implementation) server. </para> <para>The non-portable code is contained in the J2eeSecurityAdapter class. The JBoss Pet Store patch replaces this class with a JBossSecurityAdapter class that implements the SecurityAdapter interface.</para> <para>The steps below change the value for securityAdapterClassName in the Pet Store application to use JBossSecurityAdapter. </para> <para>See the /docs/security.html page in the Pet Store demo for more information. </para> </section> <section> <title>Adding new users</title> <para>In order to add new users, you have to configure Tomcat to use a JDBCRealm. See below for details.</para> </section> <section> <title>The Admin Client</title> <para>We still need JBoss specific Deployment descriptors for the Admin client application. Please post them to the mailing list if you have them.</para> </section> </section> <section> <title>Original contributers</title> <itemizedlist> <listitem><para>Mike Lueders, Richard Gyger - Focus Technologies</para></listitem> <listitem><para>Scott Stark</para></listitem> <listitem><para>Anatoly Ackerman</para></listitem> <listitem><para>Tom Coleman</para></listitem> <listitem><para>Aaron Mulder</para></listitem> </itemizedlist> </section> <section> <title>Installation & Configuration</title> <orderedlist> <listitem> <para>Download the Pet Store</para> <para>You can get the source from <ulink url="http://java.sun.com/j2ee/download.html#blueprints">Sun's J2EE Download Page</ulink>. It's in the "J2EE Blueprints" package. Download the 1.1.1 version. Unpack it anywhere. The root directory of the Pet Store demo is referred to below as $PETSTORE. </para> </listitem> <listitem> <para>Download the JBoss Pet Store patch file</para> <para>Running the Pet Store demo in JBoss requires several minor changes to deployment files in the Pet Store application (.ear) file. The patch is currently available in the file section of the manual, it is named petstore-1.1.1-patch.zip.</para> <para>Copy the patch file to a temporary directory and unzip it. The patch contains a zip file that patches the Pet Store demo. </para> </listitem> <listitem> <para>Configure JBoss to use Embedded Tomcat</para> <para>You need a servlet container to run the petstore. These instructions use Tomcat 3.2.1. You can either use a bundled binary JBoss + Tomcat, or see the instructions to configure JBoss to use Embedded Tomcat in <xref linkend="howtotomcat"/>.</para> </listitem> <listitem> <para>Select a Database</para> <para>The Pet Store demo uses the Cloudscape database by default.</para> <para>The Pet Store demo theoretically should work with just about any JDBC compliant database. However, to avoid problems with SQL syntax doing a Product Search, use Cloudscape if at all possible.</para> </listitem> <listitem> <para>Rebuild the Pet Store application (petstore.ear)</para> <para>The following step overwrites several files in the Pet Store application sources. You may want to make a separate copy of the JBoss version of the Pet Store.</para> <para>This step adds the file jboss-web.xml to the WEB-INF directory in petstore.war, modifies the serverType in the web.xml file of that directory to identify the JBoss server to the application, and modifies the application.xml file in the META-INF directory of petstore.ear.</para> <itemizedlist> <listitem> <para>Copy the petstore-jboss-mods.zip file to the root directory ($PETSTORE) of your Pet Store distribution. Change to this directory and unzip the file. </para> <para>Note: This will overwrite the original web.xml file. </para> <para><programlisting>cd $PETSTORE unzip petstore-jboss-mods.zip </programlisting></para> </listitem> <listitem> <para>Rebuild the Pet Store application. </para> <para>Run build.sh or build.bat in the $PETSTORE/src/petstore/src/build directory. </para> <para>The result is a new petstore.ear in the $PETSTORE/src/petstore/build directory. </para> <para>This is the file you deploy by copying it to $JBOSS_HOME/deploy</para> </listitem> </itemizedlist> </listitem> <listitem> <para>Add DB Pools to JBoss</para> <para>The JBoss Petstore patch file includes the file jboss.jcml. This file defines Pet Store DB Pools for Cloudscape using port 1098. </para> <para>Cloudscape uses port 1099 by default. JBoss uses port 1099 for JNDI.</para> <para>If you will be using a different database, you will need to define DB pools appropriate for your database. See <xref linkend="jdbc"/> for details</para> </listitem> <listitem> <para>Prepare the Database</para> <para>Modify the Cloudscape startup command to use port 1098.</para> <para>You do this by adding -port port_number. For example:</para> <programlisting>java ... RmiJdbc.RJJdbcServer -port 1098 COM.cloudscape.core.JDBCDriver</programlisting> <para>Whichever product you're using, create a database or instance or schema (the terminology varies) and then run the appropriate script to populate it.</para> <para>Start Cloudscape.</para> </listitem> <listitem> <para>Add JARS to JBoss</para> <para>Copy your DB driver JAR to the lib/extdirectory of your JBoss installation ($JBOSS_HOME). </para> <para>Copy tools.jar from the J2 SDK to the lib/ext directory of your JBoss installation ($JBOSS_HOME).</para> <para>For Cloudscape, copy cloudscape.jar and RmiJdbc.jar to the lib/ext directory. </para> </listitem> <listitem> <para>Add Tomcat JDBCRealm</para> <para>Find the following code in the Tomcat server.xml file and comment it out.</para> <programlisting><![CDATA[<RequestInterceptor className="org.apache.tomcat.request.SimpleRealm" debug="0" /> ]]></programlisting> <para>Add the following code just below the code you commented out.</para> <programlisting><![CDATA[<RequestInterceptor className="org.apache.tomcat.request.JDBCRealm" debug="99" driverName="COM.cloudscape.coreRmiJdbcDriver" connectionURL="jdbc:rmi://localhost:1098/jdbc:cloudscape:CloudscapeDB" userTable="users" userNameCol="user_name" userCredCol="user_pass" userRoleTable="user_roles" roleNameCol="role_name" connectionName="estoreuser" connectionPassword="estore" /> ]]></programlisting> <para>Make sure the JbossRealm interceptor follows the JDBCRealm definition. </para> <programlisting><![CDATA[<RequestInterceptor className="org.jboss.tomcat.security.JbossRealm" /> ]]></programlisting> <para>Change to the $PETSTORE directory and run the dbrealm script to set up the default Pet Store user. </para> </listitem> <listitem> <para>Modify the Tomcat Users file</para> <para>The patch contains a tomcat-users.xml file that adds the default Pet Store user. You can copy this file to your $TOMCAT_HOME/conf directory, or add the following line to your existing tomcat-users.xml file. </para> <para>You don't need to do this if you configure a JDBCRealm as described above. </para> <programlisting><![CDATA[<user name = "j2ee" password = "j2ee" roles = "customer" /> ]]></programlisting> </listitem> <listitem> <para>Start JBoss</para> <para>Start JBoss and copy the new petstore.ear to the deploy directory. You should see JBoss deploy the Pet Store EJBs.</para> </listitem> <listitem> <para>Run the Pet Store</para> <para>Point your browser to http://your-server-name.your-domain:8080/estore to start the Pet Store. </para> </listitem> </orderedlist> </section> </section> _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/jboss-development