dblevins    2005/08/26 17:55:27

  Modified:    modules/core/src/java/org/openejb/loader LoaderServlet.java
  Log:

  Put in several more defaults for the one-openejb-per-webapp support (aka, 
collapsed ear support)
  
  Revision  Changes    Path
  1.6       +17 -4     
openejb1/modules/core/src/java/org/openejb/loader/LoaderServlet.java
  
  Index: LoaderServlet.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb1/modules/core/src/java/org/openejb/loader/LoaderServlet.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- LoaderServlet.java        12 Jul 2005 23:51:16 -0000      1.5
  +++ LoaderServlet.java        26 Aug 2005 21:55:27 -0000      1.6
  @@ -78,9 +78,16 @@
           }
   
           String loader = p.getProperty("openejb.loader"); // Default loader 
set above
  -        if (loader.endsWith("tomcat-webapp") && 
p.getProperty("openejb.base") == null) {
  +        if (loader.endsWith("tomcat-webapp")) {
               ServletContext ctx = config.getServletContext();
  -            p.setProperty("openejb.base", ctx.getRealPath("WEB-INF"));
  +            File webInf = new File(ctx.getRealPath("WEB-INF"));
  +            File webapp = webInf.getParentFile();
  +            String webappPath = webapp.getAbsolutePath();
  +
  +            setPropertyIfNUll(p, "openejb.base", webappPath);
  +            setPropertyIfNUll(p, "openejb.configuration", 
"META-INF/openejb.xml");
  +            setPropertyIfNUll(p, "openejb.container.decorators", 
"org.openejb.core.TomcatJndiSupport");
  +            setPropertyIfNUll(p, "log4j.configuration", 
"META-INF/log4j.properties");
           }
   
           try {
  @@ -98,5 +105,11 @@
           openejb.init(properties);
       }
   
  +    private Object setPropertyIfNUll(Properties properties, String key, 
String value){
  +        String currentValue = properties.getProperty(key);
  +        if (currentValue == null){
  +            properties.setProperty(key, value);
  +        }
  +        return currentValue;
  +    }
   }
  -
  
  
  

Reply via email to