User: janb    
  Date: 02/02/23 21:08:29

  Modified:    jetty/src/main/org/jboss/jetty
                        JBossWebApplicationContext.java Jetty.java
                        JettyService.java JettyServiceMBean.java
  Log:
  Added support for choice of Servlet2.3 or Java2 compliance for class loading 
delegation.
  
  Revision  Changes    Path
  1.28      +8 -12     
contrib/jetty/src/main/org/jboss/jetty/JBossWebApplicationContext.java
  
  Index: JBossWebApplicationContext.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/JBossWebApplicationContext.java,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- JBossWebApplicationContext.java   21 Feb 2002 02:03:57 -0000      1.27
  +++ JBossWebApplicationContext.java   24 Feb 2002 05:08:29 -0000      1.28
  @@ -5,7 +5,7 @@
    * See terms of license at gnu.org.
    */
   
  -// $Id: JBossWebApplicationContext.java,v 1.27 2002/02/21 02:03:57 jules_gosnell 
Exp $
  +// $Id: JBossWebApplicationContext.java,v 1.28 2002/02/24 05:08:29 janb Exp $
   
   // A Jetty HttpServer with the interface expected by JBoss'
   // J2EEDeployer...
  @@ -52,11 +52,7 @@
                               WebDescriptorParser descriptorParser,
                               WebApplication webApp,
                               DocumentBuilder parser,
  -                            String warUrl,
  -                            String storageStrategy,
  -                            String snapshotFrequency,
  -                            String notificationPolicy,
  -                            String subjAttrName)
  +                            String warUrl)
       throws java.io.IOException
       {
   
  @@ -67,13 +63,13 @@
         _descriptorParser = descriptorParser;
         _webApp           = webApp;
         _parser           = parser;
  -      _subjAttrName     = subjAttrName;
  -
  +      _subjAttrName     = jetty.getSubjectAttributeName();
  +                     
         getServletHandler().
        setSessionManager(new DistributedHttpSessionManager(this,
  -                                                         storageStrategy,
  -                                                         snapshotFrequency,
  -                                                         notificationPolicy));
  +                                                            
jetty.getHttpSessionStorageStrategy(),
  +                                                            
jetty.getHttpSessionSnapshotFrequency(),
  +                                                         
jetty.getHttpSessionSnapshotNotificationPolicy()));
       }
   
     /* ------------------------------------------------------------ */
  @@ -162,7 +158,7 @@
   
         ClassLoader _loader=getClassLoader();
         if (_loader instanceof org.mortbay.http.ContextLoader)
  -     ((org.mortbay.http.ContextLoader)_loader).setJava2Compliant(true);
  +          
((org.mortbay.http.ContextLoader)_loader).setJava2Compliant(_jetty.getJava2ClassLoadingCompliance());
       }
   
     String _separator=System.getProperty("path.separator");
  
  
  
  1.41      +28 -7     contrib/jetty/src/main/org/jboss/jetty/Jetty.java
  
  Index: Jetty.java
  ===================================================================
  RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/Jetty.java,v
  retrieving revision 1.40
  retrieving revision 1.41
  diff -u -r1.40 -r1.41
  --- Jetty.java        21 Feb 2002 02:03:57 -0000      1.40
  +++ Jetty.java        24 Feb 2002 05:08:29 -0000      1.41
  @@ -5,7 +5,7 @@
    * See terms of license at gnu.org.
    */
   
  -// $Id: Jetty.java,v 1.40 2002/02/21 02:03:57 jules_gosnell Exp $
  +// $Id: Jetty.java,v 1.41 2002/02/24 05:08:29 janb Exp $
   
   // A Jetty HttpServer with the interface expected by JBoss'
   // J2EEDeployer...
  @@ -44,7 +44,7 @@
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Julian Gosnell</a>
    * @author  <a href="mailto:[EMAIL PROTECTED]";>Andreas Schaefer</a>.
  - * @version $Revision: 1.40 $
  + * @version $Revision: 1.41 $
    *
    * <p><b>Revisions:</b>
    *
  @@ -111,6 +111,31 @@
         _log.warn("JSP compilation requires $JAVA_HOME/lib/tools.jar on your 
JBOSS_CLASSPATH");
     }
   
  +   
  +    
  +    //----------------------------------------
  +    // class loader delegation policy property
  +    //----------------------------------------
  +     boolean _loaderCompliance = true;
  +    /** 
  +     * @param loaderCompliance if true, Jetty delegates class loading
  +     *to parent class loader first, false implies servlet spec 2.3 compliance
  +     */
  +    public synchronized void setJava2ClassLoadingCompliance (boolean 
loaderCompliance)
  +    {
  +        _loaderCompliance = loaderCompliance;
  +    }
  +
  +    /** 
  +     * @return true if Java2 style class loading delegation, false if
  +     *servlet2.3 spec compliance
  +     */
  +    public synchronized boolean getJava2ClassLoadingCompliance ()
  +    {
  +        return _loaderCompliance;
  +    }
  +    
  +    
   
     //----------------------------------------
     // unpackWars property
  @@ -365,11 +390,7 @@
         WebApplicationContext app=
        new JBossWebApplicationContext(this, contextPath,
                                       descriptorParser, wa, _parser,
  -                                    fixedWarUrl,
  -                                    getHttpSessionStorageStrategy(),
  -                                    getHttpSessionSnapshotFrequency(),
  -                                    getHttpSessionSnapshotNotificationPolicy(),
  -                                    getSubjectAttributeName());
  +                                    fixedWarUrl);
   
   
         // configure whether the context is to flatten the classes in
  
  
  
  1.52      +40 -2     contrib/jetty/src/main/org/jboss/jetty/JettyService.java
  
  Index: JettyService.java
  ===================================================================
  RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/JettyService.java,v
  retrieving revision 1.51
  retrieving revision 1.52
  diff -u -r1.51 -r1.52
  --- JettyService.java 21 Feb 2002 02:03:57 -0000      1.51
  +++ JettyService.java 24 Feb 2002 05:08:29 -0000      1.52
  @@ -5,7 +5,7 @@
    * See terms of license at gnu.org.
    */
   
  -// $Id: JettyService.java,v 1.51 2002/02/21 02:03:57 jules_gosnell Exp $
  +// $Id: JettyService.java,v 1.52 2002/02/24 05:08:29 janb Exp $
   
   //------------------------------------------------------------------------------
   
  @@ -38,7 +38,7 @@
    * A service to launch jetty from JMX.
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Julian Gosnell</a>
  - * @version $Revision: 1.51 $
  + * @version $Revision: 1.52 $
    */
   
   public class JettyService
  @@ -140,6 +140,7 @@
       Jetty tmp = new Jetty(this);
       tmp.setWebDefault(getWebDefault());
       tmp.setUnpackWars(getUnpackWars());
  +    tmp.setJava2ClassLoadingCompliance(getJava2ClassLoadingCompliance());
       tmp.setHttpSessionStorageStrategy(getHttpSessionStorageStrategy());
       tmp.setHttpSessionSnapshotFrequency(getHttpSessionSnapshotFrequency());
       
tmp.setHttpSessionSnapshotNotificationPolicy(getHttpSessionSnapshotNotificationPolicy());
  @@ -349,6 +350,43 @@
       _publishMBeans=publishMBeans;
     }
   
  +
  +
  +
  +
  +
  +      //----------------------------------------
  +    // class loader delegation policy property
  +    //----------------------------------------
  +     boolean _loaderCompliance = true;
  +    /** 
  +     * @param loaderCompliance if true, Jetty delegates class loading
  +     *to parent class loader first, false implies servlet spec 2.3 compliance
  +     */
  +    public  void setJava2ClassLoadingCompliance (boolean loaderCompliance)
  +    {
  +        
  +        _log.info("set Java2 class loader compliance to "+ loaderCompliance);
  +        
  +        if (isInitialised())
  +            _jetty.setJava2ClassLoadingCompliance(loaderCompliance);
  +        else
  +            _loaderCompliance = loaderCompliance;
  +    }
  +
  +    /** 
  +     * @return true if Java2 style class loading delegation, false if
  +     *servlet2.3 spec compliance
  +     */
  +    public  boolean getJava2ClassLoadingCompliance()
  +    {
  +        if (isInitialised())
  +            return _jetty.getJava2ClassLoadingCompliance();
  +        else
  +            return _loaderCompliance;
  +    }
  +    
  +    
     //----------------------------------------------------------------------------
   
     protected boolean _unpackWars=false;
  
  
  
  1.17      +7 -2      contrib/jetty/src/main/org/jboss/jetty/JettyServiceMBean.java
  
  Index: JettyServiceMBean.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/JettyServiceMBean.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- JettyServiceMBean.java    20 Feb 2002 05:37:24 -0000      1.16
  +++ JettyServiceMBean.java    24 Feb 2002 05:08:29 -0000      1.17
  @@ -19,7 +19,7 @@
    * ???
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Sebastien Alborini</a>
  - * @version $Revision: 1.16 $
  + * @version $Revision: 1.17 $
    */
   public interface JettyServiceMBean
      extends org.jboss.web.AbstractWebContainerMBean
  @@ -49,5 +49,10 @@
   
   
      String getSubjectAttributeName();
  -   void setSubjectAttributeName(String subjectAttributeName);
  +    void setSubjectAttributeName(String subjectAttributeName);
  +
  +    boolean getJava2ClassLoadingCompliance ();
  +
  +    void setJava2ClassLoadingCompliance(boolean compliance);
  +    
   }
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to