[jboss-cvs] JBossAS SVN: r92744 - in projects/metadata/web/trunk/src: test/java/org/jboss/test/metadata/web and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Aug 24 10:49:27 EDT 2009
Author: remy.maucherat at jboss.com
Date: 2009-08-24 10:49:27 -0400 (Mon, 24 Aug 2009)
New Revision: 92744
Added:
projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web22MetaData.java
projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp22UnitTestCase.java
projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testEverything.xml
projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testVersion.xml
Modified:
projects/metadata/web/trunk/src/test/resources/schema2class.properties
Log:
- Servlet 2.2 support (to go with JSP 1.1).
Added: projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web22MetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web22MetaData.java (rev 0)
+++ projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web22MetaData.java 2009-08-24 14:49:27 UTC (rev 92744)
@@ -0,0 +1,69 @@
+package org.jboss.metadata.web.spec;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlNs;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.xb.annotations.JBossXmlConstants;
+import org.jboss.xb.annotations.JBossXmlSchema;
+import org.jboss.xb.annotations.JBossXmlType;
+
+/**
+ * Web application spec metadata.
+ *
+ * @author Scott.Stark at jboss.org
+ * @version $Revision: 84989 $
+ */
+ at XmlRootElement(name="web-app", namespace="")
+ at JBossXmlSchema(
+ xmlns={@XmlNs(namespaceURI = "", prefix="jee")},
+ ignoreUnresolvedFieldOrClass=false,
+ namespace="",
+ elementFormDefault=XmlNsForm.UNSET,
+ normalizeSpace=true)
+ at XmlType(name="web-appType",
+ propOrder={"descriptionGroup", "distributable", "contextParams", "servlets",
+ "servletMappings", "sessionConfig", "mimeMappings", "welcomeFileList", "errorPages", "taglibs", "securityContraints",
+ "loginConfig", "securityRoles", "jndiEnvironmentRefsGroup"})
+ at JBossXmlType(modelGroup=JBossXmlConstants.MODEL_GROUP_UNORDERED_SEQUENCE)
+public class Web22MetaData extends WebMetaData
+{
+ private static final long serialVersionUID = 1;
+
+ public boolean isMetadataComplete()
+ {
+ return true;
+ }
+
+ @Override
+ public String getVersion()
+ {
+ return "2.2";
+ }
+
+ public List<TaglibMetaData> getTaglibs()
+ {
+ JspConfigMetaData jspConfig = super.getJspConfig();
+ List<TaglibMetaData> taglibs = null;
+ if (jspConfig != null)
+ {
+ taglibs = jspConfig.getTaglibs();
+ }
+ return taglibs;
+ }
+ /**
+ * Map the 2.2 taglibs onto jsp-config/taglibs
+ * @param taglibs
+ */
+ @XmlElement(name="taglib")
+ public void setTaglibs(List<TaglibMetaData> taglibs)
+ {
+ JspConfigMetaData jspConfig = new JspConfigMetaData();
+ jspConfig.setTaglibs(taglibs);
+ super.setJspConfig(jspConfig);
+ }
+}
Added: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp22UnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp22UnitTestCase.java (rev 0)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp22UnitTestCase.java 2009-08-24 14:49:27 UTC (rev 92744)
@@ -0,0 +1,76 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.web;
+
+import org.jboss.metadata.javaee.spec.DescriptionGroupMetaData;
+import org.jboss.metadata.web.spec.ServletMetaData;
+import org.jboss.metadata.web.spec.Web22MetaData;
+import org.jboss.metadata.web.spec.WebMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+
+/**
+ * Test all entries of 2.2 web-app
+ *
+ * @author Scott.Stark at jboss.org
+ * @version $Revision: 88255 $
+ */
+public class WebApp22UnitTestCase extends AbstractJavaEEEverythingTest
+{
+
+ public WebApp22UnitTestCase(String name)
+ {
+ super(name);
+ }
+
+ protected void assertEverything(WebMetaData webApp)
+ {
+ DescriptionGroupMetaData dg = webApp.getDescriptionGroup();
+ assertNotNull(dg);
+ assertEquals("web-app-desc", dg.getDescription());
+ assertEquals("web-app_2_2-display-name", dg.getDisplayName());
+ ServletMetaData servlet = webApp.getServlets().get("servlet0-name");
+ assertNotNull(servlet);
+ assertEquals("servlet0.class", servlet.getServletClass());
+ }
+
+ public void testEverything() throws Exception
+ {
+ WebMetaData webApp = unmarshal();
+ assertEverything(webApp);
+ }
+ public void testVersion() throws Exception
+ {
+ Web22MetaData webApp = (Web22MetaData) unmarshal();
+ DescriptionGroupMetaData dg = webApp.getDescriptionGroup();
+ assertNotNull(dg);
+ assertEquals("A servlet 2.2 descriptor", dg.getDescription());
+ assertEquals("web-app_2_2", webApp.getId());
+ assertEquals("2.2", webApp.getVersion());
+ assertEquals("-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN", webApp.getDtdPublicId());
+ assertEquals("web-app_2_2-display-name", dg.getDisplayName());
+ }
+
+ protected WebMetaData unmarshal() throws Exception
+ {
+ return unmarshal(Web22MetaData.class);
+ }
+}
Added: projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testEverything.xml
===================================================================
--- projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testEverything.xml (rev 0)
+++ projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testEverything.xml 2009-08-24 14:49:27 UTC (rev 92744)
@@ -0,0 +1,192 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE web-app PUBLIC
+"-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
+"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
+
+<web-app id="web-app_2_2">
+
+ <icon id="en-web-app-icon-id">
+ <small-icon>en-web-app-small-icon</small-icon>
+ <large-icon>en-web-app-large-icon</large-icon>
+ </icon>
+ <display-name>web-app_2_2-display-name</display-name>
+
+ <description>web-app-desc</description>
+
+ <distributable/>
+
+ <context-param id="context-param0">
+ <param-name>context-param0-name</param-name>
+ <param-value>context-param0-value</param-value>
+ <description>context-param0-description</description>
+ </context-param>
+
+ <servlet id="servlet0">
+ <servlet-name>servlet0-name</servlet-name>
+ <servlet-class>
+ servlet0.class
+ </servlet-class>
+ <init-param id="servlet0-init-param0">
+ <param-name>init-param0-name</param-name>
+ <param-value>init-param0-value</param-value>
+ </init-param>
+ <init-param id="servlet0-init-param1">
+ <param-name>init-param1-name</param-name>
+ <param-value>init-param1-value</param-value>
+ </init-param>
+ <load-on-startup>1</load-on-startup>
+ <security-role-ref>
+ <role-name>role1</role-name>
+ <role-link>role-link1</role-link>
+ </security-role-ref>
+ </servlet>
+ <servlet id="servlet1">
+ <servlet-name>servlet1-name</servlet-name>
+ <servlet-class>servlet1.class</servlet-class>
+ <init-param id="servlet1-init-param0">
+ <param-name>init-param0-name</param-name>
+ <param-value>init-param0-value</param-value>
+ </init-param>
+ <init-param id="servlet1-init-param1">
+ <param-name>init-param1-name</param-name>
+ <param-value>init-param1-value</param-value>
+ </init-param>
+ <load-on-startup>1</load-on-startup>
+ <security-role-ref>
+ <role-name>role1</role-name>
+ <role-link>role-link1</role-link>
+ </security-role-ref>
+ </servlet>
+ <servlet-mapping id="servlet0-mapping">
+ <servlet-name>servlet0-name</servlet-name>
+ <url-pattern>/servlet0/*</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping id="servlet1-mapping">
+ <servlet-name>servlet1-name</servlet-name>
+ <url-pattern>/servlet1/*</url-pattern>
+ </servlet-mapping>
+
+ <session-config id="session-config0">
+ <session-timeout>30</session-timeout>
+ </session-config>
+ <mime-mapping id="mime-mapping0">
+ <extension>ext0</extension>
+ <mime-type>x/type0</mime-type>
+ </mime-mapping>
+ <mime-mapping id="mime-mapping1">
+ <extension>ext1</extension>
+ <mime-type>x/type1</mime-type>
+ </mime-mapping>
+
+ <welcome-file-list id="welcome-file-list0">
+ <welcome-file>index.html</welcome-file>
+ <welcome-file>*.welcome</welcome-file>
+ </welcome-file-list>
+
+ <error-page id="error-page0">
+ <error-code>404</error-code>
+ <location>/error-page0</location>
+ </error-page>
+ <error-page id="error-page1">
+ <exception-type>java.lang.Throwable</exception-type>
+ <location>/error-page1</location>
+ </error-page>
+
+ <taglib>
+ <taglib-uri>jsp-config0</taglib-uri>
+ <taglib-location>/WEB-INF/tlds/jsp-config0.tld</taglib-location>
+ </taglib>
+
+ <!-- resource ref -->
+ <resource-ref id="webAppResourceRef1-id">
+ <description>en-webAppResourceRef1-desc</description>
+ <res-ref-name>webAppResourceRef1Name</res-ref-name>
+ <res-type>webAppResourceRef1Type</res-type>
+ <res-auth>Application</res-auth>
+ </resource-ref>
+ <resource-ref id="webAppResourceRef2-id">
+ <description>en-webAppResourceRef2-desc</description>
+ <res-ref-name>webAppResourceRef2Name</res-ref-name>
+ <res-type>webAppResourceRef2Type</res-type>
+ <res-auth>Container</res-auth>
+ </resource-ref>
+
+ <security-constraint id="security-constraint0">
+ <web-resource-collection id="web-resource-collection0">
+ <web-resource-name>web-resource0-name</web-resource-name>
+ <url-pattern>/resource0/*</url-pattern>
+ </web-resource-collection>
+ <web-resource-collection id="web-resource-collection1">
+ <web-resource-name>web-resource1-name</web-resource-name>
+ <url-pattern>/resource1/*</url-pattern>
+ </web-resource-collection>
+ <auth-constraint id="auth-constraint0">
+ <description></description>
+ <role-name>role0</role-name>
+ </auth-constraint>
+ <user-data-constraint>
+ <transport-guarantee>NONE</transport-guarantee>
+ </user-data-constraint>
+ </security-constraint>
+ <security-constraint id="security-constraint-excluded">
+ <web-resource-collection id="web-resource-excluded">
+ <web-resource-name>web-resource-excluded-name</web-resource-name>
+ <url-pattern>/resource-excluded/*</url-pattern>
+ </web-resource-collection>
+ <auth-constraint />
+ </security-constraint>
+ <security-constraint id="security-constraint-unchecked">
+ <web-resource-collection id="web-resource-collection-unchecked">
+ <web-resource-name>web-resource-unchecked-name</web-resource-name>
+ <url-pattern>/resource-unchecked/*</url-pattern>
+ </web-resource-collection>
+ </security-constraint>
+
+ <login-config id="login-config-FORM">
+ <auth-method>FORM</auth-method>
+ <form-login-config>
+ <form-login-page>/login.jsp</form-login-page>
+ <form-error-page>/login-error.jsp</form-error-page>
+ </form-login-config>
+ </login-config>
+
+ <security-role id="security-role0">
+ <role-name>role0</role-name>
+ </security-role>
+ <security-role id="security-role1">
+ <role-name>role1</role-name>
+ </security-role>
+
+ <!-- env entry -->
+ <env-entry id="webAppEnvEntry1-id">
+ <description>en-webAppEnvEntry1-desc</description>
+ <env-entry-name>webAppEnvEntry1Name</env-entry-name>
+ <env-entry-value>webAppEnvEntry1Value</env-entry-value>
+ <env-entry-type>java.lang.String</env-entry-type>
+ </env-entry>
+ <env-entry id="webAppEnvEntry2-id">
+ <description>en-webAppEnvEntry2-desc</description>
+ <env-entry-name>webAppEnvEntry2Name</env-entry-name>
+ <env-entry-value>webAppEnvEntry2Value</env-entry-value>
+ <env-entry-type>java.lang.String</env-entry-type>
+ </env-entry>
+
+ <!-- ejb ref -->
+ <ejb-ref id="webAppEjbRef1-id">
+ <description>en-webAppEjbRef1-desc</description>
+ <ejb-ref-name>webAppEjbRef1Name</ejb-ref-name>
+ <ejb-ref-type>Session</ejb-ref-type>
+ <home>webAppEjbRef1Home</home>
+ <remote>webAppEjbRef1Remote</remote>
+ <ejb-link>webAppEjbRef1EjbLink</ejb-link>
+ </ejb-ref>
+ <ejb-ref id="webAppEjbRef2-id">
+ <description>en-webAppEjbRef2-desc</description>
+ <ejb-ref-name>webAppEjbRef2Name</ejb-ref-name>
+ <ejb-ref-type>Entity</ejb-ref-type>
+ <home>webAppEjbRef2Home</home>
+ <remote>webAppEjbRef2Remote</remote>
+ <ejb-link>webAppEjbRef2EjbLink</ejb-link>
+ </ejb-ref>
+
+</web-app>
Added: projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testVersion.xml
===================================================================
--- projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testVersion.xml (rev 0)
+++ projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/web/WebApp22_testVersion.xml 2009-08-24 14:49:27 UTC (rev 92744)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE web-app PUBLIC
+"-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
+"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
+
+<web-app id="web-app_2_2">
+ <display-name>web-app_2_2-display-name</display-name>
+ <description>A servlet 2.2 descriptor</description>
+</web-app>
Modified: projects/metadata/web/trunk/src/test/resources/schema2class.properties
===================================================================
--- projects/metadata/web/trunk/src/test/resources/schema2class.properties 2009-08-24 14:24:14 UTC (rev 92743)
+++ projects/metadata/web/trunk/src/test/resources/schema2class.properties 2009-08-24 14:49:27 UTC (rev 92744)
@@ -1,4 +1,5 @@
# WEB
+web-app_2_2.dtd org.jboss.metadata.web.spec.Web22MetaData
web-app_2_3.dtd org.jboss.metadata.web.spec.Web23MetaData
web-app_2_4.xsd org.jboss.metadata.web.spec.Web24MetaData
web-app_2_5.xsd org.jboss.metadata.web.spec.Web25MetaData
More information about the jboss-cvs-commits
mailing list