Author: dain
Date: Sat Sep 22 13:44:48 2007
New Revision: 578493

URL: http://svn.apache.org/viewvc?rev=578493&view=rev
Log:
Merging 577071 from trunk
Ported Tomcat integration web app from 1.x

Added:
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/default.css
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/default.css
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/ejbclasses.html
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/ejbclasses.html
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/ejbref.html
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/ejbref.html
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/enc-help.html
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/enc-help.html
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/howitworks.html
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/howitworks.html
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/
      - copied from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/JavaCup.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/JavaCup.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/TreeClosed.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/TreeClosed.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/TreeOpen.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/TreeOpen.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/dotTrans.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/dotTrans.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/ejb.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/ejb.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/line_light.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/line_light.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/line_sm.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/line_sm.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/logo_ejb2.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/logo_ejb2.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/pepper.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/pepper.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/stripe105.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/stripe105.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/stripes1.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/stripes1.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/top_2.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/top_2.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/images/top_3.gif
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/images/top_3.gif
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/index.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/index.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/installer-view.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/installer-view.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/invokeobj.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/invokeobj.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/re-help.html
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/re-help.html
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/testejb.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/testejb.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/testhome.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/testhome.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/testint.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/testint.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/testsuite.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/testsuite.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/viewclass.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/viewclass.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/viewejb.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/viewejb.jsp
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/viewjndi.jsp
      - copied unchanged from r578481, 
openejb/trunk/openejb3/assembly/openejb-tomcat/src/main/resources/viewjndi.jsp
Removed:
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/resources/index.html
Modified:
    openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/InstallerServlet.java
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Paths.java
    
openejb/branches/3.0-beta-1/container/openejb-loader/src/main/java/org/apache/openejb/loader/OpenEJBListener.java

Modified: openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml?rev=578493&r1=578492&r2=578493&view=diff
==============================================================================
--- openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml (original)
+++ openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml Sat Sep 22 
13:44:48 2007
@@ -66,7 +66,6 @@
       <j:set var="tomcat.home" 
value="${targetDir}/${tomcat.prefix}-tomcat-${tomcat.version}"/>
       <j:set var="tomcat.lib" value="${tomcat.home}/${tomcat.server.lib}"/>
       <j:set var="tomcat.webapps" 
value="${tomcat.home}/${tomcat.server.webapps}"/>
-      <j:set var="openejb.home" 
value="${targetDir}/openejb-${openejb.version}" />
     </goal>
 
     <!--======================-->
@@ -80,7 +79,6 @@
       <j:set var="tomcat.src" 
value="${maven.repo.local}/tomcat/distributions/${tomcat.prefix}-tomcat-${tomcat.version}.zip"/>
       <j:set var="tomcat.dist" 
value="${maven.repo.local}/tomcat/distributions/${tomcat.prefix}-tomcat-${tomcat.version}.zip"/>
       <j:set var="tomcat.home" 
value="${targetDir}/${tomcat.prefix}-tomcat-${tomcat.version}"/>
-      <j:set var="openejb.home" 
value="${targetDir}/openejb-${openejb.version}" />
 
       <!-- Download tomcat if it isn't in the repo -->
       <u:file var="fileAsFile" name="${tomcat.dist}"/>
@@ -148,15 +146,15 @@
       <j:choose>
         <j:when test="${systemScope['os.name'].startsWith('Windows')}">
           <exec executable="${tomcat.home}/bin/startup.bat" os="Windows 
NT,Windows 2000,Windows XP">
-            <!--<env key="JAVA_OPTS" value="-Dopenejb.home=${openejb.home} 
-Xdebug -Xnoagent -Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-javaagent:${tomcat.webapps}\openejb\lib\openejb-javaagent-${openejb.version}.jar
 -Dcom.sun.management.jmxremote"/>-->
-            <env key="JAVA_OPTS" value="-Dopenejb.home=${openejb.home} -Xdebug 
-Xnoagent -Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-Dcom.sun.management.jmxremote"/>
+            <!--<env key="JAVA_OPTS" value="-Xdebug -Xnoagent 
-Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-javaagent:${tomcat.webapps}\openejb\lib\openejb-javaagent-${openejb.version}.jar
 -Dcom.sun.management.jmxremote"/>-->
+            <env key="JAVA_OPTS" value="-Xdebug -Xnoagent -Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-Dcom.sun.management.jmxremote"/>
             <env key="CATALINA_HOME" value="${tomcat.home}"/>
           </exec>
         </j:when>
         <j:otherwise>
           <exec executable="${tomcat.home}/bin/startup.sh">
-            <!--<env key="JAVA_OPTS" value="-Dopenejb.home=${openejb.home} 
-Xdebug -Xnoagent -Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-javaagent:${tomcat.webapps}/openejb/lib/openejb-javaagent-${openejb.version}.jar
 -Dcom.sun.management.jmxremote"/>-->
-            <env key="JAVA_OPTS" value="-Dopenejb.home=${openejb.home} -Xdebug 
-Xnoagent -Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-Dcom.sun.management.jmxremote"/>
+            <!--<env key="JAVA_OPTS" value="-Xdebug -Xnoagent 
-Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-javaagent:${tomcat.webapps}/openejb/lib/openejb-javaagent-${openejb.version}.jar
 -Dcom.sun.management.jmxremote"/>-->
+            <env key="JAVA_OPTS" value="-Xdebug -Xnoagent -Djava.compiler=NONE 
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 
-Dcom.sun.management.jmxremote"/>
           </exec>
         </j:otherwise>
       </j:choose>
@@ -241,7 +239,7 @@
       <attainGoal name="setup:itests-war"/>
       <attainGoal name="start:tomcat"/>
       <java 
jar="target/openejb-itests-standalone-client-${openejb.version}.jar" fork="yes">
-        <sysproperty key="openejb.home" 
value="target/openejb-${openejb.version}"/>
+        <!--<sysproperty key="openejb.home" 
value="target/openejb-${openejb.version}"/>-->
         <sysproperty key="tomcat.home" value="${tomcat.home}"/>
           <sysproperty key="remote.servlet.url" 
value="http://127.0.0.1:8080/openejb/remote"/>
         <arg value="tomcat"/>
@@ -251,7 +249,7 @@
 
     <goal name="test:client">
       <java 
jar="target/openejb-itests-standalone-client-${openejb.version}.jar" fork="yes">
-        <sysproperty key="openejb.home" 
value="target/openejb-${openejb.version}"/>
+        <!--<sysproperty key="openejb.home" 
value="target/openejb-${openejb.version}"/>-->
         <sysproperty key="tomcat.home" value="${tomcat.home}"/>
         <sysproperty key="remote.servlet.url" 
value="http://127.0.0.1:8080/openejb/remote"/>
         <arg value="tomcat"/>

Modified: 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Installer.java?rev=578493&r1=578492&r2=578493&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
 (original)
+++ 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
 Sat Sep 22 13:44:48 2007
@@ -67,6 +67,15 @@
         }
     }
 
+
+    public boolean isListenerInstalled() {
+        return listenerInstalled;
+    }
+
+    public boolean isAgentInstalled() {
+        return agentInstalled;
+    }
+
     public Status getStatus() {
         return status;
     }
@@ -85,7 +94,7 @@
 
     private void installListener() {
         if (listenerInstalled) {
-            addInfo("OpenEJB Listener already installed");
+//            addInfo("OpenEJB Listener already installed");
             return;
         }
 
@@ -97,7 +106,7 @@
             if (paths.getOpenEJBLoaderJar().length() != destination.length()) {
                 // md5 diff the files
             } else {
-                addInfo("OpenEJB loader jar already installed in Tomcat lib 
directory.");
+//                addInfo("OpenEJB loader jar already installed in Tomcat lib 
directory.");
                 copyOpenEJBLoader = false;
             }
         }
@@ -105,7 +114,7 @@
         if (copyOpenEJBLoader) {
             try {
                 copyFile(paths.getOpenEJBLoaderJar(), destination);
-                addInfo("Coppied " + paths.getOpenEJBLoaderJar().getName() + " 
to the Tomcat lib directory.");
+                addInfo("Copy " + paths.getOpenEJBLoaderJar().getName() + " to 
lib");
             } catch (IOException e) {
                 addError("Unable to copy OpenEJB loader jar to Tomcat lib 
directory.  This will need to be performed manually.", e);
             }
@@ -121,7 +130,7 @@
 
         // does the server.xml contain our listener name... it is possible 
that they commented out our listener, but that would be a PITA to detect
         if 
(serverXmlOriginal.contains("org.apache.openejb.loader.OpenEJBListener")) {
-            addInfo("OpenEJB Listener already declared in Tomcat server.xml 
file.");
+            addWarning("OpenEJB Listener already declared in Tomcat server.xml 
file.");
             return;
         }
 
@@ -146,13 +155,13 @@
 
         // overwrite server.xml
         if (writeAll(paths.getServerXmlFile(), newServerXml)) {
-            addInfo("Added OpenEJB listener to Tomcat server.xml file.");
+            addInfo("Add OpenEJB listener to server.xml");
         }
     }
 
     private void installJavaagent() {
         if (agentInstalled) {
-            addInfo("OpenEJB Agent already installed");
+//            addInfo("OpenEJB Agent already installed");
             return;
         }
 
@@ -170,7 +179,7 @@
 
         // does the catalina sh contain our comment... it is possible that 
they commented out the magic script code, but there is no way to detect that
         if (catalinaShOriginal.contains("Add OpenEJB javaagent")) {
-            addInfo("OpenEJB javaagent already declared in Tomcat catalina.sh 
file.");
+            addWarning("OpenEJB javaagent already declared in Tomcat 
catalina.sh file.");
             return;
         }
 
@@ -197,7 +206,7 @@
 
         // overwrite the catalina.sh file
         if (writeAll(paths.getCatalinaShFile(), newCatalinaSh)) {
-            addInfo("Added OpenEJB javaagent to Tomcat catalina.sh file.");
+            addInfo("Add OpenEJB JavaAgent to catalina.sh");
         }
 
         //
@@ -214,7 +223,7 @@
 
         // does the catalina bat contain our comment... it is possible that 
they commented out the magic script code, but there is no way to detect that
         if (catalinaBatOriginal.contains("Add OpenEJB javaagent")) {
-            addInfo("OpenEJB javaagent already declared in Tomcat catalina.bat 
file.");
+            addWarning("OpenEJB javaagent already declared in Tomcat 
catalina.bat file.");
             return;
         }
 
@@ -241,7 +250,8 @@
 
         // overwrite the catalina.bat file
         if (writeAll(paths.getCatalinaBatFile(), newCatalinaBat)) {
-            addInfo("Added OpenEJB javaagent to Tomcat catalina.bat file.");
+            addInfo("Add OpenEJB JavaAgent to catalina.bat");
+//            addInfo("Added OpenEJB javaagent to Tomcat catalina.bat file.");
         }
     }
 
@@ -266,7 +276,7 @@
             String openEjbXml = readEntry(coreJar, "default.openejb.conf");
             if (openEjbXml != null) {
                 if (writeAll(openEjbXmlFile, openEjbXml)) {
-                    addInfo("Added openejb.xml to Tomcat conf directory.");
+                    addInfo("Copy openejb.xml to conf");
                 }
             }
         }
@@ -300,7 +310,7 @@
             }
             if (newLoggingProps != null) {
                 if (writeAll(loggingPropsFile, newLoggingProps)) {
-                    addInfo("Added OpenEJB logging configuration to Tomcat 
logging.properties file.");
+                    addInfo("Append OpenEJB config to logging.properties");
                 }
             }
         }
@@ -471,6 +481,12 @@
             String result = begin + token + end;
             return result;
         }
+    }
+
+    public void reset() {
+        errors.clear();
+        warnings.clear();
+        infos.clear();
     }
 
     public boolean hasErrors() {

Modified: 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/InstallerServlet.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/InstallerServlet.java?rev=578493&r1=578492&r2=578493&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/InstallerServlet.java
 (original)
+++ 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/InstallerServlet.java
 Sat Sep 22 13:44:48 2007
@@ -17,18 +17,15 @@
  */
 package org.apache.openejb.tomcat.installer;
 
-import static org.apache.openejb.tomcat.installer.Installer.Status.INSTALLED;
-import static 
org.apache.openejb.tomcat.installer.Installer.Status.REBOOT_REQUIRED;
 import static org.apache.openejb.tomcat.installer.Installer.Status.NONE;
 
 import javax.servlet.ServletConfig;
 import javax.servlet.ServletException;
-import javax.servlet.ServletOutputStream;
+import javax.servlet.RequestDispatcher;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
-import java.io.File;
 
 /**
  * Installs OpenEJB into Tomcat.
@@ -39,8 +36,10 @@
     protected Paths paths;
     protected Installer installer;
     protected int attempts;
+    private ServletConfig servletConfig;
 
     public void init(ServletConfig servletConfig) throws ServletException {
+        this.servletConfig = servletConfig;
         paths = new Paths(servletConfig.getServletContext());
         installer = new Installer(paths);
     }
@@ -55,10 +54,14 @@
 
     protected void doIt(HttpServletRequest req, HttpServletResponse res) 
throws ServletException, IOException {
         // if they clicked the install button...
-        if ("install".equals(req.getParameter("action"))) {
+        if ("install".equalsIgnoreCase(req.getParameter("action"))) {
             // If not already installed, try to install
             if (installer.getStatus() == NONE) {
                 attempts++;
+
+                paths.reset();
+                installer.reset();
+
                 paths.setCatalinaHomeDir(req.getParameter("catalinaHome"));
                 paths.setCatalinaBaseDir(req.getParameter("catalinaBase"));
                 paths.setServerXmlFile(req.getParameter("serverXml"));
@@ -70,92 +73,12 @@
 
             // send redirect to avoid double post lameness
             res.sendRedirect(req.getRequestURI());
-        }
-
-        res.setHeader("Pragma", "No-cache");
-        res.setHeader("Cache-Control", "no-cache");
-        res.setDateHeader("Expires", 1);
-        res.setContentType("text/html");
-
-        ServletOutputStream out = res.getOutputStream();
-        out.println("<html>");
-        out.println("<head>");
-        out.println("<meta HTTP-EQUIV='Pragma' content='no-cache'>");
-        out.println("<meta HTTP-EQUIV='Expires' content='-1'>");
-        out.println("<title>OpenEJB Installer for Tomcat</title>");
-        out.println("</head>");
-        out.println("<body>");
-
-        // Is OpenEJB already installed?
-        if (installer.getStatus() == INSTALLED) {
-            out.println("<h1>INSTALLATION SUCCESSFUL!</h1>");
-        } else if (installer.getStatus() == REBOOT_REQUIRED) {
-            out.println("<h1>Installation Complete.  REBOOT REQUIRED</h1>");
-
-            if (installer.hasWarnings()) {
-                out.println("<h3>Warnings:</h3>");
-                for (String warning : installer.getWarnings()) {
-                    out.println(warning + "<br>");
-                }
-            }
-            if (installer.hasInfos()) {
-                out.println("<h3>Info:</h3>");
-                for (String info : installer.getInfos()) {
-                    out.println(info + "<br>");
-                }
-            }
         } else {
-            // Not installed
 
-            // Did an installation fail?
-            if (paths.hasErrors()) {
-                out.println("<h1>Installation Failed</h1>");
-                for (String error : paths.getErrors()) {
-                    out.println(error + "<br>");
-                }
-            } else if (installer.hasErrors()) {
-                out.println("<h1>Installation Failed</h1>");
-                for (String error : installer.getErrors()) {
-                    out.println(error + "<br>");
-                }
-            }
-
-            // write the for either way
-            writeInstallerForm(req, out);
-        }
-
-        out.println("</body>");
-        out.println("</html>");
-    }
-
-    private void writeInstallerForm(HttpServletRequest req, 
ServletOutputStream out) throws IOException {
-        // if we have tried once (and failed) add more text
-        if (attempts > 0) {
-            out.println("<h1>Try Again?</h1>");
+            req.setAttribute("installer", installer);
+            req.setAttribute("paths", paths);
+            RequestDispatcher rd = 
servletConfig.getServletContext().getRequestDispatcher("/installer-view.jsp");
+            rd.forward(req,res);
         }
-
-        out.println("<form action='" + req.getRequestURI() + "' 
method='post'>");
-
-        out.println("Catalina Home:");
-        out.println("<input type='text' size='100' name='catalinaHome' 
value='" + safeGetAbsolutePath(paths.getCatalinaHomeDir()) + "'>");
-        out.println("<br>");
-
-        out.println("Catalina Base:");
-        out.println("<input type='text' size='100' name='catalinaBase' 
value='" + safeGetAbsolutePath(paths.getCatalinaBaseDir()) + "'>");
-        out.println("<br>");
-
-        out.println("Catalina server.xml:");
-        out.println("<input type='text' size='100' name='serverXml' value='" + 
safeGetAbsolutePath(paths.getServerXmlFile()) + "'>");
-        out.println("<br>");
-
-        out.println("<input type='submit' name='action' value='install'>");
-        
-        out.println("</form>");
-
-    }
-
-    private String safeGetAbsolutePath(File file) {
-        if (file == null) return "";
-        return file.getAbsolutePath();
     }
 }

Modified: 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Paths.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Paths.java?rev=578493&r1=578492&r2=578493&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Paths.java
 (original)
+++ 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/installer/Paths.java
 Sat Sep 22 13:44:48 2007
@@ -215,65 +215,74 @@
         return !hasErrors();
     }
 
+    public void reset() {
+        errors.clear();
+    }
+    
     public boolean hasErrors() {
         return !errors.isEmpty();
     }
 
-
     public List<String> getErrors() {
         return errors;
     }
 
     private void addError(String message) {
-        System.out.println(message);
+        errors.add(message);
     }
 
-    private void verifyDirectory(String description, File file) {
+    private boolean verifyDirectory(String description, File file) {
         if (file == null) {
             // ignore... files are built up based on other files, and probles
             // with the root files will have been logged else where
-            return;
+            return false;
         }
         if (!file.exists()) {
             addError(description + " directory does not exist");
-            return;
+            return false;
         }
         if (!file.isDirectory()) {
             addError(description + " directory is not a directory");
-            return;
+            return false;
         }
         if (!file.canRead()) {
             addError(description + " directory is not readable");
+            return false;
         }
+        return true;
     }
 
     private void verifyWritableDirectory(String description, File file) {
-        verifyDirectory(description, file);
-        verifyWritable(description, file);
+        if (verifyDirectory(description, file)) {
+            verifyWritable(description, file);
+        }
     }
 
-    private void verifyFile(String description, File file) {
+    private boolean verifyFile(String description, File file) {
         if (file == null) {
             // ignore... files are built up based on other files, and probles
             // with the root files will have been logged else where
-            return;
+            return false;
         }
         if (!file.exists()) {
             addError(description + " file does not exist");
-            return;
+            return false;
         }
         if (!file.isFile()) {
             addError(description + " file is not a file");
-            return;
+            return false;
         }
         if (!file.canRead()) {
             addError(description + " file is not readable");
+            return false;
         }
+        return true;
     }
 
     private void verifyWritableFile(String description, File file) {
-        verifyFile(description, file);
-        verifyWritable(description, file);
+        if (verifyFile(description, file)) {
+            verifyWritable(description, file);
+        }
     }
 
     private void verifyWritable(String description, File file) {

Modified: 
openejb/branches/3.0-beta-1/container/openejb-loader/src/main/java/org/apache/openejb/loader/OpenEJBListener.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/container/openejb-loader/src/main/java/org/apache/openejb/loader/OpenEJBListener.java?rev=578493&r1=578492&r2=578493&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/container/openejb-loader/src/main/java/org/apache/openejb/loader/OpenEJBListener.java
 (original)
+++ 
openejb/branches/3.0-beta-1/container/openejb-loader/src/main/java/org/apache/openejb/loader/OpenEJBListener.java
 Sat Sep 22 13:44:48 2007
@@ -57,8 +57,10 @@
             File libDir = new File(webappDir, "lib");
             String catalinaHome = System.getProperty("catalina.home");
             properties.setProperty("openejb.home", catalinaHome);
+            System.setProperty("openejb.home", catalinaHome);
             String catalinaBase = System.getProperty("catalina.base");
             properties.setProperty("openejb.base", catalinaBase);
+            System.setProperty("openejb.base", catalinaBase);
             String libPath = libDir.getAbsolutePath();
             properties.setProperty("openejb.libs", libPath);
 


Reply via email to