User: salborini
  Date: 00/11/15 17:32:45

  Modified:    jetty/src/main/org/jboss/jetty JettyService.java
  Log:
  - don't use JETTY_HOME anymore.  Guess it from the classpath
  - load properties (sax parser) from jetty.properties
  
  Revision  Changes    Path
  1.4       +31 -10    contrib/jetty/src/main/org/jboss/jetty/JettyService.java
  
  Index: JettyService.java
  ===================================================================
  RCS file: 
/products/cvs/ejboss/contrib/jetty/src/main/org/jboss/jetty/JettyService.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- JettyService.java 2000/11/15 23:19:00     1.3
  +++ JettyService.java 2000/11/16 01:32:45     1.4
  @@ -8,6 +8,9 @@
   package org.jboss.jetty;
   
   import java.net.URL;
  +import java.io.File;
  +import java.io.InputStream;
  +import java.io.IOException;
   import java.util.Hashtable;
   
   import javax.management.*;
  @@ -27,7 +30,7 @@
    *      
    *   @see <related>
    *   @author <a href="mailto:[EMAIL PROTECTED]">Julian Gosnell</a>
  - *   @version $Revision: 1.3 $
  + *   @version $Revision: 1.4 $
    */
   public class JettyService extends ServiceMBeanSupport
     implements JettyServiceMBean, MBeanRegistration
  @@ -51,19 +54,37 @@
       try
       {
         // get hold of JETTY_HOME...
  -      _home = System.getProperty("jetty.home");
  -      if (_home == null)
  -      {
  -     Logger.log("failed");
  -     Logger.log("System property jetty.home not found. Be sure to set JETTY_HOME to 
the home of Jetty 3+");
  -     throw new Exception("start failed");
  -      }                         
  -                     
  +      Class jettyClass;
  +      try {      
  +         jettyClass = Class.forName("com.mortbay.HTTP.HttpServer");
  +         
  +      } catch (Exception e) {
  +         
  +         Logger.log("failed");
  +         Logger.log("Jetty not found.  You need jetty 3+");
  +         throw new Exception("start failed");
  +      }
  +               
  +      URL jettyUrl = jettyClass.getProtectionDomain().getCodeSource().getLocation();
  +      _home = new File(new File(jettyUrl.getFile()).getParent()).getParent();
  +      System.setProperty("jetty.home", _home);
  +      
         // connect Jetty and JBoss log models...
         try{_logSink.initialize(_log);}catch(Exception e){e.printStackTrace();}
         _logSink.start();
         com.mortbay.Util.Log.instance().add(_logSink);
         
  +      // load properties  (xml parser)
  +      InputStream propertiesIn = 
getClass().getClassLoader().getResourceAsStream("jetty.properties");
  +
  +      if ( propertiesIn == null ) {
  +
  +          throw new IOException("jetty.properties missing");
  +      }
  +
  +      System.getProperties().load(propertiesIn);
  +
  +      
         try
         {
        // start a Jetty...
  @@ -163,7 +184,7 @@
         String warDir=warUrl+(warUrl.endsWith("/")?"":"/");
         // give Jetty it's correct default resource file - should be parameterised...
         String defaultResource=_home+"/etc/webdefault.xml";
  -
  +      
         System.out.println("About to deploy - "+contextPath+" maps to "+warDir);
         WebApplicationContext app = _server.addWebApplication(contextPath,
                                                            warDir,
  
  
  

Reply via email to