User: juha Date: 00/08/27 13:09:22 Added: webstore Updating-Webstore-to-jBoss2.html Log: Instructions by Luan O'Carroll Revision Changes Path 1.1 zola/webstore/Updating-Webstore-to-jBoss2.html Index: Updating-Webstore-to-jBoss2.html =================================================================== <html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv=Content-Type content="text/html; charset=windows-1252"> <meta name=ProgId content=FrontPage.Editor.Document> <meta name=Generator content="Microsoft FrontPage 4.0"> <meta name=Originator content="Microsoft Word 9"> <link rel=File-List href="./Updating-Webstore-to-Jboss2_files/filelist.xml"> <title>Updating the Webstore to run with Jboss2</title> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>Luan O'Carroll</o:Author> <o:LastAuthor>Luan O'Carroll</o:LastAuthor> <o:Revision>3</o:Revision> <o:TotalTime>115</o:TotalTime> <o:Created>2000-08-02T17:00:00Z</o:Created> <o:LastSaved>2000-08-24T10:47:00Z</o:LastSaved> <o:Pages>3</o:Pages> <o:Words>819</o:Words> <o:Characters>4671</o:Characters> <o:Company>ASD Ltd.</o:Company> <o:Lines>38</o:Lines> <o:Paragraphs>9</o:Paragraphs> <o:CharactersWithSpaces>5736</o:CharactersWithSpaces> <o:Version>9.2720</o:Version> </o:DocumentProperties> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>0</w:DisplayVerticalDrawingGridEvery> <w:UseMarginsForDrawingGridOrigin/> <w:Compatibility> <w:FootnoteLayoutLikeWW8/> <w:ShapeLayoutLikeWW8/> <w:AlignTablesRowByRow/> <w:ForgetLastTabAlignment/> <w:LayoutRawTableWidth/> <w:LayoutTableRowsApart/> </w:Compatibility> </w:WordDocument> </xml><![endif]--> <style> <!-- /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} h1 {mso-style-next:Normal; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.0pt; margin-left:0cm; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:1; font-size:16.0pt; font-family:Arial; mso-font-kerning:16.0pt;} h2 {mso-style-next:Normal; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.0pt; margin-left:0cm; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:2; font-size:14.0pt; font-family:Arial; font-style:italic;} h3 {mso-style-next:Normal; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.0pt; margin-left:0cm; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:3; font-size:13.0pt; font-family:Arial;} a:link, span.MsoHyperlink {color:blue; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {color:purple; text-decoration:underline; text-underline:single;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} --> </style> </head> <body lang=EN-GB link=blue vlink=purple style='tab-interval:36.0pt'> <div class=Section1> <h1><span lang=EN-IE style='mso-ansi-language:EN-IE'>Updating the Webstore to run with Jboss2<o:p></o:p></span></h1> <p class=MsoNormal><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Setting up the datasource<o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>The <b><i>cs.java</i></b> and sele<b><i>ct.java </i></b>files need to be compiled before the <b><i>gocs.bat</i></b> and <b><i>select.bat</i></b> batch files will execute. I added calls to the Javac compiler to do so.<o:p></o:p><![if !supportEmptyParas]><![endif]><o:p></o:p></span></p> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>gocs.bat is then�</span></p> <pre><span style='font-family:"Courier New"'>cls %JAVA_HOME%\bin\java -fullversion %JAVA_HOME%\bin\javac .\cs.java %JAVA_HOME%\bin\java -cp .;d:\ejboss2\lib\ext\JData2_0.jar cs %1 %2 %3 %4 %5</span><span lang=EN-IE style='mso-ansi-language:EN-IE'><o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> and select.bat �<o:p></o:p></span></p> <pre><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'>cls %JAVA_HOME%\bin\java -fullversion</span><span lang=EN-IE style='font-family:"Courier New"; color:#993300;mso-ansi-language:EN-IE'> %JAVA_HOME%\bin\javac .\select.java</span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'> %JAVA_HOME%\bin\java -cp .;d:\ejboss2\lib\ext\JData2_0.jar select %1 %2 %3 %4 %5</span><span lang=EN-IE style='mso-ansi-language:EN-IE'><o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]>Depending on the database being used the driver and connection strings in the java code may also need modification. I used the JDataConnect driver from NetDirect and therefore needed to set the driver and URL as follows:<o:p></o:p></span></p> <pre><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]></span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span>Class.forName("<span style='color:#993300'>JData2_0.sql.$Driver</span>"); connection = DriverManager.getConnection("<span style='color:#993300'>jdbc:JDataConnect://127.0.0.1/Webstore</span>","<span style='color:red'>jboss</span>","<span style='color:red'>jboss</span>");</span><span lang=EN-IE style='mso-ansi-language:EN-IE'><o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>Before executing the above I created an ODBC System DSN for the new access database, calling it �<span style='color:#993300'>Webstore</span>� and used �jboss� as both the user name and password.<o:p></o:p></span></p> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Modifying the connection<o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>To setup a connection to the database I changed the jndi.lookup to <o:p></o:p></span></p> <pre><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span>connection = ((DataSource) namingContext.lookup("<span style='color:red'>java:comp/env/WebstorePool</span>")).getConnection();<o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]>so as to match the <b><i>jboss.xml</i></b> settings described below.<o:p></o:p></span></p> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Creating<span style="mso-spacerun: yes">� </span><i>jboss.xml</i> files <o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>Firstly for the <b><i>PersonEntityBean</i></b> as follows:<![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p> <pre><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><?xml version="1.0" encoding="Cp1252"?> <jboss><span style="mso-spacerun: yes"> </span><resource-managers> <span style="mso-spacerun: yes"> </span><resource-manager res-class="org.jboss.ejb.deployment.JDBCResource"> <span style="mso-spacerun: yes"> </span><res-name>WebstorePool</res-name> <span style="mso-spacerun: yes"> </span><res-jndi-name>xa.WebstorePool</res-jndi-name> <span style="mso-spacerun: yes"> </span></resource-manager> <span style="mso-spacerun: yes"> </span></resource-managers> <span style="mso-spacerun: yes"> </span><enterprise-beans> <span style="mso-spacerun: yes"> </span><entity> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><ejb-name>person.PersonEntityHome</ejb-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><jndi-name>person.PersonEntityHome</jndi-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><configuration-name>Standard BMP EntityBean</configuration-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><resource-ref> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><res-ref-name>WebstorePool</res-ref-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><resource-name>WebstorePool</resource-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span></resource-ref> <span style="mso-spacerun: yes"> </span></entity> <span style="mso-spacerun: yes"> </span></enterprise-beans> <span style="mso-spacerun: yes"> </span></jboss> </span><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>and subsequently for the <b><i>ProductEntityBean</i></b>�<o:p></o:p></span></p> <pre><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><?xml version="1.0" encoding="Cp1252"?> <span style="mso-spacerun: yes"> </span><jboss> <span style="mso-spacerun: yes"> </span><resource-managers> <span style="mso-spacerun: yes"> </span><resource-manager res-class="org.jboss.ejb.deployment.JDBCResource"> <span style="mso-spacerun: yes"> </span><res-name>WebstorePool</res-name> <span style="mso-spacerun: yes"> </span><res-jndi-name>xa.WebstorePool</res-jndi-name> <span style="mso-spacerun: yes"> </span></resource-manager> <span style="mso-spacerun: yes"> </span></resource-managers> <span style="mso-spacerun: yes"> </span><enterprise-beans> <span style="mso-spacerun: yes"> </span><entity> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><ejb-name>product.ProductEntityHome</ejb-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><jndi-name>product.ProductEntityHome</jndi-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><configuration-name>Standard BMP EntityBean</configuration-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><resource-ref> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><res-ref-name>WebstorePool</res-ref-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span><resource-name>WebstorePool</resource-name> <span style='mso-tab-count:1'> </span><span style="mso-spacerun: yes"> </span></resource-ref> <span style="mso-spacerun: yes"> </span></entity> <span style="mso-spacerun: yes"> </span></enterprise-beans> <span style="mso-spacerun: yes"> </span><span style="mso-spacerun: yes"> </span></jboss></span><span lang=EN-IE style='mso-ansi-language:EN-IE'><o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>Then I modified the <b><i>jboss.conf</i></b> file to include�<o:p></o:p></span></p> <pre style='margin-left:36.0pt'><span lang=EN-IE style='font-family:"Courier New";mso-ansi-language:EN-IE'><MLET CODE="org.jboss.jdbc.XADataSourceLoader" ARCHIVE="jboss.jar,vendor.jar" CODEBASE="../lib/ext/"> <span style="mso-spacerun: yes"> </span><ARG TYPE="java.lang.String" VALUE="<span style='color:red'>WebstorePool</span>"> <span style="mso-spacerun: yes"> </span><ARG TYPE="java.lang.String" VALUE="org.jboss.minerva.xa.XADataSourceImpl"> </MLET></span><span lang=EN-IE style='mso-ansi-language:EN-IE'><o:p></o:p></span></pre> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> and the <b><i>jboss.jcml</i></b> to include..<o:p></o:p></span></p> <pre><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><mbean name="DefaultDomain:service=XADataSource,name=WebstorePool"> <span style="mso-spacerun: yes"> </span><attribute name="URL"><span style='color:red'>jdbc:JDataConnect://127.0.0.1/Webstore</span></attribute> <span style="mso-spacerun: yes"> </span><attribute name="Password"><span style='color:red'>jboss</span></attribute> <span style="mso-spacerun: yes"> </span><attribute name="JDBCUser"><span style='color:red'>jboss</span></attribute> <span style="mso-spacerun: yes"> </span></mbean><o:p></o:p></span></pre> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Modifying the build.xml file<o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>I changed the construction of the jar files to include the new <b><i>jboss.xml</i></b> files..<![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p> <pre><span lang=EN-IE style='mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span></span><span lang=EN-IE style='font-family: "Courier New";mso-ansi-language:EN-IE'><!-- PERSON ENTITY BEAN --> </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><delete file="${work}/META-INF/ejb-jar.xml"/> <span style="mso-spacerun: yes"> </span><delete file="${work}/META-INF/jboss.xml"/> <span style="mso-spacerun: yes"> </span><copyfile src="${work}/${webstore.ejbs}/person/META-INF/ejb-jar.xml" <span style="mso-spacerun: yes"> </span>dest="${work}/META-INF/ejb-jar.xml"/> </span><span lang=EN-IE style='font-family:"Courier New"; color:red;mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><copyfile src="${work}/${webstore.ejbs}/person/META-INF/jboss.xml" <span style="mso-spacerun: yes"> </span>dest="${work}/META-INF/jboss.xml"/> </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><jar jarfile="${jboss.ejbeans}/personentity.jar" <span style="mso-spacerun: yes"> </span>basedir="${work}" <span style="mso-spacerun: yes"> </span>includes="${webstore.ejbs}/person/*.class, <span style="mso-spacerun: yes"> </span>${webstore.ejbs}/common/*.class, <span style="mso-spacerun: yes"> </span>META-INF/*"/> <span style="mso-spacerun: yes"> </span><o:p></o:p></span></pre> <pre><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><!-- PRODUCT ENTITY BEAN --> <span style="mso-spacerun: yes"> </span><delete file="${work}/META-INF/ejb-jar.xml"/> <span style="mso-spacerun: yes"> </span><delete file="${work}/META-INF/jboss.xml"/> <span style="mso-spacerun: yes"> </span><copyfile src="${work}/${webstore.ejbs}/product/META-INF/ejb-jar.xml" <span style="mso-spacerun: yes"> </span>dest="${work}/META-INF/ejb-jar.xml"/> </span><span lang=EN-IE style='font-family:"Courier New"; color:red;mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><copyfile src="${work}/${webstore.ejbs}/product/META-INF/jboss.xml" <span style="mso-spacerun: yes"> </span>dest="${work}/META-INF/jboss.xml"/> </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span><jar jarfile="${jboss.ejbeans}/productentity.jar" <span style="mso-spacerun: yes"> </span>basedir="${work}" <span style="mso-spacerun: yes"> </span>includes="${webstore.ejbs}/product/*.class, <span style="mso-spacerun: yes"> </span>${webstore.ejbs}/common/*.class, <span style="mso-spacerun: yes"> </span>META-INF/*"/> </span><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></pre> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Changes to the Servlets<o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> If the file JNDIContext.java I added a url and port number<o:p></o:p></span></p> <pre><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <span style="mso-spacerun: yes"> </span></span><span lang=EN-IE style='font-family: "Courier New";mso-ansi-language:EN-IE'>public InitialContext getInitialContext() { </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span>InitialContext ic =<span style="mso-spacerun: yes"> </span>null; <![if !supportEmptyParas]> <span style="mso-spacerun: yes"> </span>try { <span style="mso-spacerun: yes"> </span>Hashtable h = new Hashtable(); <span style="mso-spacerun: yes"> </span>h.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); </span><span lang=EN-IE style='font-family:"Courier New"; color:red;mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span>h.put(Context.PROVIDER_URL, "127.0.0.1:1099" ); <span style="mso-spacerun: yes"> </span>h.put(Context.URL_PKG_PREFIXES, "org.jnp.interfaces" ); </span><span lang=EN-IE style='font-family:"Courier New"; mso-ansi-language:EN-IE'><span style="mso-spacerun: yes"> </span>ic = new InitialContext(h); <span style="mso-spacerun: yes"> </span>} catch (Exception e) { <span style="mso-spacerun: yes"> </span>e.printStackTrace(); <span style="mso-spacerun: yes"> </span>} <span style="mso-spacerun: yes"> </span>return ic; <span style="mso-spacerun: yes"> </span>}<o:p></o:p></span></pre> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></h3> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Finders<o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>The findProductsByPrice finder does not seem to be used anywhere.<o:p></o:p></span></p> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p><![endif]><o:p></o:p></span></p> <h3><span lang=EN-IE style='mso-ansi-language:EN-IE'>Comments<o:p></o:p></span></h3> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>Some of the comments in the finder methods referred to the incorrect finders, I changed any such comments.<o:p></o:p></span></p> <p> </p> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'>Luan O�Carroll<a href="mailto:[EMAIL PROTECTED]"><br> mailto:[EMAIL PROTECTED]</a><br> 24-Aug-2000<o:p></o:p></span></p> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p> <p><span lang=EN-IE style='mso-ansi-language:EN-IE'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p> </div> </body> </html>
