[jboss-cvs] JBossAS SVN: r96672 - in projects/metadata/web/trunk/src: main/java/org/jboss/metadata/web/spec and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Nov 20 22:48:20 EST 2009


Author: remy.maucherat at jboss.com
Date: 2009-11-20 22:48:20 -0500 (Fri, 20 Nov 2009)
New Revision: 96672

Modified:
   projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java
   projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/ServletMetaData.java
   projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java
   projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/TomcatDeployerUnitTestCase.java
   projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java
   projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java
   projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6FragmentUnitTestCase.java
Log:
- Revert load-on-startup as a String, which is not possible with the schemas (the old DTDs would allow it).
- Could not find a spec backing for the code in Tomcat dealing with arbitrary load-on-startup values.
- Still a bugfix in there: annotation with l-o-s = 0 should set l-o-s.

Modified: projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -75,7 +75,7 @@
          servletName = webServlet.name();
       servlet.setServletName(servletName);
       if (webServlet.loadOnStartup() >= 0)
-         servlet.setLoadOnStartup("" + webServlet.loadOnStartup());
+         servlet.setLoadOnStartup(webServlet.loadOnStartup());
       servlet.setAsyncSupported(webServlet.asyncSupported());
       if (webServlet.initParams() != null)
       {

Modified: projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/ServletMetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/ServletMetaData.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/ServletMetaData.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -48,6 +48,7 @@
 {
    private static final long serialVersionUID = 1;
    
+   private static final int loadOnStartupDefault = -1;
    private static final boolean asyncSupportedDefault = false;
    private static final boolean enabledDefault = true;
 
@@ -55,7 +56,8 @@
    private String jspFile;
    /** The servlet init-params */
    private List<ParamValueMetaData> initParam;
-   private String loadOnStartup;
+   private int loadOnStartup = loadOnStartupDefault;
+   private boolean loadOnStartupSet = false;
    private RunAsMetaData runAs;
    /** The security role ref */
    private SecurityRoleRefsMetaData securityRoleRefs;
@@ -99,13 +101,14 @@
    {
       this.jspFile = jspFile;
    }
-   public String getLoadOnStartup()
+   public int getLoadOnStartup()
    {
       return loadOnStartup;
    }
-   public void setLoadOnStartup(String loadOnStartup)
+   public void setLoadOnStartup(int loadOnStartup)
    {
       this.loadOnStartup = loadOnStartup;
+      loadOnStartupSet = true;
    }
    public RunAsMetaData getRunAs()
    {
@@ -173,9 +176,9 @@
          setInitParam(override.initParam);
       else if(original != null && original.initParam != null)
          setInitParam(original.initParam);
-      if(override != null && override.loadOnStartup != null)
+      if(override != null && override.loadOnStartup != loadOnStartupDefault)
          setLoadOnStartup(override.loadOnStartup);
-      else if(original != null && original.loadOnStartup != null)
+      else if(original != null && original.loadOnStartup != loadOnStartupDefault)
          setLoadOnStartup(original.loadOnStartup);
       if(override != null && override.runAs != null)
          setRunAs(override.runAs);
@@ -274,16 +277,20 @@
          setInitParam(mergedInitParams);
       }
       // Load on startup
-      if (getLoadOnStartup() == null)
+      if (!loadOnStartupSet)
       {
-         setLoadOnStartup(webFragmentMetaData.getLoadOnStartup());
+         if (webFragmentMetaData.loadOnStartupSet)
+         {
+            setLoadOnStartup(webFragmentMetaData.getLoadOnStartup());
+         }
       }
-      else if (webFragmentMetaData.getLoadOnStartup() != null)
+      else
       {
-         if (!resolveConflicts && !getLoadOnStartup().equals(webFragmentMetaData.getLoadOnStartup()) 
-               && (webMetaData == null || webMetaData.getLoadOnStartup() == null))
+         if (!resolveConflicts && webFragmentMetaData.loadOnStartupSet 
+               && (getLoadOnStartup() != webFragmentMetaData.getLoadOnStartup())
+               && (webMetaData == null || !webMetaData.loadOnStartupSet))
          {
-            throw new IllegalStateException("Unresolved conflict on load on startup: " + getLoadOnStartup());
+            throw new IllegalStateException("Unresolved conflict on load on startup");
          }
       }
       // Run as

Modified: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -273,14 +273,14 @@
       assertNotNull(servlet2);
       assertEquals("servlet2", servlet2.getId());
       assertEquals("org.jboss.test.web.servlets.ClasspathServlet", servlet2.getServletClass());
-      assertEquals("1", servlet2.getLoadOnStartup());
+      assertEquals(1, servlet2.getLoadOnStartup());
       // servlet10
       JBossServletMetaData servlet10 = jbossWeb.getServletByName("EJBOnStartupServlet");
       assertNotNull(servlet10);
       assertEquals("servlet10", servlet10.getId());
       assertEquals("EJBOnStartupServlet", servlet10.getServletName());
       assertEquals("org.jboss.test.web.servlets.EJBOnStartupServlet", servlet10.getServletClass());
-      assertEquals("1", servlet10.getLoadOnStartup());
+      assertEquals(1, servlet10.getLoadOnStartup());
       List<ParamValueMetaData> s10params = servlet10.getInitParam();
       assertEquals(1, s10params.size());
       ParamValueMetaData s10p0 = s10params.get(0);

Modified: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/TomcatDeployerUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/TomcatDeployerUnitTestCase.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/TomcatDeployerUnitTestCase.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -70,7 +70,7 @@
       assertEquals("web-app_2_4", webApp.getId());
       assertEquals("2.4", webApp.getVersion());
       assertNotNull(webApp.getServletByName("default"));
-      assertEquals("0", webApp.getServletByName("default").getLoadOnStartup());
+      assertEquals(0, webApp.getServletByName("default").getLoadOnStartup());
    }
    public void testConfweb25() throws Exception
    {

Modified: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -108,7 +108,7 @@
          assertEquals("servlet"+count, servlet.getId());
          assertEquals("servlet"+count+"-name", servlet.getServletName());
          assertEquals("servlet"+count+".class", servlet.getServletClass());
-         assertEquals("1", servlet.getLoadOnStartup());
+         assertEquals(1, servlet.getLoadOnStartup());
          assertEquals("run-as-role"+count, servlet.getRunAs().getRoleName());
          List<ParamValueMetaData> params = servlet.getInitParam();
          assertEquals(2, params.size());

Modified: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -131,7 +131,7 @@
          assertEquals("servlet"+count, servlet.getId());
          assertEquals("servlet"+count+"-name", servlet.getServletName());
          assertEquals("servlet"+count+".class", servlet.getServletClass());
-         assertEquals("1", servlet.getLoadOnStartup());
+         assertEquals(1, servlet.getLoadOnStartup());
          assertEquals("run-as-role"+count, servlet.getRunAs().getRoleName());
          List<ParamValueMetaData> params = servlet.getInitParam();
          assertEquals(2, params.size());

Modified: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6FragmentUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6FragmentUnitTestCase.java	2009-11-21 03:20:03 UTC (rev 96671)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6FragmentUnitTestCase.java	2009-11-21 03:48:20 UTC (rev 96672)
@@ -137,7 +137,7 @@
          assertEquals("servlet"+count, servlet.getId());
          assertEquals("servlet"+count+"-name", servlet.getServletName());
          assertEquals("servlet"+count+".class", servlet.getServletClass());
-         assertEquals("1", servlet.getLoadOnStartup());
+         assertEquals(1, servlet.getLoadOnStartup());
          assertEquals("run-as-role"+count, servlet.getRunAs().getRoleName());
          List<ParamValueMetaData> params = servlet.getInitParam();
          assertEquals(2, params.size());




More information about the jboss-cvs-commits mailing list