[jboss-cvs] JBossAS SVN: r95416 - in projects/metadata/web/tags: 2.0.0.Alpha6 and 11 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Oct 22 10:55:31 EDT 2009
Author: remy.maucherat at jboss.com
Date: 2009-10-22 10:55:28 -0400 (Thu, 22 Oct 2009)
New Revision: 95416
Added:
projects/metadata/web/tags/2.0.0.Alpha6/
projects/metadata/web/tags/2.0.0.Alpha6/.classpath
projects/metadata/web/tags/2.0.0.Alpha6/pom.xml
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/jboss/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java
projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/binding/
projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java
projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml
projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties
Removed:
projects/metadata/web/tags/2.0.0.Alpha6/.classpath
projects/metadata/web/tags/2.0.0.Alpha6/pom.xml
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/jboss/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd
projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java
projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/binding/
projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java
projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml
projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties
Log:
[maven-release-plugin] copy for tag 2.0.0.Alpha6
Copied: projects/metadata/web/tags/2.0.0.Alpha6 (from rev 93709, projects/metadata/web/trunk)
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/.classpath
===================================================================
--- projects/metadata/web/trunk/.classpath 2009-09-18 13:00:21 UTC (rev 93709)
+++ projects/metadata/web/tags/2.0.0.Alpha6/.classpath 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,50 +0,0 @@
-<classpath>
- <classpathentry kind="src" path="src/test/java" output="target/tests-classes" including="**/*.java"/>
- <classpathentry kind="src" path="src/test/resources" output="target/tests-classes" excluding="**/*.java"/>
- <classpathentry kind="src" path="src/main/java" including="**/*.java"/>
- <classpathentry kind="src" path="src/main/resources" excluding="**/*.java"/>
- <classpathentry kind="output" path="target/classes"/>
- <classpathentry kind="var" path="M2_REPO/javax/activation/activation/1.1.1/activation-1.1.1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant/1.7.0/ant-1.7.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant-junit/1.7.0/ant-junit-1.7.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant-launcher/1.7.0/ant-launcher-1.7.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/wutka-dtdparser/dtdparser121/1.2.1/dtdparser121-1.2.1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar" sourcepath="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/gnu-getopt/getopt/1.0.13/getopt-1.0.13.jar"/>
- <classpathentry kind="var" path="M2_REPO/sun-jaxb/jaxb-api/2.1.4/jaxb-api-2.1.4.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-common-core/2.2.14.GA/jboss-common-core-2.2.14.GA.jar" sourcepath="M2_REPO/org/jboss/jboss-common-core/2.2.14.GA/jboss-common-core-2.2.14.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-ejb-api/3.0.0.CR1/jboss-ejb-api-3.0.0.CR1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api/1.0.0/jboss-ejb3-ext-api-1.0.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api/1.0.0/jboss-ejb3-ext-api-1.0.0-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/jboss/jbossws/jboss-jaxrpc/1.0.4.GA/jboss-jaxrpc-1.0.4.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/jboss/jbossws/jboss-jaxws/3.0.1-native-2.0.4.GA/jboss-jaxws-3.0.1-native-2.0.4.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-jms-api/1.1.0.GA/jboss-jms-api-1.1.0.GA.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-jms-api/1.1.0.GA/jboss-jms-api-1.1.0.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/logging/jboss-logging-log4j/2.0.5.GA/jboss-logging-log4j-2.0.5.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/logging/jboss-logging-spi/2.0.5.GA/jboss-logging-spi-2.0.5.GA.jar" sourcepath="M2_REPO/org/jboss/logging/jboss-logging-spi/2.0.5.GA/jboss-logging-spi-2.0.5.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-mdr/2.0.0.GA/jboss-mdr-2.0.0.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/jboss/profiler/jvmti/jboss-profiler-jvmti/1.0.0.CR5/jboss-profiler-jvmti-1.0.0.CR5.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-reflect/2.0.2.GA/jboss-reflect-2.0.2.GA.jar" sourcepath="M2_REPO/org/jboss/jboss-reflect/2.0.2.GA/jboss-reflect-2.0.2.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/security/jboss-security-spi/2.0.3.SP1/jboss-security-spi-2.0.3.SP1.jar" sourcepath="M2_REPO/org/jboss/security/jboss-security-spi/2.0.3.SP1/jboss-security-spi-2.0.3.SP1-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-server-manager/1.0.2.GA/jboss-server-manager-1.0.2.GA.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-server-manager/1.0.2.GA/jboss-server-manager-1.0.2.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/test/jboss-test/1.1.4.GA/jboss-test-1.1.4.GA.jar" sourcepath="M2_REPO/org/jboss/test/jboss-test/1.1.4.GA/jboss-test-1.1.4.GA-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-transaction-api/1.0.1.CR1/jboss-transaction-api-1.0.1.CR1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-vfs/2.0.0.CR1/jboss-vfs-2.0.0.CR1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/security/jbosssx-client/2.0.3.SP1/jbosssx-client-2.0.3.SP1.jar" sourcepath="M2_REPO/org/jboss/security/jbosssx-client/2.0.3.SP1/jbosssx-client-2.0.3.SP1-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/ws/jbossws-spi/1.0.6.GA/jbossws-spi-1.0.6.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/jboss/web/servlet-api/3.0.0.alpha-3/servlet-api-3.0.0.alpha-3.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1.jar" sourcepath="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-sources.jar">
- <attributes>
- <attribute value="jar:file:/C:/Users/avoka/.m2/repository/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-javadoc.jar!/" name="javadoc_location"/>
- </attributes>
- </classpathentry>
- <classpathentry kind="var" path="M2_REPO/org/jboss/naming/jnp-client/5.0.1.GA/jnp-client-5.0.1.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/junit/junit/4.4/junit-4.4.jar"/>
- <classpathentry kind="var" path="M2_REPO/apache-log4j/log4j/1.2.14/log4j-1.2.14.jar"/>
- <classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14.jar" sourcepath="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT.jar" sourcepath="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-tests.jar" sourcepath="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-test-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/apache-xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar"/>
- <classpathentry kind="var" path="M2_REPO/apache-xerces/xml-apis/2.9.1/xml-apis-2.9.1.jar"/>
- <classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-</classpath>
Copied: projects/metadata/web/tags/2.0.0.Alpha6/.classpath (from rev 94608, projects/metadata/web/trunk/.classpath)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/.classpath (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/.classpath 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry including="**/*.java" kind="src" output="target/tests-classes" path="src/test/java"/>
+ <classpathentry excluding="**/*.java" kind="src" output="target/tests-classes" path="src/test/resources"/>
+ <classpathentry including="**/*.java" kind="src" path="src/main/java"/>
+ <classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
+ <classpathentry kind="var" path="M2_REPO/javax/activation/activation/1.1.1/activation-1.1.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant/1.7.0/ant-1.7.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant-junit/1.7.0/ant-junit-1.7.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant-launcher/1.7.0/ant-launcher-1.7.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/wutka-dtdparser/dtdparser121/1.2.1/dtdparser121-1.2.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar" sourcepath="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/gnu-getopt/getopt/1.0.13/getopt-1.0.13.jar"/>
+ <classpathentry kind="var" path="M2_REPO/sun-jaxb/jaxb-api/2.1.4/jaxb-api-2.1.4.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-common-core/2.2.14.GA/jboss-common-core-2.2.14.GA.jar" sourcepath="M2_REPO/org/jboss/jboss-common-core/2.2.14.GA/jboss-common-core-2.2.14.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-ejb-api/3.0.0.CR1/jboss-ejb-api-3.0.0.CR1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api/1.0.0/jboss-ejb3-ext-api-1.0.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api/1.0.0/jboss-ejb3-ext-api-1.0.0-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jbossws/jboss-jaxrpc/1.0.4.GA/jboss-jaxrpc-1.0.4.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jbossws/jboss-jaxws/3.0.1-native-2.0.4.GA/jboss-jaxws-3.0.1-native-2.0.4.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-jms-api/1.1.0.GA/jboss-jms-api-1.1.0.GA.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-jms-api/1.1.0.GA/jboss-jms-api-1.1.0.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/logging/jboss-logging-log4j/2.0.5.GA/jboss-logging-log4j-2.0.5.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/logging/jboss-logging-spi/2.0.5.GA/jboss-logging-spi-2.0.5.GA.jar" sourcepath="M2_REPO/org/jboss/logging/jboss-logging-spi/2.0.5.GA/jboss-logging-spi-2.0.5.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-mdr/2.0.0.GA/jboss-mdr-2.0.0.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/profiler/jvmti/jboss-profiler-jvmti/1.0.0.CR5/jboss-profiler-jvmti-1.0.0.CR5.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-reflect/2.0.2.GA/jboss-reflect-2.0.2.GA.jar" sourcepath="M2_REPO/org/jboss/jboss-reflect/2.0.2.GA/jboss-reflect-2.0.2.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/jboss-security-spi/2.0.3.SP1/jboss-security-spi-2.0.3.SP1.jar" sourcepath="M2_REPO/org/jboss/security/jboss-security-spi/2.0.3.SP1/jboss-security-spi-2.0.3.SP1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-server-manager/1.0.2.GA/jboss-server-manager-1.0.2.GA.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-server-manager/1.0.2.GA/jboss-server-manager-1.0.2.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/test/jboss-test/1.1.4.GA/jboss-test-1.1.4.GA.jar" sourcepath="M2_REPO/org/jboss/test/jboss-test/1.1.4.GA/jboss-test-1.1.4.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-transaction-api/1.0.1.CR1/jboss-transaction-api-1.0.1.CR1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-vfs/2.0.0.CR1/jboss-vfs-2.0.0.CR1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/jbosssx-client/2.0.3.SP1/jbosssx-client-2.0.3.SP1.jar" sourcepath="M2_REPO/org/jboss/security/jbosssx-client/2.0.3.SP1/jbosssx-client-2.0.3.SP1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ws/jbossws-spi/1.0.6.GA/jbossws-spi-1.0.6.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/web/servlet-api/3.0.0.alpha-6/servlet-api-3.0.0.alpha-6.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1.jar" sourcepath="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/C:/Users/avoka/.m2/repository/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-javadoc.jar!/"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/naming/jnp-client/5.0.1.GA/jnp-client-5.0.1.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/junit/junit/4.4/junit-4.4.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-log4j/log4j/1.2.14/log4j-1.2.14.jar"/>
+ <classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14.jar" sourcepath="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT.jar" sourcepath="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-tests.jar" sourcepath="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-test-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-xerces/xml-apis/2.9.1/xml-apis-2.9.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/pom.xml
===================================================================
--- projects/metadata/web/trunk/pom.xml 2009-09-18 13:00:21 UTC (rev 93709)
+++ projects/metadata/web/tags/2.0.0.Alpha6/pom.xml 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,144 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-parent</artifactId>
- <version>4.0.CR1</version>
- </parent>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata-war</artifactId>
- <packaging>jar</packaging>
- <version>2.0.0-SNAPSHOT</version>
- <name>JBoss Metadata WAR</name>
- <url>http://www.jboss.org</url>
- <description>The common JavaEE metadata classes</description>
- <scm>
- <connection>scm:svn:http://anonsvn.jboss.org/repos/jbossas/projects/metadata/web/trunk/</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/metadata/web/trunk/</developerConnection>
- </scm>
-
- <build>
- <outputDirectory>${profile.outputDirectory}</outputDirectory>
- <testOutputDirectory>${profile.testOutputDirectory}</testOutputDirectory>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.4.3</version>
- <configuration>
- <printSummary>true</printSummary>
- <disableXmlReport>false</disableXmlReport>
- <redirectTestOutputToFile>true</redirectTestOutputToFile>
- <testFailureIgnore>false</testFailureIgnore>
- <includes>
- <include>**/*TestCase.java</include>
- </includes>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <repositories>
- <repository>
- <id>repository.jboss.org</id>
- <name>JBoss Repository</name>
- <layout>default</layout>
- <url>http://repository.jboss.org/maven2/</url>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>snapshots.jboss.org</id>
- <name>JBoss Snapshot Repository</name>
- <layout>default</layout>
- <url>http://snapshots.jboss.org/maven2/</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </repository>
- </repositories>
-
- <!--
- Eclipse settings have been removed from parent. This needs to be
- done via an eclipse profile.
- http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4085896#4085896
- -->
- <profiles>
- <profile>
- <id>default</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
- <properties>
- <profile.outputDirectory>target/classes</profile.outputDirectory>
- <profile.testOutputDirectory>target/tests-classes</profile.testOutputDirectory>
- </properties>
- </profile>
-
- <profile>
- <id>eclipse</id>
- <properties>
- <profile.outputDirectory>eclipse-target/classes</profile.outputDirectory>
- <profile.testOutputDirectory>eclipse-target/tests-classes</profile.testOutputDirectory>
- </properties>
- </profile>
- </profiles>
-
- <!-- Compile Dependencies -->
- <dependencies>
-
- <dependency>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata-common</artifactId>
- <version>2.0.0.Alpha</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata-common</artifactId>
- <version>2.0.0.Alpha</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.ejb3</groupId>
- <artifactId>jboss-ejb3-ext-api</artifactId>
- <version>1.0.0</version>
- <exclusions>
- <exclusion>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>jboss.web</groupId>
- <artifactId>servlet-api</artifactId>
- <version>3.0.0.alpha-3</version>
- </dependency>
-
-
- <!-- Test Dependencies -->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.4</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.test</groupId>
- <artifactId>jboss-test</artifactId>
- <version>1.1.4.GA</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
-</project>
\ No newline at end of file
Copied: projects/metadata/web/tags/2.0.0.Alpha6/pom.xml (from rev 95415, projects/metadata/web/trunk/pom.xml)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/pom.xml (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/pom.xml 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,144 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-parent</artifactId>
+ <version>4.0.CR1</version>
+ </parent>
+ <groupId>org.jboss.metadata</groupId>
+ <artifactId>jboss-metadata-war</artifactId>
+ <packaging>jar</packaging>
+ <version>2.0.0.Alpha6</version>
+ <name>JBoss Metadata WAR</name>
+ <url>http://www.jboss.org</url>
+ <description>The common JavaEE metadata classes</description>
+ <scm>
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/jbossas/projects/metadata/web/tags/2.0.0.Alpha6</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/metadata/web/tags/2.0.0.Alpha6</developerConnection>
+ </scm>
+
+ <build>
+ <outputDirectory>${profile.outputDirectory}</outputDirectory>
+ <testOutputDirectory>${profile.testOutputDirectory}</testOutputDirectory>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4.3</version>
+ <configuration>
+ <printSummary>true</printSummary>
+ <disableXmlReport>false</disableXmlReport>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ <testFailureIgnore>false</testFailureIgnore>
+ <includes>
+ <include>**/*TestCase.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <repositories>
+ <repository>
+ <id>repository.jboss.org</id>
+ <name>JBoss Repository</name>
+ <layout>default</layout>
+ <url>http://repository.jboss.org/maven2/</url>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>snapshots.jboss.org</id>
+ <name>JBoss Snapshot Repository</name>
+ <layout>default</layout>
+ <url>http://snapshots.jboss.org/maven2/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <!--
+ Eclipse settings have been removed from parent. This needs to be
+ done via an eclipse profile.
+ http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4085896#4085896
+ -->
+ <profiles>
+ <profile>
+ <id>default</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <properties>
+ <profile.outputDirectory>target/classes</profile.outputDirectory>
+ <profile.testOutputDirectory>target/tests-classes</profile.testOutputDirectory>
+ </properties>
+ </profile>
+
+ <profile>
+ <id>eclipse</id>
+ <properties>
+ <profile.outputDirectory>eclipse-target/classes</profile.outputDirectory>
+ <profile.testOutputDirectory>eclipse-target/tests-classes</profile.testOutputDirectory>
+ </properties>
+ </profile>
+ </profiles>
+
+ <!-- Compile Dependencies -->
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.metadata</groupId>
+ <artifactId>jboss-metadata-common</artifactId>
+ <version>2.0.0.Alpha2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.metadata</groupId>
+ <artifactId>jboss-metadata-common</artifactId>
+ <version>2.0.0.Alpha2</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-ext-api</artifactId>
+ <version>1.0.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.metadata</groupId>
+ <artifactId>jboss-metadata</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>jboss.web</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>3.0.0.alpha-6</version>
+ </dependency>
+
+
+ <!-- Test Dependencies -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.test</groupId>
+ <artifactId>jboss-test</artifactId>
+ <version>1.1.4.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+</project>
\ No newline at end of file
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web (from rev 94608, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web)
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,154 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2007, Red Hat Middleware LLC, and individual contributors
- * 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.metadata.annotation.creator.web;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.AnnotatedElement;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import javax.servlet.annotation.WebFilter;
-import javax.servlet.annotation.WebInitParam;
-
-import org.jboss.metadata.annotation.creator.AbstractFinderUser;
-import org.jboss.metadata.annotation.creator.Creator;
-import org.jboss.metadata.annotation.creator.Processor;
-import org.jboss.metadata.annotation.creator.ProcessorUtils;
-import org.jboss.metadata.annotation.finder.AnnotationFinder;
-import org.jboss.metadata.javaee.spec.ParamValueMetaData;
-import org.jboss.metadata.web.spec.DispatcherType;
-import org.jboss.metadata.web.spec.FilterMappingMetaData;
-import org.jboss.metadata.web.spec.FilterMetaData;
-import org.jboss.metadata.web.spec.FiltersMetaData;
-import org.jboss.metadata.web.spec.WebMetaData;
-
-/**
- * Processor for filter @WebFilter
- * @author Remy Maucherat
- * @version $Revision: 67218 $
- */
-public class WebFilterProcessor extends AbstractFinderUser
- implements Creator<Class<?>, WebMetaData>, Processor<WebMetaData, Class<?>>
-{
- /**
- * @param finder
- */
- public WebFilterProcessor(AnnotationFinder<AnnotatedElement> finder)
- {
- super(finder);
- }
-
- public WebMetaData create(Class<?> element)
- {
- WebFilter webFilter = finder.getAnnotation(element, WebFilter.class);
- if (webFilter == null)
- return null;
-
- WebMetaData metaData = new WebMetaData();
- FiltersMetaData filters = new FiltersMetaData();
- FilterMetaData filter = new FilterMetaData();
- filter.setName(webFilter.filterName());
- filter.setAsyncSupported(webFilter.asyncSupported());
- if (webFilter.initParams() != null)
- {
- List<ParamValueMetaData> initParams = new ArrayList<ParamValueMetaData>();
- for (WebInitParam webInitParam : webFilter.initParams())
- {
- ParamValueMetaData paramValue = new ParamValueMetaData();
- paramValue.setParamName(webInitParam.name());
- paramValue.setParamValue(webInitParam.value());
- initParams.add(paramValue);
- }
- filter.setInitParam(initParams);
- }
- // TODO: description group ?
- filters.add(filter);
- metaData.setFilters(filters);
- if (webFilter.urlPatterns() != null || webFilter.servletNames() != null)
- {
- List<FilterMappingMetaData> filterMappings = new ArrayList<FilterMappingMetaData>();
- FilterMappingMetaData filterMapping = new FilterMappingMetaData();
- if (webFilter.urlPatterns() != null)
- {
- List<String> urlPatterns = new ArrayList<String>();
- for (String urlPattern : webFilter.urlPatterns())
- {
- urlPatterns.add(urlPattern);
- }
- filterMapping.setUrlPatterns(urlPatterns);
- }
- if (webFilter.servletNames() != null)
- {
- List<String> servletNames = new ArrayList<String>();
- for (String servletName : webFilter.servletNames())
- {
- servletNames.add(servletName);
- }
- filterMapping.setServletNames(servletNames);
- }
- if (webFilter.dispatcherTypes() != null)
- {
- List<DispatcherType> dispatcherTypes = new ArrayList<DispatcherType>();
- for (javax.servlet.DispatcherType dispatcherType : webFilter.dispatcherTypes())
- {
- dispatcherTypes.add(DispatcherType.valueOf(dispatcherType.toString()));
- }
- filterMapping.setDispatchers(dispatcherTypes);
- }
- filterMappings.add(filterMapping);
- metaData.setFilterMappings(filterMappings);
- }
- return metaData;
- }
-
- public void process(WebMetaData metaData, Class<?> type)
- {
- WebFilter annotation = finder.getAnnotation(type, WebFilter.class);
- if(annotation == null)
- return;
-
- WebMetaData filterMetaData = create(type);
- if (metaData.getFilters() == null)
- {
- metaData.setFilters(filterMetaData.getFilters());
- }
- else
- {
- metaData.getFilters().addAll(filterMetaData.getFilters());
- }
- if (metaData.getFilterMappings() == null)
- {
- metaData.setFilterMappings(filterMetaData.getFilterMappings());
- }
- else if (filterMetaData.getFilterMappings() != null)
- {
- metaData.getFilterMappings().addAll(filterMetaData.getFilterMappings());
- }
- }
-
- public Collection<Class<? extends Annotation>> getAnnotationTypes()
- {
- return ProcessorUtils.createAnnotationSet(WebFilter.class);
- }
-
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java (from rev 95029, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebFilterProcessor.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,171 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.annotation.creator.web;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.AnnotatedElement;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import javax.servlet.annotation.WebFilter;
+import javax.servlet.annotation.WebInitParam;
+
+import org.jboss.metadata.annotation.creator.AbstractFinderUser;
+import org.jboss.metadata.annotation.creator.Creator;
+import org.jboss.metadata.annotation.creator.Processor;
+import org.jboss.metadata.annotation.creator.ProcessorUtils;
+import org.jboss.metadata.annotation.finder.AnnotationFinder;
+import org.jboss.metadata.javaee.spec.ParamValueMetaData;
+import org.jboss.metadata.web.spec.DispatcherType;
+import org.jboss.metadata.web.spec.FilterMappingMetaData;
+import org.jboss.metadata.web.spec.FilterMetaData;
+import org.jboss.metadata.web.spec.FiltersMetaData;
+import org.jboss.metadata.web.spec.WebMetaData;
+
+/**
+ * Processor for filter @WebFilter
+ * @author Remy Maucherat
+ * @version $Revision: 67218 $
+ */
+public class WebFilterProcessor extends AbstractFinderUser
+ implements Creator<Class<?>, WebMetaData>, Processor<WebMetaData, Class<?>>
+{
+ /**
+ * @param finder
+ */
+ public WebFilterProcessor(AnnotationFinder<AnnotatedElement> finder)
+ {
+ super(finder);
+ }
+
+ public WebMetaData create(Class<?> element)
+ {
+ WebFilter webFilter = finder.getAnnotation(element, WebFilter.class);
+ if (webFilter == null)
+ return null;
+
+ WebMetaData metaData = new WebMetaData();
+ FiltersMetaData filters = new FiltersMetaData();
+ FilterMetaData filter = new FilterMetaData();
+ filter.setFilterClass(element.getName());
+ String filterName = null;
+ if (webFilter.filterName().length() == 0)
+ filterName = element.getName();
+ else
+ filterName = webFilter.filterName();
+ filter.setFilterName(filterName);
+ filter.setAsyncSupported(webFilter.asyncSupported());
+ if (webFilter.initParams() != null)
+ {
+ List<ParamValueMetaData> initParams = new ArrayList<ParamValueMetaData>();
+ for (WebInitParam webInitParam : webFilter.initParams())
+ {
+ ParamValueMetaData paramValue = new ParamValueMetaData();
+ paramValue.setParamName(webInitParam.name());
+ paramValue.setParamValue(webInitParam.value());
+ initParams.add(paramValue);
+ }
+ filter.setInitParam(initParams);
+ }
+ // TODO: description group ?
+ filters.add(filter);
+ metaData.setFilters(filters);
+ if (webFilter.urlPatterns() != null || webFilter.value() != null || webFilter.servletNames() != null)
+ {
+ List<FilterMappingMetaData> filterMappings = new ArrayList<FilterMappingMetaData>();
+ FilterMappingMetaData filterMapping = new FilterMappingMetaData();
+ filterMapping.setFilterName(filterName);
+ if (webFilter.urlPatterns() != null || webFilter.value() != null)
+ {
+ List<String> urlPatterns = new ArrayList<String>();
+ if (webFilter.urlPatterns() != null)
+ {
+ for (String urlPattern : webFilter.urlPatterns())
+ {
+ urlPatterns.add(urlPattern);
+ }
+ }
+ if (webFilter.value() != null)
+ {
+ for (String urlPattern : webFilter.value())
+ {
+ urlPatterns.add(urlPattern);
+ }
+ }
+ filterMapping.setUrlPatterns(urlPatterns);
+ }
+ if (webFilter.servletNames() != null)
+ {
+ List<String> servletNames = new ArrayList<String>();
+ for (String servletName : webFilter.servletNames())
+ {
+ servletNames.add(servletName);
+ }
+ filterMapping.setServletNames(servletNames);
+ }
+ if (webFilter.dispatcherTypes() != null)
+ {
+ List<DispatcherType> dispatcherTypes = new ArrayList<DispatcherType>();
+ for (javax.servlet.DispatcherType dispatcherType : webFilter.dispatcherTypes())
+ {
+ dispatcherTypes.add(DispatcherType.valueOf(dispatcherType.toString()));
+ }
+ filterMapping.setDispatchers(dispatcherTypes);
+ }
+ filterMappings.add(filterMapping);
+ metaData.setFilterMappings(filterMappings);
+ }
+ return metaData;
+ }
+
+ public void process(WebMetaData metaData, Class<?> type)
+ {
+ WebFilter annotation = finder.getAnnotation(type, WebFilter.class);
+ if(annotation == null)
+ return;
+
+ WebMetaData filterMetaData = create(type);
+ if (metaData.getFilters() == null)
+ {
+ metaData.setFilters(filterMetaData.getFilters());
+ }
+ else
+ {
+ metaData.getFilters().addAll(filterMetaData.getFilters());
+ }
+ if (metaData.getFilterMappings() == null)
+ {
+ metaData.setFilterMappings(filterMetaData.getFilterMappings());
+ }
+ else if (filterMetaData.getFilterMappings() != null)
+ {
+ metaData.getFilterMappings().addAll(filterMetaData.getFilterMappings());
+ }
+ }
+
+ public Collection<Class<? extends Annotation>> getAnnotationTypes()
+ {
+ return ProcessorUtils.createAnnotationSet(WebFilter.class);
+ }
+
+}
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/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-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,135 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2007, Red Hat Middleware LLC, and individual contributors
- * 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.metadata.annotation.creator.web;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.AnnotatedElement;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import javax.servlet.annotation.WebInitParam;
-import javax.servlet.annotation.WebServlet;
-
-import org.jboss.metadata.annotation.creator.AbstractFinderUser;
-import org.jboss.metadata.annotation.creator.Creator;
-import org.jboss.metadata.annotation.creator.Processor;
-import org.jboss.metadata.annotation.creator.ProcessorUtils;
-import org.jboss.metadata.annotation.finder.AnnotationFinder;
-import org.jboss.metadata.javaee.spec.ParamValueMetaData;
-import org.jboss.metadata.web.spec.ServletMappingMetaData;
-import org.jboss.metadata.web.spec.ServletMetaData;
-import org.jboss.metadata.web.spec.ServletsMetaData;
-import org.jboss.metadata.web.spec.WebMetaData;
-
-/**
- * Processor for servlet @WebServlet
- * @author Remy Maucherat
- * @version $Revision: 67218 $
- */
-public class WebServletProcessor extends AbstractFinderUser
- implements Creator<Class<?>, WebMetaData>, Processor<WebMetaData, Class<?>>
-{
- /**
- * @param finder
- */
- public WebServletProcessor(AnnotationFinder<AnnotatedElement> finder)
- {
- super(finder);
- }
-
- public WebMetaData create(Class<?> element)
- {
- WebServlet webServlet = finder.getAnnotation(element, WebServlet.class);
- if (webServlet == null)
- return null;
-
- WebMetaData metaData = new WebMetaData();
- ServletsMetaData servlets = new ServletsMetaData();
- ServletMetaData servlet = new ServletMetaData();
- servlet.setName(webServlet.name());
- if (webServlet.loadOnStartup() > 0)
- servlet.setLoadOnStartup(webServlet.loadOnStartup());
- servlet.setAsyncSupported(webServlet.asyncSupported());
- if (webServlet.initParams() != null)
- {
- List<ParamValueMetaData> initParams = new ArrayList<ParamValueMetaData>();
- for (WebInitParam webInitParam : webServlet.initParams())
- {
- ParamValueMetaData paramValue = new ParamValueMetaData();
- paramValue.setParamName(webInitParam.name());
- paramValue.setParamValue(webInitParam.value());
- initParams.add(paramValue);
- }
- servlet.setInitParam(initParams);
- }
- // TODO: description group ?
- servlets.add(servlet);
- metaData.setServlets(servlets);
- if (webServlet.urlPatterns() != null)
- {
- List<ServletMappingMetaData> servletMappings = new ArrayList<ServletMappingMetaData>();
- ServletMappingMetaData servletMapping = new ServletMappingMetaData();
- servletMapping.setServletName(webServlet.name());
- List<String> urlPatterns = new ArrayList<String>();
- for (String urlPattern : webServlet.urlPatterns())
- {
- urlPatterns.add(urlPattern);
- }
- servletMapping.setUrlPatterns(urlPatterns);
- servletMappings.add(servletMapping);
- metaData.setServletMappings(servletMappings);
- }
- return metaData;
- }
-
- public void process(WebMetaData metaData, Class<?> type)
- {
- WebServlet annotation = finder.getAnnotation(type, WebServlet.class);
- if(annotation == null)
- return;
-
- WebMetaData servletMetaData = create(type);
- if (metaData.getServlets() == null)
- {
- metaData.setServlets(servletMetaData.getServlets());
- }
- else
- {
- metaData.getServlets().addAll(servletMetaData.getServlets());
- }
- if (metaData.getServletMappings() == null)
- {
- metaData.setServletMappings(servletMetaData.getServletMappings());
- }
- else if (servletMetaData.getServletMappings() != null)
- {
- metaData.getServletMappings().addAll(servletMetaData.getServletMappings());
- }
- }
-
- public Collection<Class<? extends Annotation>> getAnnotationTypes()
- {
- return ProcessorUtils.createAnnotationSet(WebServlet.class);
- }
-
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java (from rev 95029, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/annotation/creator/web/WebServletProcessor.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,151 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.annotation.creator.web;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.AnnotatedElement;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import javax.servlet.annotation.WebInitParam;
+import javax.servlet.annotation.WebServlet;
+
+import org.jboss.metadata.annotation.creator.AbstractFinderUser;
+import org.jboss.metadata.annotation.creator.Creator;
+import org.jboss.metadata.annotation.creator.Processor;
+import org.jboss.metadata.annotation.creator.ProcessorUtils;
+import org.jboss.metadata.annotation.finder.AnnotationFinder;
+import org.jboss.metadata.javaee.spec.ParamValueMetaData;
+import org.jboss.metadata.web.spec.ServletMappingMetaData;
+import org.jboss.metadata.web.spec.ServletMetaData;
+import org.jboss.metadata.web.spec.ServletsMetaData;
+import org.jboss.metadata.web.spec.WebMetaData;
+
+/**
+ * Processor for servlet @WebServlet
+ * @author Remy Maucherat
+ * @version $Revision: 67218 $
+ */
+public class WebServletProcessor extends AbstractFinderUser
+ implements Creator<Class<?>, WebMetaData>, Processor<WebMetaData, Class<?>>
+{
+ /**
+ * @param finder
+ */
+ public WebServletProcessor(AnnotationFinder<AnnotatedElement> finder)
+ {
+ super(finder);
+ }
+
+ public WebMetaData create(Class<?> element)
+ {
+ WebServlet webServlet = finder.getAnnotation(element, WebServlet.class);
+ if (webServlet == null)
+ return null;
+
+ WebMetaData metaData = new WebMetaData();
+ ServletsMetaData servlets = new ServletsMetaData();
+ ServletMetaData servlet = new ServletMetaData();
+ servlet.setServletClass(element.getName());
+ String servletName = null;
+ if (webServlet.name().length() == 0)
+ servletName = element.getName();
+ else
+ servletName = webServlet.name();
+ servlet.setServletName(servletName);
+ if (webServlet.loadOnStartup() > 0)
+ servlet.setLoadOnStartup(webServlet.loadOnStartup());
+ servlet.setAsyncSupported(webServlet.asyncSupported());
+ if (webServlet.initParams() != null)
+ {
+ List<ParamValueMetaData> initParams = new ArrayList<ParamValueMetaData>();
+ for (WebInitParam webInitParam : webServlet.initParams())
+ {
+ ParamValueMetaData paramValue = new ParamValueMetaData();
+ paramValue.setParamName(webInitParam.name());
+ paramValue.setParamValue(webInitParam.value());
+ initParams.add(paramValue);
+ }
+ servlet.setInitParam(initParams);
+ }
+ // TODO: description group ?
+ servlets.add(servlet);
+ metaData.setServlets(servlets);
+ if (webServlet.urlPatterns() != null || webServlet.value() != null)
+ {
+ List<ServletMappingMetaData> servletMappings = new ArrayList<ServletMappingMetaData>();
+ ServletMappingMetaData servletMapping = new ServletMappingMetaData();
+ servletMapping.setServletName(servletName);
+ List<String> urlPatterns = new ArrayList<String>();
+ if (webServlet.urlPatterns() != null)
+ {
+ for (String urlPattern : webServlet.urlPatterns())
+ {
+ urlPatterns.add(urlPattern);
+ }
+ }
+ if (webServlet.value() != null)
+ {
+ for (String urlPattern : webServlet.value())
+ {
+ urlPatterns.add(urlPattern);
+ }
+ }
+ servletMapping.setUrlPatterns(urlPatterns);
+ servletMappings.add(servletMapping);
+ metaData.setServletMappings(servletMappings);
+ }
+ return metaData;
+ }
+
+ public void process(WebMetaData metaData, Class<?> type)
+ {
+ WebServlet annotation = finder.getAnnotation(type, WebServlet.class);
+ if(annotation == null)
+ return;
+
+ WebMetaData servletMetaData = create(type);
+ if (metaData.getServlets() == null)
+ {
+ metaData.setServlets(servletMetaData.getServlets());
+ }
+ else
+ {
+ metaData.getServlets().addAll(servletMetaData.getServlets());
+ }
+ if (metaData.getServletMappings() == null)
+ {
+ metaData.setServletMappings(servletMetaData.getServletMappings());
+ }
+ else if (servletMetaData.getServletMappings() != null)
+ {
+ metaData.getServletMappings().addAll(servletMetaData.getServletMappings());
+ }
+ }
+
+ public Collection<Class<? extends Annotation>> getAnnotationTypes()
+ {
+ return ProcessorUtils.createAnnotationSet(WebServlet.class);
+ }
+
+}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/jboss (from rev 94608, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/jboss)
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec (from rev 94608, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec)
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,120 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2007, Red Hat Middleware LLC, and individual contributors
- * 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.metadata.web.spec;
-
-import javax.xml.bind.annotation.XmlType;
-
-import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
-import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptions;
-
-
-/**
- * taglib/tag-file metadata
- *
- * @author Remy Maucherat
- * @version $Revision: 75201 $
- */
- at XmlType(name="tld-attributeType",
- namespace=JavaEEMetaDataConstants.JAVAEE_NS,
- propOrder={"descriptions", "name", "required", "rtexprvalue", "type", "deferredValue", "deferredMethod",
- "fragment", "descriptions"})
-public class AttributeMetaData extends NamedMetaDataWithDescriptions
-{
- private static final long serialVersionUID = 1;
-
- private boolean required = false;
- private boolean rtexprvalue = false;
- private String type;
- private boolean fragment = false;
- private DeferredValueMetaData deferredValue;
- private DeferredMethodMetaData deferredMethod;
-
- public String getType()
- {
- return type;
- }
- public void setType(String type)
- {
- this.type = type;
- }
-
- public boolean getRequired()
- {
- return required;
- }
- public void setRequired(boolean required)
- {
- this.required = required;
- }
-
- public boolean getRtexprvalue()
- {
- return rtexprvalue;
- }
- public void setRtexprvalue(boolean rtexprvalue)
- {
- this.rtexprvalue = rtexprvalue;
- }
-
- public boolean getFragment()
- {
- return fragment;
- }
- public void setFragment(boolean fragment)
- {
- this.fragment = fragment;
- }
-
- public DeferredValueMetaData getDeferredValue()
- {
- return deferredValue;
- }
- public void setDeferredValue(DeferredValueMetaData deferredValue)
- {
- this.deferredValue = deferredValue;
- }
-
- public DeferredMethodMetaData getDeferredMethod()
- {
- return deferredMethod;
- }
- public void setDeferredMethod(DeferredMethodMetaData deferredMethod)
- {
- this.deferredMethod = deferredMethod;
- }
-
- public String toString()
- {
- StringBuilder tmp = new StringBuilder("AttributeMetaData(id=");
- tmp.append(getId());
- tmp.append(",required=");
- tmp.append(required);
- tmp.append(",rtexprvalue=");
- tmp.append(rtexprvalue);
- tmp.append(",fragment=");
- tmp.append(fragment);
- tmp.append(",type=");
- tmp.append(type);
- tmp.append(')');
- return tmp.toString();
- }
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java (from rev 95409, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/AttributeMetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,120 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.web.spec;
+
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptions;
+
+
+/**
+ * taglib/tag-file metadata
+ *
+ * @author Remy Maucherat
+ * @version $Revision: 75201 $
+ */
+ at XmlType(name="tld-attributeType",
+ namespace=JavaEEMetaDataConstants.JAVAEE_NS,
+ propOrder={"descriptions", "name", "required", "rtexprvalue", "type", "deferredValue", "deferredMethod",
+ "fragment", "descriptions"})
+public class AttributeMetaData extends NamedMetaDataWithDescriptions
+{
+ private static final long serialVersionUID = 1;
+
+ private String required;
+ private String rtexprvalue;
+ private String type;
+ private String fragment;
+ private DeferredValueMetaData deferredValue;
+ private DeferredMethodMetaData deferredMethod;
+
+ public String getType()
+ {
+ return type;
+ }
+ public void setType(String type)
+ {
+ this.type = type;
+ }
+
+ public String getRequired()
+ {
+ return required;
+ }
+ public void setRequired(String required)
+ {
+ this.required = required;
+ }
+
+ public String getRtexprvalue()
+ {
+ return rtexprvalue;
+ }
+ public void setRtexprvalue(String rtexprvalue)
+ {
+ this.rtexprvalue = rtexprvalue;
+ }
+
+ public String getFragment()
+ {
+ return fragment;
+ }
+ public void setFragment(String fragment)
+ {
+ this.fragment = fragment;
+ }
+
+ public DeferredValueMetaData getDeferredValue()
+ {
+ return deferredValue;
+ }
+ public void setDeferredValue(DeferredValueMetaData deferredValue)
+ {
+ this.deferredValue = deferredValue;
+ }
+
+ public DeferredMethodMetaData getDeferredMethod()
+ {
+ return deferredMethod;
+ }
+ public void setDeferredMethod(DeferredMethodMetaData deferredMethod)
+ {
+ this.deferredMethod = deferredMethod;
+ }
+
+ public String toString()
+ {
+ StringBuilder tmp = new StringBuilder("AttributeMetaData(id=");
+ tmp.append(getId());
+ tmp.append(",required=");
+ tmp.append(required);
+ tmp.append(",rtexprvalue=");
+ tmp.append(rtexprvalue);
+ tmp.append(",fragment=");
+ tmp.append(fragment);
+ tmp.append(",type=");
+ tmp.append(type);
+ tmp.append(')');
+ return tmp.toString();
+ }
+}
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,146 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2007, Red Hat Middleware LLC, and individual contributors
- * 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.metadata.web.spec;
-
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
-
-import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
-import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptionGroup;
-
-/**
- * taglib/tag metadata
- *
- * @author Remy Maucherat
- * @version $Revision: 75201 $
- */
- at XmlType(name="tagType",
- namespace=JavaEEMetaDataConstants.JAVAEE_NS,
- propOrder={"descriptionGroup", "name", "tagClass", "teiClass", "bodyContent", "descriptionGroup", "variables", "attributes",
- "dynamicAttributes", "examples", "tagExtensions"})
-public class TagMetaData extends NamedMetaDataWithDescriptionGroup
-{
- private static final long serialVersionUID = 1;
-
- private String tagClass;
- private String teiClass;
- private BodyContentType bodyContent;
- private List<VariableMetaData> variables;
- private List<AttributeMetaData> attributes;
- private boolean dynamicAttributes = false;
- private List<String> examples;
- private List<TldExtensionMetaData> tagExtensions;
-
- public String getTagClass()
- {
- return tagClass;
- }
- public void setTagClass(String tagClass)
- {
- this.tagClass = tagClass;
- }
-
- public String getTeiClass()
- {
- return teiClass;
- }
- public void setTeiClass(String teiClass)
- {
- this.teiClass = teiClass;
- }
-
- public BodyContentType getBodyContent()
- {
- return bodyContent;
- }
- public void setBodyContent(BodyContentType bodyContent)
- {
- this.bodyContent = bodyContent;
- }
-
- public boolean getDynamicAttributes()
- {
- return dynamicAttributes;
- }
- public void setDynamicAttributes(boolean dynamicAttributes)
- {
- this.dynamicAttributes = dynamicAttributes;
- }
-
- public List<VariableMetaData> getVariables()
- {
- return variables;
- }
- @XmlElement(name="variable")
- public void setVariables(List<VariableMetaData> variables)
- {
- this.variables = variables;
- }
-
- public List<AttributeMetaData> getAttributes()
- {
- return attributes;
- }
- @XmlElement(name="attribute")
- public void setAttributes(List<AttributeMetaData> attributes)
- {
- this.attributes = attributes;
- }
-
- public List<String> getExamples()
- {
- return examples;
- }
- @XmlElement(name="example")
- public void setExamples(List<String> examples)
- {
- this.examples = examples;
- }
-
- public List<TldExtensionMetaData> getTagExtensions()
- {
- return tagExtensions;
- }
- @XmlElement(name="tag-extension")
- public void setTagExtensions(List<TldExtensionMetaData> tagExtensions)
- {
- this.tagExtensions = tagExtensions;
- }
-
- public String toString()
- {
- StringBuilder tmp = new StringBuilder("ServletMetaData(id=");
- tmp.append(getId());
- tmp.append(",tagClass=");
- tmp.append(tagClass);
- tmp.append(",teiClass=");
- tmp.append(teiClass);
- tmp.append(",dynamicAttributes=");
- tmp.append(dynamicAttributes);
- tmp.append(",bodyContent=");
- tmp.append(bodyContent);
- tmp.append(')');
- return tmp.toString();
- }
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java (from rev 95409, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/TagMetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,146 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.web.spec;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptionGroup;
+
+/**
+ * taglib/tag metadata
+ *
+ * @author Remy Maucherat
+ * @version $Revision: 75201 $
+ */
+ at XmlType(name="tagType",
+ namespace=JavaEEMetaDataConstants.JAVAEE_NS,
+ propOrder={"descriptionGroup", "name", "tagClass", "teiClass", "bodyContent", "descriptionGroup", "variables", "attributes",
+ "dynamicAttributes", "examples", "tagExtensions"})
+public class TagMetaData extends NamedMetaDataWithDescriptionGroup
+{
+ private static final long serialVersionUID = 1;
+
+ private String tagClass;
+ private String teiClass;
+ private BodyContentType bodyContent;
+ private List<VariableMetaData> variables;
+ private List<AttributeMetaData> attributes;
+ private String dynamicAttributes;
+ private List<String> examples;
+ private List<TldExtensionMetaData> tagExtensions;
+
+ public String getTagClass()
+ {
+ return tagClass;
+ }
+ public void setTagClass(String tagClass)
+ {
+ this.tagClass = tagClass;
+ }
+
+ public String getTeiClass()
+ {
+ return teiClass;
+ }
+ public void setTeiClass(String teiClass)
+ {
+ this.teiClass = teiClass;
+ }
+
+ public BodyContentType getBodyContent()
+ {
+ return bodyContent;
+ }
+ public void setBodyContent(BodyContentType bodyContent)
+ {
+ this.bodyContent = bodyContent;
+ }
+
+ public String getDynamicAttributes()
+ {
+ return dynamicAttributes;
+ }
+ public void setDynamicAttributes(String dynamicAttributes)
+ {
+ this.dynamicAttributes = dynamicAttributes;
+ }
+
+ public List<VariableMetaData> getVariables()
+ {
+ return variables;
+ }
+ @XmlElement(name="variable")
+ public void setVariables(List<VariableMetaData> variables)
+ {
+ this.variables = variables;
+ }
+
+ public List<AttributeMetaData> getAttributes()
+ {
+ return attributes;
+ }
+ @XmlElement(name="attribute")
+ public void setAttributes(List<AttributeMetaData> attributes)
+ {
+ this.attributes = attributes;
+ }
+
+ public List<String> getExamples()
+ {
+ return examples;
+ }
+ @XmlElement(name="example")
+ public void setExamples(List<String> examples)
+ {
+ this.examples = examples;
+ }
+
+ public List<TldExtensionMetaData> getTagExtensions()
+ {
+ return tagExtensions;
+ }
+ @XmlElement(name="tag-extension")
+ public void setTagExtensions(List<TldExtensionMetaData> tagExtensions)
+ {
+ this.tagExtensions = tagExtensions;
+ }
+
+ public String toString()
+ {
+ StringBuilder tmp = new StringBuilder("ServletMetaData(id=");
+ tmp.append(getId());
+ tmp.append(",tagClass=");
+ tmp.append(tagClass);
+ tmp.append(",teiClass=");
+ tmp.append(teiClass);
+ tmp.append(",dynamicAttributes=");
+ tmp.append(dynamicAttributes);
+ tmp.append(",bodyContent=");
+ tmp.append(bodyContent);
+ tmp.append(')');
+ return tmp.toString();
+ }
+}
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,93 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2007, Red Hat Middleware LLC, and individual contributors
- * 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.metadata.web.spec;
-
-import javax.xml.bind.annotation.XmlType;
-
-import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
-import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptions;
-
-/**
- * The tag/variable metadata
- *
- * @author Remy Maucherat
- * @version $Revision: 81768 $
- */
- at XmlType(name="variableType",
- namespace=JavaEEMetaDataConstants.JAVAEE_NS,
- propOrder={"descriptions", "nameGiven", "nameFromAttribute", "variableClass", "declare", "scope", "descriptions"})
-public class VariableMetaData extends IdMetaDataImplWithDescriptions
-{
- private static final long serialVersionUID = 1;
-
- private String nameGiven;
- private String nameFromAttribute;
- private String variableClass;
- private boolean declare = true;
- private VariableScopeType scope = VariableScopeType.NESTED;
-
- public String getNameGiven()
- {
- return nameGiven;
- }
- public void setNameGiven(String nameGiven)
- {
- this.nameGiven = nameGiven;
- }
-
- public String getNameFromAttribute()
- {
- return nameFromAttribute;
- }
- public void setNameFromAttribute(String nameFromAttribute)
- {
- this.nameFromAttribute = nameFromAttribute;
- }
-
- public String getVariableClass()
- {
- return variableClass;
- }
- public void setVariableClass(String variableClass)
- {
- this.variableClass = variableClass;
- }
-
- public boolean getDeclare()
- {
- return declare;
- }
- public void setDeclare(boolean declare)
- {
- this.declare = declare;
- }
-
- public VariableScopeType getScope()
- {
- return scope;
- }
- public void setScope(VariableScopeType scope)
- {
- this.scope = scope;
- }
-
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java (from rev 95409, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/VariableMetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,93 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.web.spec;
+
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptions;
+
+/**
+ * The tag/variable metadata
+ *
+ * @author Remy Maucherat
+ * @version $Revision: 81768 $
+ */
+ at XmlType(name="variableType",
+ namespace=JavaEEMetaDataConstants.JAVAEE_NS,
+ propOrder={"descriptions", "nameGiven", "nameFromAttribute", "variableClass", "declare", "scope", "descriptions"})
+public class VariableMetaData extends IdMetaDataImplWithDescriptions
+{
+ private static final long serialVersionUID = 1;
+
+ private String nameGiven;
+ private String nameFromAttribute;
+ private String variableClass;
+ private String declare;
+ private VariableScopeType scope;
+
+ public String getNameGiven()
+ {
+ return nameGiven;
+ }
+ public void setNameGiven(String nameGiven)
+ {
+ this.nameGiven = nameGiven;
+ }
+
+ public String getNameFromAttribute()
+ {
+ return nameFromAttribute;
+ }
+ public void setNameFromAttribute(String nameFromAttribute)
+ {
+ this.nameFromAttribute = nameFromAttribute;
+ }
+
+ public String getVariableClass()
+ {
+ return variableClass;
+ }
+ public void setVariableClass(String variableClass)
+ {
+ this.variableClass = variableClass;
+ }
+
+ public String getDeclare()
+ {
+ return declare;
+ }
+ public void setDeclare(String declare)
+ {
+ this.declare = declare;
+ }
+
+ public VariableScopeType getScope()
+ {
+ return scope;
+ }
+ public void setScope(VariableScopeType scope)
+ {
+ this.scope = scope;
+ }
+
+}
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,58 +0,0 @@
-package org.jboss.metadata.web.spec;
-
-import javax.xml.bind.annotation.XmlAttribute;
-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.metadata.javaee.spec.JavaEEMetaDataConstants;
-import org.jboss.xb.annotations.JBossXmlSchema;
-
-/**
- * Web application spec metadata.
- *
- * @author Scott.Stark at jboss.org
- * @version $Revision: 81860 $
- */
- at XmlRootElement(name="web-app", namespace=JavaEEMetaDataConstants.JAVAEE_NS)
- at JBossXmlSchema(
- xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.JAVAEE_NS, prefix = "jee")},
- ignoreUnresolvedFieldOrClass=false,
- namespace=JavaEEMetaDataConstants.JAVAEE_NS,
- elementFormDefault=XmlNsForm.QUALIFIED,
- normalizeSpace=true)
- at XmlType(name="web-appType",
- namespace=JavaEEMetaDataConstants.JAVAEE_NS,
- propOrder={"absoluteOrdering", "descriptionGroup", "name", "distributable", "contextParams", "filters", "filterMappings", "listeners", "servlets",
- "servletMappings", "sessionConfig", "mimeMappings", "welcomeFileList", "errorPages", "jspConfig", "securityConstraints",
- "loginConfig", "securityRoles", "jndiEnvironmentRefsGroup", "messageDestinations", "localEncodings", "absoluteOrdering"})
-public class Web30MetaData extends WebMetaData
-{
- private static final long serialVersionUID = 1;
- private boolean metadataComplete;
- private AbsoluteOrderingMetaData absoluteOrdering;
-
-
- public boolean isMetadataComplete()
- {
- return metadataComplete;
- }
- @XmlAttribute(name="metadata-complete")
- public void setMetadataComplete(boolean metadataComplete)
- {
- this.metadataComplete = metadataComplete;
- }
-
- public AbsoluteOrderingMetaData getAbsoluteOrdering()
- {
- return absoluteOrdering;
- }
- @XmlElement(name="absolute-ordering")
- public void setAbsoluteOrdering(AbsoluteOrderingMetaData absoluteOrdering)
- {
- this.absoluteOrdering = absoluteOrdering;
- }
-
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java (from rev 95409, projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,68 @@
+package org.jboss.metadata.web.spec;
+
+import javax.xml.bind.annotation.XmlAttribute;
+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.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * Web application spec metadata.
+ *
+ * @author Scott.Stark at jboss.org
+ * @version $Revision: 81860 $
+ */
+ at XmlRootElement(name="web-app", namespace=JavaEEMetaDataConstants.JAVAEE_NS)
+ at JBossXmlSchema(
+ xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.JAVAEE_NS, prefix = "jee")},
+ ignoreUnresolvedFieldOrClass=false,
+ namespace=JavaEEMetaDataConstants.JAVAEE_NS,
+ elementFormDefault=XmlNsForm.QUALIFIED,
+ normalizeSpace=true)
+ at XmlType(name="web-appType",
+ namespace=JavaEEMetaDataConstants.JAVAEE_NS,
+ propOrder={"moduleName", "absoluteOrdering", "descriptionGroup", "name", "distributable", "contextParams", "filters", "filterMappings", "listeners", "servlets",
+ "servletMappings", "sessionConfig", "mimeMappings", "welcomeFileList", "errorPages", "jspConfig", "securityConstraints",
+ "loginConfig", "securityRoles", "jndiEnvironmentRefsGroup", "messageDestinations", "localEncodings", "absoluteOrdering"})
+public class Web30MetaData extends WebMetaData
+{
+ private static final long serialVersionUID = 1;
+ private boolean metadataComplete;
+ private AbsoluteOrderingMetaData absoluteOrdering;
+ private String moduleName;
+
+
+ public boolean isMetadataComplete()
+ {
+ return metadataComplete;
+ }
+ @XmlAttribute(name="metadata-complete")
+ public void setMetadataComplete(boolean metadataComplete)
+ {
+ this.metadataComplete = metadataComplete;
+ }
+
+ public AbsoluteOrderingMetaData getAbsoluteOrdering()
+ {
+ return absoluteOrdering;
+ }
+ @XmlElement(name="absolute-ordering")
+ public void setAbsoluteOrdering(AbsoluteOrderingMetaData absoluteOrdering)
+ {
+ this.absoluteOrdering = absoluteOrdering;
+ }
+
+ public String getModuleName()
+ {
+ return moduleName;
+ }
+ public void setModuleName(String moduleName)
+ {
+ this.moduleName = moduleName;
+ }
+
+}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema (from rev 94608, projects/metadata/web/trunk/src/main/resources/schema)
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/jsp_2_0.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,307 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://java.sun.com/xml/ns/j2ee"
- xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.0">
- <xsd:annotation>
- <xsd:documentation>
- @(#)jsp_2_0.xsds 1.17 03/18/03
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- Copyright 2002 Sun Microsystems, Inc., 901 San Antonio
- Road, Palo Alto, California 94303, U.S.A. All rights
- reserved.
-
- Sun Microsystems, Inc. has intellectual property rights
- relating to technology described in this document. In
- particular, and without limitation, these intellectual
- property rights may include one or more of the U.S. patents
- listed at http://www.sun.com/patents and one or more
- additional patents or pending patent applications in the
- U.S. and other countries.
-
- This document and the technology which it describes are
- distributed under licenses restricting their use, copying,
- distribution, and decompilation. No part of this document
- may be reproduced in any form by any means without prior
- written authorization of Sun and its licensors, if any.
-
- Third-party software, including font technology, is
- copyrighted and licensed from Sun suppliers.
-
- Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
- JavaServer Pages, Enterprise JavaBeans and the Java Coffee
- Cup logo are trademarks or registered trademarks of Sun
- Microsystems, Inc. in the U.S. and other countries.
-
- Federal Acquisitions: Commercial Software - Government Users
- Subject to Standard License Terms and Conditions.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- This is the XML Schema for the JSP 2.0 deployment descriptor
- types. The JSP 2.0 schema contains all the special
- structures and datatypes that are necessary to use JSP files
- from a web application.
-
- The contents of this schema is used by the web-app_2_4.xsd
- file to define JSP specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- The following conventions apply to all J2EE
- deployment descriptor elements unless indicated otherwise.
-
- - In elements that specify a pathname to a file within the
- same JAR file, relative filenames (i.e., those not
- starting with "/") are considered relative to the root of
- the JAR file's namespace. Absolute filenames (i.e., those
- starting with "/") also specify names in the root of the
- JAR file's namespace. In general, relative names are
- preferred. The exception is .war files where absolute
- names are preferred for consistency with the Servlet API.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="j2ee_1_4.xsd"/>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="jsp-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The jsp-configType is used to provide global configuration
- information for the JSP files in a web application. It has
- two subelements, taglib and jsp-property-group.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="taglib"
- type="j2ee:taglibType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="jsp-property-group"
- type="j2ee:jsp-property-groupType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="jsp-fileType">
- <xsd:annotation>
- <xsd:documentation>
-
- The jsp-file element contains the full path to a JSP file
- within the web application beginning with a `/'.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:pathType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="jsp-property-groupType">
- <xsd:annotation>
- <xsd:documentation>
-
- The jsp-property-groupType is used to group a number of
- files so they can be given global property information.
- All files so described are deemed to be JSP files. The
- following additional properties can be described:
-
- - Control whether EL is ignored
- - Control whether scripting elements are invalid
- - Indicate pageEncoding information.
- - Indicate that a resource is a JSP document (XML)
- - Prelude and Coda automatic includes.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="url-pattern"
- type="j2ee:url-patternType"
- maxOccurs="unbounded"/>
- <xsd:element name="el-ignored"
- type="j2ee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Can be used to easily set the isELIgnored
- property of a group of JSP pages. By default, the
- EL evaluation is enabled for Web Applications using
- a Servlet 2.4 or greater web.xml, and disabled
- otherwise.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="page-encoding"
- type="j2ee:string"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The valid values of page-encoding are those of the
- pageEncoding page directive. It is a
- translation-time error to name different encodings
- in the pageEncoding attribute of the page directive
- of a JSP page and in a JSP configuration element
- matching the page. It is also a translation-time
- error to name different encodings in the prolog
- or text declaration of a document in XML syntax and
- in a JSP configuration element matching the document.
- It is legal to name the same encoding through
- mulitple mechanisms.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="scripting-invalid"
- type="j2ee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Can be used to easily disable scripting in a
- group of JSP pages. By default, scripting is
- enabled.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="is-xml"
- type="j2ee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- If true, denotes that the group of resources
- that match the URL pattern are JSP documents,
- and thus must be interpreted as XML documents.
- If false, the resources are assumed to not
- be JSP documents, unless there is another
- property group that indicates otherwise.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="include-prelude"
- type="j2ee:pathType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The include-prelude element is a context-relative
- path that must correspond to an element in the
- Web Application. When the element is present,
- the given path will be automatically included (as
- in an include directive) at the beginning of each
- JSP page in this jsp-property-group.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="include-coda"
- type="j2ee:pathType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The include-coda element is a context-relative
- path that must correspond to an element in the
- Web Application. When the element is present,
- the given path will be automatically included (as
- in an include directive) at the end of each
- JSP page in this jsp-property-group.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="taglibType">
- <xsd:annotation>
- <xsd:documentation>
-
- The taglibType defines the syntax for declaring in
- the deployment descriptor that a tag library is
- available to the application. This can be done
- to override implicit map entries from TLD files and
- from the container.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="taglib-uri"
- type="j2ee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- A taglib-uri element describes a URI identifying a
- tag library used in the web application. The body
- of the taglib-uri element may be either an
- absolute URI specification, or a relative URI.
- There should be no entries in web.xml with the
- same taglib-uri value.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="taglib-location"
- type="j2ee:pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- the taglib-location element contains the location
- (as a resource relative to the root of the web
- application) where to find the Tag Library
- Description file for the tag library.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-</xsd:schema>
-
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/jsp_2_0.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_0.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,308 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://java.sun.com/xml/ns/j2ee"
+ xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.0">
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)jsp_2_0.xsds 1.17 03/18/03
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2003 Sun Microsystems, Inc., 901 San Antonio
+ Road, Palo Alto, California 94303, U.S.A. All rights
+ reserved.
+
+ Sun Microsystems, Inc. has intellectual property rights
+ relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is the XML Schema for the JSP 2.0 deployment descriptor
+ types. The JSP 2.0 schema contains all the special
+ structures and datatypes that are necessary to use JSP files
+ from a web application.
+
+ The contents of this schema is used by the web-app_2_4.xsd
+ file to define JSP specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all J2EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="j2ee_1_4.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-configType is used to provide global configuration
+ information for the JSP files in a web application. It has
+ two subelements, taglib and jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="taglib"
+ type="j2ee:taglibType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jsp-property-group"
+ type="j2ee:jsp-property-groupType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-fileType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-file element contains the full path to a JSP file
+ within the web application beginning with a `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:pathType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-property-groupType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-property-groupType is used to group a number of
+ files so they can be given global property information.
+ All files so described are deemed to be JSP files. The
+ following additional properties can be described:
+
+ - Control whether EL is ignored
+ - Control whether scripting elements are invalid
+ - Indicate pageEncoding information.
+ - Indicate that a resource is a JSP document (XML)
+ - Prelude and Coda automatic includes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="url-pattern"
+ type="j2ee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="el-ignored"
+ type="j2ee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Can be used to easily set the isELIgnored
+ property of a group of JSP pages. By default, the
+ EL evaluation is enabled for Web Applications using
+ a Servlet 2.4 or greater web.xml, and disabled
+ otherwise.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="page-encoding"
+ type="j2ee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The valid values of page-encoding are those of the
+ pageEncoding page directive. It is a
+ translation-time error to name different encodings
+ in the pageEncoding attribute of the page directive
+ of a JSP page and in a JSP configuration element
+ matching the page. It is also a translation-time
+ error to name different encodings in the prolog
+ or text declaration of a document in XML syntax and
+ in a JSP configuration element matching the document.
+ It is legal to name the same encoding through
+ mulitple mechanisms.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="scripting-invalid"
+ type="j2ee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Can be used to easily disable scripting in a
+ group of JSP pages. By default, scripting is
+ enabled.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="is-xml"
+ type="j2ee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If true, denotes that the group of resources
+ that match the URL pattern are JSP documents,
+ and thus must be interpreted as XML documents.
+ If false, the resources are assumed to not
+ be JSP documents, unless there is another
+ property group that indicates otherwise.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="include-prelude"
+ type="j2ee:pathType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The include-prelude element is a context-relative
+ path that must correspond to an element in the
+ Web Application. When the element is present,
+ the given path will be automatically included (as
+ in an include directive) at the beginning of each
+ JSP page in this jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="include-coda"
+ type="j2ee:pathType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The include-coda element is a context-relative
+ path that must correspond to an element in the
+ Web Application. When the element is present,
+ the given path will be automatically included (as
+ in an include directive) at the end of each
+ JSP page in this jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="taglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglibType defines the syntax for declaring in
+ the deployment descriptor that a tag library is
+ available to the application. This can be done
+ to override implicit map entries from TLD files and
+ from the container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="taglib-uri"
+ type="j2ee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A taglib-uri element describes a URI identifying a
+ tag library used in the web application. The body
+ of the taglib-uri element may be either an
+ absolute URI specification, or a relative URI.
+ There should be no entries in web.xml with the
+ same taglib-uri value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="taglib-location"
+ type="j2ee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ the taglib-location element contains the location
+ (as a resource relative to the root of the web
+ application) where to find the Tag Library
+ Description file for the tag library.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
+
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/jsp_2_1.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,342 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://java.sun.com/xml/ns/javaee"
- xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.1">
- <xsd:annotation>
- <xsd:documentation>
- @(#)jsp_2_1.xsds 1.5 08/11/05
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- Copyright 2003-2006 Sun Microsystems, Inc.
- 4150 Network Circle
- Santa Clara, California 95054
- U.S.A
- All rights reserved.
-
- Sun Microsystems, Inc. has intellectual property rights
- relating to technology described in this document. In
- particular, and without limitation, these intellectual
- property rights may include one or more of the U.S. patents
- listed at http://www.sun.com/patents and one or more
- additional patents or pending patent applications in the
- U.S. and other countries.
-
- This document and the technology which it describes are
- distributed under licenses restricting their use, copying,
- distribution, and decompilation. No part of this document
- may be reproduced in any form by any means without prior
- written authorization of Sun and its licensors, if any.
-
- Third-party software, including font technology, is
- copyrighted and licensed from Sun suppliers.
-
- Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
- JavaServer Pages, Enterprise JavaBeans and the Java Coffee
- Cup logo are trademarks or registered trademarks of Sun
- Microsystems, Inc. in the U.S. and other countries.
-
- Federal Acquisitions: Commercial Software - Government Users
- Subject to Standard License Terms and Conditions.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- This is the XML Schema for the JSP 2.1 deployment descriptor
- types. The JSP 2.1 schema contains all the special
- structures and datatypes that are necessary to use JSP files
- from a web application.
-
- The contents of this schema is used by the web-app_2_5.xsd
- file to define JSP specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- The following conventions apply to all Java EE
- deployment descriptor elements unless indicated otherwise.
-
- - In elements that specify a pathname to a file within the
- same JAR file, relative filenames (i.e., those not
- starting with "/") are considered relative to the root of
- the JAR file's namespace. Absolute filenames (i.e., those
- starting with "/") also specify names in the root of the
- JAR file's namespace. In general, relative names are
- preferred. The exception is .war files where absolute
- names are preferred for consistency with the Servlet API.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="javaee_5.xsd"/>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="jsp-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The jsp-configType is used to provide global configuration
- information for the JSP files in a web application. It has
- two subelements, taglib and jsp-property-group.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="taglib"
- type="javaee:taglibType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="jsp-property-group"
- type="javaee:jsp-property-groupType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="jsp-fileType">
- <xsd:annotation>
- <xsd:documentation>
-
- The jsp-file element contains the full path to a JSP file
- within the web application beginning with a `/'.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:pathType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="jsp-property-groupType">
- <xsd:annotation>
- <xsd:documentation>
-
- The jsp-property-groupType is used to group a number of
- files so they can be given global property information.
- All files so described are deemed to be JSP files. The
- following additional properties can be described:
-
- - Control whether EL is ignored.
- - Control whether scripting elements are invalid.
- - Indicate pageEncoding information.
- - Indicate that a resource is a JSP document (XML).
- - Prelude and Coda automatic includes.
- - Control whether the character sequence #{ is allowed
- when used as a String literal.
- - Control whether template text containing only
- whitespaces must be removed from the response output.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"
- maxOccurs="unbounded"/>
- <xsd:element name="el-ignored"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Can be used to easily set the isELIgnored
- property of a group of JSP pages. By default, the
- EL evaluation is enabled for Web Applications using
- a Servlet 2.4 or greater web.xml, and disabled
- otherwise.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="page-encoding"
- type="javaee:string"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The valid values of page-encoding are those of the
- pageEncoding page directive. It is a
- translation-time error to name different encodings
- in the pageEncoding attribute of the page directive
- of a JSP page and in a JSP configuration element
- matching the page. It is also a translation-time
- error to name different encodings in the prolog
- or text declaration of a document in XML syntax and
- in a JSP configuration element matching the document.
- It is legal to name the same encoding through
- mulitple mechanisms.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="scripting-invalid"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Can be used to easily disable scripting in a
- group of JSP pages. By default, scripting is
- enabled.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="is-xml"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- If true, denotes that the group of resources
- that match the URL pattern are JSP documents,
- and thus must be interpreted as XML documents.
- If false, the resources are assumed to not
- be JSP documents, unless there is another
- property group that indicates otherwise.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="include-prelude"
- type="javaee:pathType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The include-prelude element is a context-relative
- path that must correspond to an element in the
- Web Application. When the element is present,
- the given path will be automatically included (as
- in an include directive) at the beginning of each
- JSP page in this jsp-property-group.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="include-coda"
- type="javaee:pathType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The include-coda element is a context-relative
- path that must correspond to an element in the
- Web Application. When the element is present,
- the given path will be automatically included (as
- in an include directive) at the end of each
- JSP page in this jsp-property-group.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="deferred-syntax-allowed-as-literal"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The character sequence #{ is reserved for EL expressions.
- Consequently, a translation error occurs if the #{
- character sequence is used as a String literal, unless
- this element is enabled (true). Disabled (false) by
- default.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="trim-directive-whitespaces"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Indicates that template text containing only whitespaces
- must be removed from the response output. It has no
- effect on JSP documents (XML syntax). Disabled (false)
- by default.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="taglibType">
- <xsd:annotation>
- <xsd:documentation>
-
- The taglibType defines the syntax for declaring in
- the deployment descriptor that a tag library is
- available to the application. This can be done
- to override implicit map entries from TLD files and
- from the container.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="taglib-uri"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- A taglib-uri element describes a URI identifying a
- tag library used in the web application. The body
- of the taglib-uri element may be either an
- absolute URI specification, or a relative URI.
- There should be no entries in web.xml with the
- same taglib-uri value.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="taglib-location"
- type="javaee:pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- the taglib-location element contains the location
- (as a resource relative to the root of the web
- application) where to find the Tag Library
- Description file for the tag library.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-</xsd:schema>
-
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/jsp_2_1.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/jsp_2_1.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,343 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.1">
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)jsp_2_1.xsds 1.5 08/11/05
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2003-2005 Sun Microsystems, Inc.
+ 4150 Network Circle
+ Santa Clara, California 95054
+ U.S.A
+ All rights reserved.
+
+ Sun Microsystems, Inc. has intellectual property rights
+ relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is the XML Schema for the JSP 2.1 deployment descriptor
+ types. The JSP 2.1 schema contains all the special
+ structures and datatypes that are necessary to use JSP files
+ from a web application.
+
+ The contents of this schema is used by the web-app_2_5.xsd
+ file to define JSP specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_5.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-configType is used to provide global configuration
+ information for the JSP files in a web application. It has
+ two subelements, taglib and jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="taglib"
+ type="javaee:taglibType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jsp-property-group"
+ type="javaee:jsp-property-groupType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-fileType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-file element contains the full path to a JSP file
+ within the web application beginning with a `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:pathType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-property-groupType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-property-groupType is used to group a number of
+ files so they can be given global property information.
+ All files so described are deemed to be JSP files. The
+ following additional properties can be described:
+
+ - Control whether EL is ignored.
+ - Control whether scripting elements are invalid.
+ - Indicate pageEncoding information.
+ - Indicate that a resource is a JSP document (XML).
+ - Prelude and Coda automatic includes.
+ - Control whether the character sequence #{ is allowed
+ when used as a String literal.
+ - Control whether template text containing only
+ whitespaces must be removed from the response output.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="el-ignored"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Can be used to easily set the isELIgnored
+ property of a group of JSP pages. By default, the
+ EL evaluation is enabled for Web Applications using
+ a Servlet 2.4 or greater web.xml, and disabled
+ otherwise.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="page-encoding"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The valid values of page-encoding are those of the
+ pageEncoding page directive. It is a
+ translation-time error to name different encodings
+ in the pageEncoding attribute of the page directive
+ of a JSP page and in a JSP configuration element
+ matching the page. It is also a translation-time
+ error to name different encodings in the prolog
+ or text declaration of a document in XML syntax and
+ in a JSP configuration element matching the document.
+ It is legal to name the same encoding through
+ mulitple mechanisms.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="scripting-invalid"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Can be used to easily disable scripting in a
+ group of JSP pages. By default, scripting is
+ enabled.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="is-xml"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If true, denotes that the group of resources
+ that match the URL pattern are JSP documents,
+ and thus must be interpreted as XML documents.
+ If false, the resources are assumed to not
+ be JSP documents, unless there is another
+ property group that indicates otherwise.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="include-prelude"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The include-prelude element is a context-relative
+ path that must correspond to an element in the
+ Web Application. When the element is present,
+ the given path will be automatically included (as
+ in an include directive) at the beginning of each
+ JSP page in this jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="include-coda"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The include-coda element is a context-relative
+ path that must correspond to an element in the
+ Web Application. When the element is present,
+ the given path will be automatically included (as
+ in an include directive) at the end of each
+ JSP page in this jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="deferred-syntax-allowed-as-literal"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The character sequence #{ is reserved for EL expressions.
+ Consequently, a translation error occurs if the #{
+ character sequence is used as a String literal, unless
+ this element is enabled (true). Disabled (false) by
+ default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="trim-directive-whitespaces"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Indicates that template text containing only whitespaces
+ must be removed from the response output. It has no
+ effect on JSP documents (XML syntax). Disabled (false)
+ by default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="taglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglibType defines the syntax for declaring in
+ the deployment descriptor that a tag library is
+ available to the application. This can be done
+ to override implicit map entries from TLD files and
+ from the container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="taglib-uri"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A taglib-uri element describes a URI identifying a
+ tag library used in the web application. The body
+ of the taglib-uri element may be either an
+ absolute URI specification, or a relative URI.
+ There should be no entries in web.xml with the
+ same taglib-uri value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="taglib-location"
+ type="javaee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ the taglib-location element contains the location
+ (as a resource relative to the root of the web
+ application) where to find the Tag Library
+ Description file for the tag library.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
+
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/web-app_2_4.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,1148 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://java.sun.com/xml/ns/j2ee" xmlns:j2ee="http://java.sun.com/xml/ns/j2ee" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.4">
- <xsd:annotation>
- <xsd:documentation>
- @(#)web-app_2_4.xsds 1.61 04/04/16
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
-
- Copyright 2003-2007 Sun Microsystems, Inc. All rights reserved.
-
- The contents of this file are subject to the terms of either the
- GNU General Public License Version 2 only ("GPL") or the Common
- Development and Distribution License("CDDL") (collectively, the
- "License"). You may not use this file except in compliance with
- the License. You can obtain a copy of the License at
- https://glassfish.dev.java.net/public/CDDL+GPL.html or
- glassfish/bootstrap/legal/LICENSE.txt. See the License for the
- specific language governing permissions and limitations under the
- License.
-
- When distributing the software, include this License Header
- Notice in each file and include the License file at
- glassfish/bootstrap/legal/LICENSE.txt. Sun designates this
- particular file as subject to the "Classpath" exception as
- provided by Sun in the GPL Version 2 section of the License file
- that accompanied this code. If applicable, add the following
- below the License Header, with the fields enclosed by brackets []
- replaced by your own identifying information:
- "Portions Copyrighted [year] [name of copyright owner]"
-
- Contributor(s):
-
- If you wish your version of this file to be governed by only the
- CDDL or only the GPL Version 2, indicate your decision by adding
- "[Contributor] elects to include this software in this
- distribution under the [CDDL or GPL Version 2] license." If you
- don't indicate a single choice of license, a recipient has the
- option to distribute your version of this file under either the
- CDDL, the GPL Version 2 or to extend the choice of license to its
- licensees as provided above. However, if you add GPL Version 2
- code and therefore, elected the GPL Version 2 license, then the
- option applies only if the new code is made subject to such
- option by the copyright holder.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
-
- This is the XML Schema for the Servlet 2.4 deployment descriptor.
- The deployment descriptor must be named "WEB-INF/web.xml" in the
- web application's war file. All Servlet deployment descriptors
- must indicate the web application schema by using the J2EE
- namespace:
-
- http://java.sun.com/xml/ns/j2ee
-
- and by indicating the version of the schema by
- using the version element as shown below:
-
- <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="..."
- version="2.4">
- ...
- </web-app>
-
- The instance documents may indicate the published version of
- the schema using the xsi:schemaLocation attribute for J2EE
- namespace with the following location:
-
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd
-
- ]]>
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- The following conventions apply to all J2EE
- deployment descriptor elements unless indicated otherwise.
-
- - In elements that specify a pathname to a file within the
- same JAR file, relative filenames (i.e., those not
- starting with "/") are considered relative to the root of
- the JAR file's namespace. Absolute filenames (i.e., those
- starting with "/") also specify names in the root of the
- JAR file's namespace. In general, relative names are
- preferred. The exception is .war files where absolute
- names are preferred for consistency with the Servlet API.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="j2ee_1_4.xsd"/>
- <xsd:include schemaLocation="jsp_2_0.xsd"/>
-
-
-<!-- **************************************************** -->
-
-
- <xsd:element name="web-app" type="j2ee:web-appType">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-app element is the root of the deployment
- descriptor for a web application. Note that the sub-elements
- of this element can be in the arbitrary order. Because of
- that, the multiplicity of the elements of distributable,
- session-config, welcome-file-list, jsp-config, login-config,
- and locale-encoding-mapping-list was changed from "?" to "*"
- in this schema. However, the deployment descriptor instance
- file must not contain multiple elements of session-config,
- jsp-config, and login-config. When there are multiple elements of
- welcome-file-list or locale-encoding-mapping-list, the container
- must concatinate the element contents. The multiple occurance
- of the element distributable is redundant and the container
- treats that case exactly in the same way when there is only
- one distributable.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:unique name="web-app-servlet-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet element contains the name of a servlet.
- The name must be unique within the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:servlet"/>
- <xsd:field xpath="j2ee:servlet-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-filter-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The filter element contains the name of a filter.
- The name must be unique within the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:filter"/>
- <xsd:field xpath="j2ee:filter-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-ejb-local-ref-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The ejb-local-ref-name element contains the name of an EJB
- reference. The EJB reference is an entry in the web
- application's environment and is relative to the
- java:comp/env context. The name must be unique within
- the web application.
-
- It is recommended that name is prefixed with "ejb/".
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:ejb-local-ref"/>
- <xsd:field xpath="j2ee:ejb-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-ejb-ref-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The ejb-ref-name element contains the name of an EJB
- reference. The EJB reference is an entry in the web
- application's environment and is relative to the
- java:comp/env context. The name must be unique within
- the web application.
-
- It is recommended that name is prefixed with "ejb/".
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:ejb-ref"/>
- <xsd:field xpath="j2ee:ejb-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-resource-env-ref-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The resource-env-ref-name element specifies the name of
- a resource environment reference; its value is the
- environment entry name used in the web application code.
- The name is a JNDI name relative to the java:comp/env
- context and must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:resource-env-ref"/>
- <xsd:field xpath="j2ee:resource-env-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-message-destination-ref-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The message-destination-ref-name element specifies the name of
- a message destination reference; its value is the
- environment entry name used in the web application code.
- The name is a JNDI name relative to the java:comp/env
- context and must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:message-destination-ref"/>
- <xsd:field xpath="j2ee:message-destination-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-res-ref-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The res-ref-name element specifies the name of a
- resource manager connection factory reference. The name
- is a JNDI name relative to the java:comp/env context.
- The name must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:resource-ref"/>
- <xsd:field xpath="j2ee:res-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-env-entry-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The env-entry-name element contains the name of a web
- application's environment entry. The name is a JNDI
- name relative to the java:comp/env context. The name
- must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:selector xpath="j2ee:env-entry"/>
- <xsd:field xpath="j2ee:env-entry-name"/>
- </xsd:unique>
-
- <xsd:key name="web-app-role-name-key">
- <xsd:annotation>
- <xsd:documentation>
-
- A role-name-key is specified to allow the references
- from the security-role-refs.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:security-role"/>
- <xsd:field xpath="j2ee:role-name"/>
- </xsd:key>
-
- <xsd:keyref name="web-app-role-name-references" refer="j2ee:web-app-role-name-key">
- <xsd:annotation>
- <xsd:documentation>
-
- The keyref indicates the references from
- security-role-ref to a specified role-name.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:servlet/j2ee:security-role-ref"/>
- <xsd:field xpath="j2ee:role-link"/>
- </xsd:keyref>
- </xsd:element>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="auth-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The auth-constraintType indicates the user roles that
- should be permitted access to this resource
- collection. The role-name used here must either correspond
- to the role-name of one of the security-role elements
- defined for this web application, or be the specially
- reserved role-name "*" that is a compact syntax for
- indicating all roles in the web application. If both "*"
- and rolenames appear, the container interprets this as all
- roles. If no roles are defined, no user is allowed access
- to the portion of the web application described by the
- containing security-constraint. The container matches
- role names case sensitively when determining access.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="description" type="j2ee:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="role-name" type="j2ee:role-nameType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="auth-methodType">
- <xsd:annotation>
- <xsd:documentation>
-
- The auth-methodType is used to configure the authentication
- mechanism for the web application. As a prerequisite to
- gaining access to any web resources which are protected by
- an authorization constraint, a user must have authenticated
- using the configured mechanism. Legal values are "BASIC",
- "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
- authentication scheme.
-
- Used in: login-config
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="dispatcherType">
- <xsd:annotation>
- <xsd:documentation>
-
- The dispatcher has four legal values: FORWARD, REQUEST, INCLUDE,
- and ERROR. A value of FORWARD means the Filter will be applied
- under RequestDispatcher.forward() calls. A value of REQUEST
- means the Filter will be applied under ordinary client calls to
- the path or servlet. A value of INCLUDE means the Filter will be
- applied under RequestDispatcher.include() calls. A value of
- ERROR means the Filter will be applied under the error page
- mechanism. The absence of any dispatcher elements in a
- filter-mapping indicates a default of applying filters only under
- ordinary client calls to the path or servlet.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:enumeration value="FORWARD"/>
- <xsd:enumeration value="INCLUDE"/>
- <xsd:enumeration value="REQUEST"/>
- <xsd:enumeration value="ERROR"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="encodingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The encodingType defines IANA character sets.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[^\s]+"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="error-codeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The error-code contains an HTTP error code, ex: 404
-
- Used in: error-page
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:xsdPositiveIntegerType">
- <xsd:pattern value="\d{3}"/>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="error-pageType">
- <xsd:annotation>
- <xsd:documentation>
-
- The error-pageType contains a mapping between an error code
- or exception type to the path of a resource in the web
- application.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="error-code" type="j2ee:error-codeType"/>
-
- <xsd:element name="exception-type" type="j2ee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The exception-type contains a fully qualified class
- name of a Java exception type.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
-
- <xsd:element name="location" type="j2ee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The location element contains the location of the
- resource in the web application relative to the root of
- the web application. The value of the location must have
- a leading `/'.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filter-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- Declaration of the filter mappings in this web
- application is done by using filter-mappingType.
- The container uses the filter-mapping
- declarations to decide which filters to apply to a request,
- and in what order. The container matches the request URI to
- a Servlet in the normal way. To determine which filters to
- apply it matches filter-mapping declarations either on
- servlet-name, or on url-pattern for each filter-mapping
- element, depending on which style is used. The order in
- which filters are invoked is the order in which
- filter-mapping declarations that match a request URI for a
- servlet appear in the list of filter-mapping elements.The
- filter-name value must be the value of the filter-name
- sub-elements of one of the filter declarations in the
- deployment descriptor.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="filter-name" type="j2ee:filter-nameType"/>
- <xsd:choice>
- <xsd:element name="url-pattern" type="j2ee:url-patternType"/>
- <xsd:element name="servlet-name" type="j2ee:servlet-nameType"/>
- </xsd:choice>
- <xsd:element name="dispatcher" type="j2ee:dispatcherType" minOccurs="0" maxOccurs="4"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filter-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The logical name of the filter is declare
- by using filter-nameType. This name is used to map the
- filter. Each filter name is unique within the web
- application.
-
- Used in: filter, filter-mapping
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:extension base="j2ee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filterType">
- <xsd:annotation>
- <xsd:documentation>
-
- The filterType is used to declare a filter in the web
- application. The filter is mapped to either a servlet or a
- URL pattern in the filter-mapping element, using the
- filter-name value to reference. Filters can access the
- initialization parameters declared in the deployment
- descriptor at runtime via the FilterConfig interface.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="filter-name" type="j2ee:filter-nameType"/>
- <xsd:element name="filter-class" type="j2ee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The fully qualified classname of the filter.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="init-param" type="j2ee:param-valueType" minOccurs="0" maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The init-param element contains a name/value pair as
- an initialization param of a servlet filter
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="form-login-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-login-configType specifies the login and error
- pages that should be used in form based login. If form based
- authentication is not used, these elements are ignored.
-
- Used in: login-config
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
-
- <xsd:element name="form-login-page" type="j2ee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-login-page element defines the location in the web
- app where the page that can be used for login can be
- found. The path begins with a leading / and is interpreted
- relative to the root of the WAR.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="form-error-page" type="j2ee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-error-page element defines the location in
- the web app where the error page that is displayed
- when login is not successful can be found.
- The path begins with a leading / and is interpreted
- relative to the root of the WAR.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="http-methodType">
- <xsd:annotation>
-
- <xsd:documentation>
-
- The http-method contains an HTTP method recognized by the
- web-app, for example GET, POST, ...
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:enumeration value="GET"/>
- <xsd:enumeration value="POST"/>
- <xsd:enumeration value="PUT"/>
- <xsd:enumeration value="DELETE"/>
- <xsd:enumeration value="HEAD"/>
- <xsd:enumeration value="OPTIONS"/>
- <xsd:enumeration value="TRACE"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="locale-encoding-mapping-listType">
- <xsd:annotation>
- <xsd:documentation>
-
- The locale-encoding-mapping-list contains one or more
- locale-encoding-mapping(s).
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="locale-encoding-mapping" type="j2ee:locale-encoding-mappingType" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="locale-encoding-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The locale-encoding-mapping contains locale name and
- encoding name. The locale name must be either "Language-code",
- such as "ja", defined by ISO-639 or "Language-code_Country-code",
- such as "ja_JP". "Country code" is defined by ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="locale" type="j2ee:localeType"/>
- <xsd:element name="encoding" type="j2ee:encodingType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="localeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The localeType defines valid locale defined by ISO-639-1
- and ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="login-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The login-configType is used to configure the authentication
- method that should be used, the realm name that should be
- used for this application, and the attributes that are
- needed by the form login mechanism.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="auth-method" type="j2ee:auth-methodType" minOccurs="0"/>
- <xsd:element name="realm-name" type="j2ee:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The realm name element specifies the realm name to
- use in HTTP Basic authorization.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="form-login-config" type="j2ee:form-login-configType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mime-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The mime-mappingType defines a mapping between an extension
- and a mime type.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:annotation>
- <xsd:documentation>
-
- The extension element contains a string describing an
- extension. example: "txt"
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:element name="extension" type="j2ee:string"/>
- <xsd:element name="mime-type" type="j2ee:mime-typeType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mime-typeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The mime-typeType is used to indicate a defined mime type.
-
- Example:
- "text/plain"
-
- Used in: mime-mapping
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="nonEmptyStringType">
- <xsd:annotation>
- <xsd:documentation>
- This type defines a string which contains at least one
- character.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:minLength value="1"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="security-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The security-constraintType is used to associate
- security constraints with one or more web resource
- collections
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="display-name" type="j2ee:display-nameType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="web-resource-collection" type="j2ee:web-resource-collectionType" maxOccurs="unbounded"/>
- <xsd:element name="auth-constraint" type="j2ee:auth-constraintType" minOccurs="0"/>
- <xsd:element name="user-data-constraint" type="j2ee:user-data-constraintType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servlet-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-mappingType defines a mapping between a
- servlet and a url pattern.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="servlet-name" type="j2ee:servlet-nameType"/>
- <xsd:element name="url-pattern" type="j2ee:url-patternType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servlet-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-name element contains the canonical name of the
- servlet. Each servlet name is unique within the web
- application.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:extension base="j2ee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servletType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servletType is used to declare a servlet.
- It contains the declarative data of a
- servlet. If a jsp-file is specified and the load-on-startup
- element is present, then the JSP should be precompiled and
- loaded.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="servlet-name" type="j2ee:servlet-nameType"/>
- <xsd:choice>
- <xsd:element name="servlet-class" type="j2ee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-class element contains the fully
- qualified class name of the servlet.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="jsp-file" type="j2ee:jsp-fileType"/>
-
- </xsd:choice>
-
- <xsd:element name="init-param" type="j2ee:param-valueType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="load-on-startup" type="j2ee:xsdIntegerType" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The load-on-startup element indicates that this
- servlet should be loaded (instantiated and have
- its init() called) on the startup of the web
- application. The optional contents of these
- element must be an integer indicating the order in
- which the servlet should be loaded. If the value
- is a negative integer, or the element is not
- present, the container is free to load the servlet
- whenever it chooses. If the value is a positive
- integer or 0, the container must load and
- initialize the servlet as the application is
- deployed. The container must guarantee that
- servlets marked with lower integers are loaded
- before servlets marked with higher integers. The
- container may choose the order of loading of
- servlets with the same load-on-start-up value.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="run-as" type="j2ee:run-asType" minOccurs="0"/>
- <xsd:element name="security-role-ref" type="j2ee:security-role-refType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="session-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The session-configType defines the session parameters
- for this web application.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="session-timeout" type="j2ee:xsdIntegerType" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The session-timeout element defines the default
- session timeout interval for all sessions created
- in this web application. The specified timeout
- must be expressed in a whole number of minutes.
- If the timeout is 0 or less, the container ensures
- the default behaviour of sessions is never to time
- out. If this element is not specified, the container
- must set its default timeout period.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="transport-guaranteeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The transport-guaranteeType specifies that the communication
- between client and server should be NONE, INTEGRAL, or
- CONFIDENTIAL. NONE means that the application does not
- require any transport guarantees. A value of INTEGRAL means
- that the application requires that the data sent between the
- client and server be sent in such a way that it can't be
- changed in transit. CONFIDENTIAL means that the application
- requires that the data be transmitted in a fashion that
- prevents other entities from observing the contents of the
- transmission. In most cases, the presence of the INTEGRAL or
- CONFIDENTIAL flag will indicate that the use of SSL is
- required.
-
- Used in: user-data-constraint
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:enumeration value="NONE"/>
- <xsd:enumeration value="INTEGRAL"/>
- <xsd:enumeration value="CONFIDENTIAL"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="user-data-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The user-data-constraintType is used to indicate how
- data communicated between the client and container should be
- protected.
-
- Used in: security-constraint
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="description" type="j2ee:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transport-guarantee" type="j2ee:transport-guaranteeType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The elements that use this type designate a path starting
- with a "/" and interpreted relative to the root of a WAR
- file.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:pattern value="/.*"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="web-app-versionType">
- <xsd:annotation>
- <xsd:documentation>
-
- This type contains the recognized versions of
- web-application supported. It is used to designate the
- version of the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="2.4"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-appType">
-
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="distributable" type="j2ee:emptyType"/>
- <xsd:element name="context-param" type="j2ee:param-valueType">
-
- <xsd:annotation>
- <xsd:documentation>
-
- The context-param element contains the declaration
- of a web application's servlet context
- initialization parameters.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="filter" type="j2ee:filterType"/>
- <xsd:element name="filter-mapping" type="j2ee:filter-mappingType"/>
- <xsd:element name="listener" type="j2ee:listenerType"/>
- <xsd:element name="servlet" type="j2ee:servletType"/>
- <xsd:element name="servlet-mapping" type="j2ee:servlet-mappingType"/>
- <xsd:element name="session-config" type="j2ee:session-configType"/>
- <xsd:element name="mime-mapping" type="j2ee:mime-mappingType"/>
- <xsd:element name="welcome-file-list" type="j2ee:welcome-file-listType"/>
- <xsd:element name="error-page" type="j2ee:error-pageType"/>
- <xsd:element name="jsp-config" type="j2ee:jsp-configType"/>
- <xsd:element name="security-constraint" type="j2ee:security-constraintType"/>
- <xsd:element name="login-config" type="j2ee:login-configType"/>
- <xsd:element name="security-role" type="j2ee:security-roleType"/>
- <xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
- <xsd:element name="message-destination" type="j2ee:message-destinationType"/>
- <xsd:element name="locale-encoding-mapping-list" type="j2ee:locale-encoding-mapping-listType"/>
- </xsd:choice>
-
- <xsd:attribute name="version" type="j2ee:web-app-versionType" use="required"/>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-resource-collectionType">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-resource-collectionType is used to identify a subset
- of the resources and HTTP methods on those resources within
- a web application to which a security constraint applies. If
- no HTTP methods are specified, then the security constraint
- applies to all HTTP methods.
-
- Used in: security-constraint
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="web-resource-name" type="j2ee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-resource-name contains the name of this web
- resource collection.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="description" type="j2ee:descriptionType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="url-pattern" type="j2ee:url-patternType" maxOccurs="unbounded"/>
- <xsd:element name="http-method" type="j2ee:http-methodType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="welcome-file-listType">
- <xsd:annotation>
- <xsd:documentation>
-
- The welcome-file-list contains an ordered list of welcome
- files elements.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="welcome-file" type="xsd:string" maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The welcome-file element contains file name to use
- as a default welcome file, such as index.html
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-</xsd:schema>
\ No newline at end of file
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/web-app_2_4.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_4.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,1234 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://java.sun.com/xml/ns/j2ee"
+ xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.4">
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)web-app_2_4.xsds 1.60 03/08/26
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2004 Sun Microsystems, Inc., 901 San Antonio
+ Road, Palo Alto, California 94303, U.S.A. All rights
+ reserved.
+
+ Sun Microsystems, Inc. has intellectual property rights
+ relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ This is the XML Schema for the Servlet 2.4 deployment descriptor.
+ The deployment descriptor must be named "WEB-INF/web.xml" in the
+ web application's war file. All Servlet deployment descriptors
+ must indicate the web application schema by using the J2EE
+ namespace:
+
+ http://java.sun.com/xml/ns/j2ee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="2.4">
+ ...
+ </web-app>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for J2EE
+ namespace with the following location:
+
+ http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all J2EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="j2ee_1_4.xsd"/>
+ <xsd:include schemaLocation="jsp_2_0.xsd"/>
+
+
+<!-- **************************************************** -->
+
+
+ <xsd:element name="web-app" type="j2ee:web-appType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-app element is the root of the deployment
+ descriptor for a web application. Note that the sub-elements
+ of this element can be in the arbitrary order. Because of
+ that, the multiplicity of the elements of distributable,
+ session-config, welcome-file-list, jsp-config, login-config,
+ and locale-encoding-mapping-list was changed from "?" to "*"
+ in this schema. However, the deployment descriptor instance
+ file must not contain multiple elements of session-config,
+ jsp-config, and login-config. When there are multiple elements of
+ welcome-file-list or locale-encoding-mapping-list, the container
+ must concatinate the element contents. The multiple occurance
+ of the element distributable is redundant and the container
+ treats that case exactly in the same way when there is only
+ one distributable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:unique name="web-app-servlet-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet element contains the name of a servlet.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:servlet"/>
+ <xsd:field xpath="j2ee:servlet-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-filter-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filter element contains the name of a filter.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:filter"/>
+ <xsd:field xpath="j2ee:filter-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-local-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:ejb-local-ref"/>
+ <xsd:field xpath="j2ee:ejb-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:ejb-ref"/>
+ <xsd:field xpath="j2ee:ejb-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name of
+ a resource environment reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:resource-env-ref"/>
+ <xsd:field xpath="j2ee:resource-env-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name of
+ a message destination reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:message-destination-ref"/>
+ <xsd:field xpath="j2ee:message-destination-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:resource-ref"/>
+ <xsd:field xpath="j2ee:res-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a web
+ application's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The name
+ must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:selector xpath="j2ee:env-entry"/>
+ <xsd:field xpath="j2ee:env-entry-name"/>
+ </xsd:unique>
+
+ <xsd:key name="web-app-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A role-name-key is specified to allow the references
+ from the security-role-refs.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:security-role"/>
+ <xsd:field xpath="j2ee:role-name"/>
+ </xsd:key>
+
+ <xsd:keyref name="web-app-role-name-references"
+ refer="j2ee:web-app-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The keyref indicates the references from
+ security-role-ref to a specified role-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:servlet/j2ee:security-role-ref"/>
+ <xsd:field xpath="j2ee:role-link"/>
+ </xsd:keyref>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-constraintType indicates the user roles that
+ should be permitted access to this resource
+ collection. The role-name used here must either correspond
+ to the role-name of one of the security-role elements
+ defined for this web application, or be the specially
+ reserved role-name "*" that is a compact syntax for
+ indicating all roles in the web application. If both "*"
+ and rolenames appear, the container interprets this as all
+ roles. If no roles are defined, no user is allowed access
+ to the portion of the web application described by the
+ containing security-constraint. The container matches
+ role names case sensitively when determining access.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="j2ee:descriptionType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="j2ee:role-nameType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-methodType is used to configure the authentication
+ mechanism for the web application. As a prerequisite to
+ gaining access to any web resources which are protected by
+ an authorization constraint, a user must have authenticated
+ using the configured mechanism. Legal values are "BASIC",
+ "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
+ authentication scheme.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="dispatcherType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The dispatcher has four legal values: FORWARD, REQUEST, INCLUDE,
+ and ERROR. A value of FORWARD means the Filter will be applied
+ under RequestDispatcher.forward() calls. A value of REQUEST
+ means the Filter will be applied under ordinary client calls to
+ the path or servlet. A value of INCLUDE means the Filter will be
+ applied under RequestDispatcher.include() calls. A value of
+ ERROR means the Filter will be applied under the error page
+ mechanism. The absence of any dispatcher elements in a
+ filter-mapping indicates a default of applying filters only under
+ ordinary client calls to the path or servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:enumeration value="FORWARD"/>
+ <xsd:enumeration value="INCLUDE"/>
+ <xsd:enumeration value="REQUEST"/>
+ <xsd:enumeration value="ERROR"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="encodingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The encodingType defines IANA character sets.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-codeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-code contains an HTTP error code, ex: 404
+
+ Used in: error-page
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:xsdPositiveIntegerType">
+ <xsd:pattern value="\d{3}"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-pageType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-pageType contains a mapping between an error code
+ or exception type to the path of a resource in the web
+ application.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:choice>
+ <xsd:element name="error-code"
+ type="j2ee:error-codeType"/>
+
+ <xsd:element name="exception-type"
+ type="j2ee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The exception-type contains a fully qualified class
+ name of a Java exception type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+
+ <xsd:element name="location"
+ type="j2ee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The location element contains the location of the
+ resource in the web application relative to the root of
+ the web application. The value of the location must have
+ a leading `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Declaration of the filter mappings in this web
+ application is done by using filter-mappingType.
+ The container uses the filter-mapping
+ declarations to decide which filters to apply to a request,
+ and in what order. The container matches the request URI to
+ a Servlet in the normal way. To determine which filters to
+ apply it matches filter-mapping declarations either on
+ servlet-name, or on url-pattern for each filter-mapping
+ element, depending on which style is used. The order in
+ which filters are invoked is the order in which
+ filter-mapping declarations that match a request URI for a
+ servlet appear in the list of filter-mapping elements.The
+ filter-name value must be the value of the filter-name
+ sub-elements of one of the filter declarations in the
+ deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="filter-name"
+ type="j2ee:filter-nameType"/>
+ <xsd:choice>
+ <xsd:element name="url-pattern"
+ type="j2ee:url-patternType"/>
+ <xsd:element name="servlet-name"
+ type="j2ee:servlet-nameType"/>
+ </xsd:choice>
+ <xsd:element name="dispatcher"
+ type="j2ee:dispatcherType"
+ minOccurs="0" maxOccurs="4"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The logical name of the filter is declare
+ by using filter-nameType. This name is used to map the
+ filter. Each filter name is unique within the web
+ application.
+
+ Used in: filter, filter-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:extension base="j2ee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filterType is used to declare a filter in the web
+ application. The filter is mapped to either a servlet or a
+ URL pattern in the filter-mapping element, using the
+ filter-name value to reference. Filters can access the
+ initialization parameters declared in the deployment
+ descriptor at runtime via the FilterConfig interface.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="filter-name"
+ type="j2ee:filter-nameType"/>
+ <xsd:element name="filter-class"
+ type="j2ee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully qualified classname of the filter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="init-param"
+ type="j2ee:param-valueType"
+ minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-param element contains a name/value pair as
+ an initialization param of a servlet filter
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="form-login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-configType specifies the login and error
+ pages that should be used in form based login. If form based
+ authentication is not used, these elements are ignored.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+
+ <xsd:element name="form-login-page"
+ type="j2ee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-page element defines the location in the web
+ app where the page that can be used for login can be
+ found. The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="form-error-page"
+ type="j2ee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-error-page element defines the location in
+ the web app where the error page that is displayed
+ when login is not successful can be found.
+ The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="http-methodType">
+ <xsd:annotation>
+
+ <xsd:documentation>
+
+ The http-method contains an HTTP method recognized by the
+ web-app, for example GET, POST, ...
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:enumeration value="GET"/>
+ <xsd:enumeration value="POST"/>
+ <xsd:enumeration value="PUT"/>
+ <xsd:enumeration value="DELETE"/>
+ <xsd:enumeration value="HEAD"/>
+ <xsd:enumeration value="OPTIONS"/>
+ <xsd:enumeration value="TRACE"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mapping-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping-list contains one or more
+ locale-encoding-mapping(s).
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="locale-encoding-mapping"
+ type="j2ee:locale-encoding-mappingType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping contains locale name and
+ encoding name. The locale name must be either "Language-code",
+ such as "ja", defined by ISO-639 or "Language-code_Country-code",
+ such as "ja_JP". "Country code" is defined by ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="locale"
+ type="j2ee:localeType"/>
+ <xsd:element name="encoding"
+ type="j2ee:encodingType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The localeType defines valid locale defined by ISO-639-1
+ and ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The login-configType is used to configure the authentication
+ method that should be used, the realm name that should be
+ used for this application, and the attributes that are
+ needed by the form login mechanism.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="auth-method"
+ type="j2ee:auth-methodType"
+ minOccurs="0"/>
+ <xsd:element name="realm-name"
+ type="j2ee:string" minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The realm name element specifies the realm name to
+ use in HTTP Basic authorization.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="form-login-config"
+ type="j2ee:form-login-configType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-mappingType defines a mapping between an extension
+ and a mime type.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The extension element contains a string describing an
+ extension. example: "txt"
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:element name="extension"
+ type="j2ee:string"/>
+ <xsd:element name="mime-type"
+ type="j2ee:mime-typeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-typeType is used to indicate a defined mime type.
+
+ Example:
+ "text/plain"
+
+ Used in: mime-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="nonEmptyStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+ This type defines a string which contains at least one
+ character.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:minLength value="1"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-constraintType is used to associate
+ security constraints with one or more web resource
+ collections
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="display-name"
+ type="j2ee:display-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="web-resource-collection"
+ type="j2ee:web-resource-collectionType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="auth-constraint"
+ type="j2ee:auth-constraintType"
+ minOccurs="0"/>
+ <xsd:element name="user-data-constraint"
+ type="j2ee:user-data-constraintType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-mappingType defines a mapping between a
+ servlet and a url pattern.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="servlet-name"
+ type="j2ee:servlet-nameType"/>
+ <xsd:element name="url-pattern"
+ type="j2ee:url-patternType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-name element contains the canonical name of the
+ servlet. Each servlet name is unique within the web
+ application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:extension base="j2ee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servletType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servletType is used to declare a servlet.
+ It contains the declarative data of a
+ servlet. If a jsp-file is specified and the load-on-startup
+ element is present, then the JSP should be precompiled and
+ loaded.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="servlet-name"
+ type="j2ee:servlet-nameType"/>
+ <xsd:choice>
+ <xsd:element name="servlet-class"
+ type="j2ee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-class element contains the fully
+ qualified class name of the servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="jsp-file"
+ type="j2ee:jsp-fileType"/>
+
+ </xsd:choice>
+
+ <xsd:element name="init-param"
+ type="j2ee:param-valueType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="load-on-startup"
+ type="j2ee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The load-on-startup element indicates that this
+ servlet should be loaded (instantiated and have
+ its init() called) on the startup of the web
+ application. The optional contents of these
+ element must be an integer indicating the order in
+ which the servlet should be loaded. If the value
+ is a negative integer, or the element is not
+ present, the container is free to load the servlet
+ whenever it chooses. If the value is a positive
+ integer or 0, the container must load and
+ initialize the servlet as the application is
+ deployed. The container must guarantee that
+ servlets marked with lower integers are loaded
+ before servlets marked with higher integers. The
+ container may choose the order of loading of
+ servlets with the same load-on-start-up value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="run-as"
+ type="j2ee:run-asType"
+ minOccurs="0"/>
+ <xsd:element name="security-role-ref"
+ type="j2ee:security-role-refType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="session-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-configType defines the session parameters
+ for this web application.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="session-timeout"
+ type="j2ee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-timeout element defines the default
+ session timeout interval for all sessions created
+ in this web application. The specified timeout
+ must be expressed in a whole number of minutes.
+ If the timeout is 0 or less, the container ensures
+ the default behaviour of sessions is never to time
+ out. If this element is not specified, the container
+ must set its default timeout period.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transport-guaranteeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transport-guaranteeType specifies that the communication
+ between client and server should be NONE, INTEGRAL, or
+ CONFIDENTIAL. NONE means that the application does not
+ require any transport guarantees. A value of INTEGRAL means
+ that the application requires that the data sent between the
+ client and server be sent in such a way that it can't be
+ changed in transit. CONFIDENTIAL means that the application
+ requires that the data be transmitted in a fashion that
+ prevents other entities from observing the contents of the
+ transmission. In most cases, the presence of the INTEGRAL or
+ CONFIDENTIAL flag will indicate that the use of SSL is
+ required.
+
+ Used in: user-data-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:enumeration value="NONE"/>
+ <xsd:enumeration value="INTEGRAL"/>
+ <xsd:enumeration value="CONFIDENTIAL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="user-data-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The user-data-constraintType is used to indicate how
+ data communicated between the client and container should be
+ protected.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="j2ee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transport-guarantee"
+ type="j2ee:transport-guaranteeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The elements that use this type designate a path starting
+ with a "/" and interpreted relative to the root of a WAR
+ file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:pattern value="/.*"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="web-app-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type contains the recognized versions of
+ web-application supported. It is used to designate the
+ version of the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="2.4"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-appType">
+
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="distributable"
+ type="j2ee:emptyType"/>
+ <xsd:element name="context-param"
+ type="j2ee:param-valueType">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The context-param element contains the declaration
+ of a web application's servlet context
+ initialization parameters.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="filter"
+ type="j2ee:filterType"/>
+ <xsd:element name="filter-mapping"
+ type="j2ee:filter-mappingType"/>
+ <xsd:element name="listener"
+ type="j2ee:listenerType"/>
+ <xsd:element name="servlet"
+ type="j2ee:servletType"/>
+ <xsd:element name="servlet-mapping"
+ type="j2ee:servlet-mappingType"/>
+ <xsd:element name="session-config"
+ type="j2ee:session-configType"/>
+ <xsd:element name="mime-mapping"
+ type="j2ee:mime-mappingType"/>
+ <xsd:element name="welcome-file-list"
+ type="j2ee:welcome-file-listType"/>
+ <xsd:element name="error-page"
+ type="j2ee:error-pageType"/>
+ <xsd:element name="jsp-config"
+ type="j2ee:jsp-configType"/>
+ <xsd:element name="security-constraint"
+ type="j2ee:security-constraintType"/>
+ <xsd:element name="login-config"
+ type="j2ee:login-configType"/>
+ <xsd:element name="security-role"
+ type="j2ee:security-roleType"/>
+ <xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="message-destination"
+ type="j2ee:message-destinationType"/>
+ <xsd:element name="locale-encoding-mapping-list"
+ type="j2ee:locale-encoding-mapping-listType"/>
+ </xsd:choice>
+
+ <xsd:attribute name="version"
+ type="j2ee:web-app-versionType"
+ use="required"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-resource-collectionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-collectionType is used to identify a subset
+ of the resources and HTTP methods on those resources within
+ a web application to which a security constraint applies. If
+ no HTTP methods are specified, then the security constraint
+ applies to all HTTP methods.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="web-resource-name"
+ type="j2ee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-name contains the name of this web
+ resource collection.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="description"
+ type="j2ee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="url-pattern"
+ type="j2ee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="http-method"
+ type="j2ee:http-methodType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="welcome-file-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file-list contains an ordered list of welcome
+ files elements.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="welcome-file"
+ type="xsd:string"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file element contains file name to use
+ as a default welcome file, such as index.html
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
+
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/web-app_2_5.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,1268 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://java.sun.com/xml/ns/javaee"
- xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.5">
- <xsd:annotation>
- <xsd:documentation>
- @(#)web-app_2_5.xsds 1.62 05/08/06
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- Copyright 2003-2006 Sun Microsystems, Inc.
- 4150 Network Circle
- Santa Clara, California 95054
- U.S.A
- All rights reserved.
-
- Sun Microsystems, Inc. has intellectual property rights
- relating to technology described in this document. In
- particular, and without limitation, these intellectual
- property rights may include one or more of the U.S. patents
- listed at http://www.sun.com/patents and one or more
- additional patents or pending patent applications in the
- U.S. and other countries.
-
- This document and the technology which it describes are
- distributed under licenses restricting their use, copying,
- distribution, and decompilation. No part of this document
- may be reproduced in any form by any means without prior
- written authorization of Sun and its licensors, if any.
-
- Third-party software, including font technology, is
- copyrighted and licensed from Sun suppliers.
-
- Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
- JavaServer Pages, Enterprise JavaBeans and the Java Coffee
- Cup logo are trademarks or registered trademarks of Sun
- Microsystems, Inc. in the U.S. and other countries.
-
- Federal Acquisitions: Commercial Software - Government Users
- Subject to Standard License Terms and Conditions.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
-
- This is the XML Schema for the Servlet 2.5 deployment descriptor.
- The deployment descriptor must be named "WEB-INF/web.xml" in the
- web application's war file. All Servlet deployment descriptors
- must indicate the web application schema by using the Java EE
- namespace:
-
- http://java.sun.com/xml/ns/javaee
-
- and by indicating the version of the schema by
- using the version element as shown below:
-
- <web-app xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="..."
- version="2.5">
- ...
- </web-app>
-
- The instance documents may indicate the published version of
- the schema using the xsi:schemaLocation attribute for Java EE
- namespace with the following location:
-
- http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd
-
- ]]>
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- The following conventions apply to all Java EE
- deployment descriptor elements unless indicated otherwise.
-
- - In elements that specify a pathname to a file within the
- same JAR file, relative filenames (i.e., those not
- starting with "/") are considered relative to the root of
- the JAR file's namespace. Absolute filenames (i.e., those
- starting with "/") also specify names in the root of the
- JAR file's namespace. In general, relative names are
- preferred. The exception is .war files where absolute
- names are preferred for consistency with the Servlet API.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="javaee_5.xsd"/>
- <xsd:include schemaLocation="jsp_2_1.xsd"/>
-
-
-<!-- **************************************************** -->
-
- <xsd:element name="web-app" type="javaee:web-appType">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-app element is the root of the deployment
- descriptor for a web application. Note that the sub-elements
- of this element can be in the arbitrary order. Because of
- that, the multiplicity of the elements of distributable,
- session-config, welcome-file-list, jsp-config, login-config,
- and locale-encoding-mapping-list was changed from "?" to "*"
- in this schema. However, the deployment descriptor instance
- file must not contain multiple elements of session-config,
- jsp-config, and login-config. When there are multiple elements of
- welcome-file-list or locale-encoding-mapping-list, the container
- must concatenate the element contents. The multiple occurence
- of the element distributable is redundant and the container
- treats that case exactly in the same way when there is only
- one distributable.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:unique name="web-app-servlet-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet element contains the name of a servlet.
- The name must be unique within the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:servlet"/>
- <xsd:field xpath="javaee:servlet-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-filter-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The filter element contains the name of a filter.
- The name must be unique within the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:filter"/>
- <xsd:field xpath="javaee:filter-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-ejb-local-ref-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The ejb-local-ref-name element contains the name of an EJB
- reference. The EJB reference is an entry in the web
- application's environment and is relative to the
- java:comp/env context. The name must be unique within
- the web application.
-
- It is recommended that name is prefixed with "ejb/".
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:ejb-local-ref"/>
- <xsd:field xpath="javaee:ejb-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-ejb-ref-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The ejb-ref-name element contains the name of an EJB
- reference. The EJB reference is an entry in the web
- application's environment and is relative to the
- java:comp/env context. The name must be unique within
- the web application.
-
- It is recommended that name is prefixed with "ejb/".
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:ejb-ref"/>
- <xsd:field xpath="javaee:ejb-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-resource-env-ref-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The resource-env-ref-name element specifies the name of
- a resource environment reference; its value is the
- environment entry name used in the web application code.
- The name is a JNDI name relative to the java:comp/env
- context and must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:resource-env-ref"/>
- <xsd:field xpath="javaee:resource-env-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-message-destination-ref-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The message-destination-ref-name element specifies the name of
- a message destination reference; its value is the
- environment entry name used in the web application code.
- The name is a JNDI name relative to the java:comp/env
- context and must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:message-destination-ref"/>
- <xsd:field xpath="javaee:message-destination-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-res-ref-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The res-ref-name element specifies the name of a
- resource manager connection factory reference. The name
- is a JNDI name relative to the java:comp/env context.
- The name must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:resource-ref"/>
- <xsd:field xpath="javaee:res-ref-name"/>
- </xsd:unique>
-
- <xsd:unique name="web-app-env-entry-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The env-entry-name element contains the name of a web
- application's environment entry. The name is a JNDI
- name relative to the java:comp/env context. The name
- must be unique within a web application.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:selector xpath="javaee:env-entry"/>
- <xsd:field xpath="javaee:env-entry-name"/>
- </xsd:unique>
-
- <xsd:key name="web-app-role-name-key">
- <xsd:annotation>
- <xsd:documentation>
-
- A role-name-key is specified to allow the references
- from the security-role-refs.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:security-role"/>
- <xsd:field xpath="javaee:role-name"/>
- </xsd:key>
-
- <xsd:keyref name="web-app-role-name-references"
- refer="javaee:web-app-role-name-key">
- <xsd:annotation>
- <xsd:documentation>
-
- The keyref indicates the references from
- security-role-ref to a specified role-name.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="javaee:servlet/javaee:security-role-ref"/>
- <xsd:field xpath="javaee:role-link"/>
- </xsd:keyref>
- </xsd:element>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="auth-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The auth-constraintType indicates the user roles that
- should be permitted access to this resource
- collection. The role-name used here must either correspond
- to the role-name of one of the security-role elements
- defined for this web application, or be the specially
- reserved role-name "*" that is a compact syntax for
- indicating all roles in the web application. If both "*"
- and rolenames appear, the container interprets this as all
- roles. If no roles are defined, no user is allowed access
- to the portion of the web application described by the
- containing security-constraint. The container matches
- role names case sensitively when determining access.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="description"
- type="javaee:descriptionType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="role-name"
- type="javaee:role-nameType"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="auth-methodType">
- <xsd:annotation>
- <xsd:documentation>
-
- The auth-methodType is used to configure the authentication
- mechanism for the web application. As a prerequisite to
- gaining access to any web resources which are protected by
- an authorization constraint, a user must have authenticated
- using the configured mechanism. Legal values are "BASIC",
- "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
- authentication scheme.
-
- Used in: login-config
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="dispatcherType">
- <xsd:annotation>
- <xsd:documentation>
-
- The dispatcher has four legal values: FORWARD, REQUEST, INCLUDE,
- and ERROR. A value of FORWARD means the Filter will be applied
- under RequestDispatcher.forward() calls. A value of REQUEST
- means the Filter will be applied under ordinary client calls to
- the path or servlet. A value of INCLUDE means the Filter will be
- applied under RequestDispatcher.include() calls. A value of
- ERROR means the Filter will be applied under the error page
- mechanism. The absence of any dispatcher elements in a
- filter-mapping indicates a default of applying filters only under
- ordinary client calls to the path or servlet.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="FORWARD"/>
- <xsd:enumeration value="INCLUDE"/>
- <xsd:enumeration value="REQUEST"/>
- <xsd:enumeration value="ERROR"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="encodingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The encodingType defines IANA character sets.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[^\s]+"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="error-codeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The error-code contains an HTTP error code, ex: 404
-
- Used in: error-page
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:xsdPositiveIntegerType">
- <xsd:pattern value="\d{3}"/>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="error-pageType">
- <xsd:annotation>
- <xsd:documentation>
-
- The error-pageType contains a mapping between an error code
- or exception type to the path of a resource in the web
- application.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="error-code"
- type="javaee:error-codeType"/>
-
- <xsd:element name="exception-type"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The exception-type contains a fully qualified class
- name of a Java exception type.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
-
- <xsd:element name="location"
- type="javaee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The location element contains the location of the
- resource in the web application relative to the root of
- the web application. The value of the location must have
- a leading `/'.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filter-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- Declaration of the filter mappings in this web
- application is done by using filter-mappingType.
- The container uses the filter-mapping
- declarations to decide which filters to apply to a request,
- and in what order. The container matches the request URI to
- a Servlet in the normal way. To determine which filters to
- apply it matches filter-mapping declarations either on
- servlet-name, or on url-pattern for each filter-mapping
- element, depending on which style is used. The order in
- which filters are invoked is the order in which
- filter-mapping declarations that match a request URI for a
- servlet appear in the list of filter-mapping elements.The
- filter-name value must be the value of the filter-name
- sub-elements of one of the filter declarations in the
- deployment descriptor.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="filter-name"
- type="javaee:filter-nameType"/>
- <xsd:choice minOccurs="1" maxOccurs="unbounded">
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"/>
- <xsd:element name="servlet-name"
- type="javaee:servlet-nameType"/>
- </xsd:choice>
- <xsd:element name="dispatcher"
- type="javaee:dispatcherType"
- minOccurs="0" maxOccurs="4"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filter-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The logical name of the filter is declare
- by using filter-nameType. This name is used to map the
- filter. Each filter name is unique within the web
- application.
-
- Used in: filter, filter-mapping
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filterType">
- <xsd:annotation>
- <xsd:documentation>
-
- The filterType is used to declare a filter in the web
- application. The filter is mapped to either a servlet or a
- URL pattern in the filter-mapping element, using the
- filter-name value to reference. Filters can access the
- initialization parameters declared in the deployment
- descriptor at runtime via the FilterConfig interface.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="filter-name"
- type="javaee:filter-nameType"/>
- <xsd:element name="filter-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The fully qualified classname of the filter.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="init-param"
- type="javaee:param-valueType"
- minOccurs="0" maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The init-param element contains a name/value pair as
- an initialization param of a servlet filter
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="form-login-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-login-configType specifies the login and error
- pages that should be used in form based login. If form based
- authentication is not used, these elements are ignored.
-
- Used in: login-config
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
-
- <xsd:element name="form-login-page"
- type="javaee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-login-page element defines the location in the web
- app where the page that can be used for login can be
- found. The path begins with a leading / and is interpreted
- relative to the root of the WAR.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="form-error-page"
- type="javaee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-error-page element defines the location in
- the web app where the error page that is displayed
- when login is not successful can be found.
- The path begins with a leading / and is interpreted
- relative to the root of the WAR.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="http-methodType">
- <xsd:annotation>
-
- <xsd:documentation>
-
- A HTTP method type as defined in HTTP 1.1 section 2.2.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[\p{L}-[\p{Cc}\p{Z}]]+"/>
- </xsd:restriction>
-
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="load-on-startupType">
- <xsd:union memberTypes="javaee:null-charType xsd:integer"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="locale-encoding-mapping-listType">
- <xsd:annotation>
- <xsd:documentation>
-
- The locale-encoding-mapping-list contains one or more
- locale-encoding-mapping(s).
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="locale-encoding-mapping"
- type="javaee:locale-encoding-mappingType"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="locale-encoding-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The locale-encoding-mapping contains locale name and
- encoding name. The locale name must be either "Language-code",
- such as "ja", defined by ISO-639 or "Language-code_Country-code",
- such as "ja_JP". "Country code" is defined by ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="locale"
- type="javaee:localeType"/>
- <xsd:element name="encoding"
- type="javaee:encodingType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="localeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The localeType defines valid locale defined by ISO-639-1
- and ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="login-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The login-configType is used to configure the authentication
- method that should be used, the realm name that should be
- used for this application, and the attributes that are
- needed by the form login mechanism.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="auth-method"
- type="javaee:auth-methodType"
- minOccurs="0"/>
- <xsd:element name="realm-name"
- type="javaee:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The realm name element specifies the realm name to
- use in HTTP Basic authorization.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="form-login-config"
- type="javaee:form-login-configType"
- minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mime-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The mime-mappingType defines a mapping between an extension
- and a mime type.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:annotation>
- <xsd:documentation>
-
- The extension element contains a string describing an
- extension. example: "txt"
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:element name="extension"
- type="javaee:string"/>
- <xsd:element name="mime-type"
- type="javaee:mime-typeType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mime-typeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The mime-typeType is used to indicate a defined mime type.
-
- Example:
- "text/plain"
-
- Used in: mime-mapping
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="nonEmptyStringType">
- <xsd:annotation>
- <xsd:documentation>
- This type defines a string which contains at least one
- character.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:minLength value="1"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="null-charType">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value=""/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="security-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The security-constraintType is used to associate
- security constraints with one or more web resource
- collections
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="display-name"
- type="javaee:display-nameType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="web-resource-collection"
- type="javaee:web-resource-collectionType"
- maxOccurs="unbounded"/>
- <xsd:element name="auth-constraint"
- type="javaee:auth-constraintType"
- minOccurs="0"/>
- <xsd:element name="user-data-constraint"
- type="javaee:user-data-constraintType"
- minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servlet-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-mappingType defines a mapping between a
- servlet and a url pattern.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="servlet-name"
- type="javaee:servlet-nameType"/>
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"
- minOccurs="1" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servlet-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-name element contains the canonical name of the
- servlet. Each servlet name is unique within the web
- application.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servletType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servletType is used to declare a servlet.
- It contains the declarative data of a
- servlet. If a jsp-file is specified and the load-on-startup
- element is present, then the JSP should be precompiled and
- loaded.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="servlet-name"
- type="javaee:servlet-nameType"/>
- <xsd:choice>
- <xsd:element name="servlet-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-class element contains the fully
- qualified class name of the servlet.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="jsp-file"
- type="javaee:jsp-fileType"/>
-
- </xsd:choice>
-
- <xsd:element name="init-param"
- type="javaee:param-valueType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="load-on-startup"
- type="javaee:load-on-startupType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The load-on-startup element indicates that this
- servlet should be loaded (instantiated and have
- its init() called) on the startup of the web
- application. The optional contents of these
- element must be an integer indicating the order in
- which the servlet should be loaded. If the value
- is a negative integer, or the element is not
- present, the container is free to load the servlet
- whenever it chooses. If the value is a positive
- integer or 0, the container must load and
- initialize the servlet as the application is
- deployed. The container must guarantee that
- servlets marked with lower integers are loaded
- before servlets marked with higher integers. The
- container may choose the order of loading of
- servlets with the same load-on-start-up value.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="run-as"
- type="javaee:run-asType"
- minOccurs="0"/>
- <xsd:element name="security-role-ref"
- type="javaee:security-role-refType"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="session-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The session-configType defines the session parameters
- for this web application.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="session-timeout"
- type="javaee:xsdIntegerType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The session-timeout element defines the default
- session timeout interval for all sessions created
- in this web application. The specified timeout
- must be expressed in a whole number of minutes.
- If the timeout is 0 or less, the container ensures
- the default behaviour of sessions is never to time
- out. If this element is not specified, the container
- must set its default timeout period.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="transport-guaranteeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The transport-guaranteeType specifies that the communication
- between client and server should be NONE, INTEGRAL, or
- CONFIDENTIAL. NONE means that the application does not
- require any transport guarantees. A value of INTEGRAL means
- that the application requires that the data sent between the
- client and server be sent in such a way that it can't be
- changed in transit. CONFIDENTIAL means that the application
- requires that the data be transmitted in a fashion that
- prevents other entities from observing the contents of the
- transmission. In most cases, the presence of the INTEGRAL or
- CONFIDENTIAL flag will indicate that the use of SSL is
- required.
-
- Used in: user-data-constraint
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="NONE"/>
- <xsd:enumeration value="INTEGRAL"/>
- <xsd:enumeration value="CONFIDENTIAL"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="user-data-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The user-data-constraintType is used to indicate how
- data communicated between the client and container should be
- protected.
-
- Used in: security-constraint
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="description"
- type="javaee:descriptionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="transport-guarantee"
- type="javaee:transport-guaranteeType"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The elements that use this type designate a path starting
- with a "/" and interpreted relative to the root of a WAR
- file.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:pattern value="/.*"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="web-app-versionType">
- <xsd:annotation>
- <xsd:documentation>
-
- This type contains the recognized versions of
- web-application supported. It is used to designate the
- version of the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="2.5"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-appType">
-
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="distributable"
- type="javaee:emptyType"/>
- <xsd:element name="context-param"
- type="javaee:param-valueType">
-
- <xsd:annotation>
- <xsd:documentation>
-
- The context-param element contains the declaration
- of a web application's servlet context
- initialization parameters.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="filter"
- type="javaee:filterType"/>
- <xsd:element name="filter-mapping"
- type="javaee:filter-mappingType"/>
- <xsd:element name="listener"
- type="javaee:listenerType"/>
- <xsd:element name="servlet"
- type="javaee:servletType"/>
- <xsd:element name="servlet-mapping"
- type="javaee:servlet-mappingType"/>
- <xsd:element name="session-config"
- type="javaee:session-configType"/>
- <xsd:element name="mime-mapping"
- type="javaee:mime-mappingType"/>
- <xsd:element name="welcome-file-list"
- type="javaee:welcome-file-listType"/>
- <xsd:element name="error-page"
- type="javaee:error-pageType"/>
- <xsd:element name="jsp-config"
- type="javaee:jsp-configType"/>
- <xsd:element name="security-constraint"
- type="javaee:security-constraintType"/>
- <xsd:element name="login-config"
- type="javaee:login-configType"/>
- <xsd:element name="security-role"
- type="javaee:security-roleType"/>
- <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
- <xsd:element name="message-destination"
- type="javaee:message-destinationType"/>
- <xsd:element name="locale-encoding-mapping-list"
- type="javaee:locale-encoding-mapping-listType"/>
- </xsd:choice>
-
- <xsd:attribute name="version"
- type="javaee:web-app-versionType"
- use="required"/>
- <xsd:attribute name="id" type="xsd:ID"/>
-
- <xsd:attribute name="metadata-complete" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>
-
- The metadata-complete attribute defines whether this
- deployment descriptor and other related deployment
- descriptors for this module (e.g., web service
- descriptors) are complete, or whether the class
- files available to this module and packaged with
- this application should be examined for annotations
- that specify deployment information.
-
- If metadata-complete is set to "true", the deployment
- tool must ignore any annotations that specify deployment
- information, which might be present in the class files
- of the application.
-
- If metadata-complete is not specified or is set to
- "false", the deployment tool must examine the class
- files of the application for annotations, as
- specified by the specifications.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
-
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-resource-collectionType">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-resource-collectionType is used to identify a subset
- of the resources and HTTP methods on those resources within
- a web application to which a security constraint applies. If
- no HTTP methods are specified, then the security constraint
- applies to all HTTP methods.
-
- Used in: security-constraint
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="web-resource-name"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-resource-name contains the name of this web
- resource collection.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="description"
- type="javaee:descriptionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"
- maxOccurs="unbounded"/>
- <xsd:element name="http-method"
- type="javaee:http-methodType"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="welcome-file-listType">
- <xsd:annotation>
- <xsd:documentation>
-
- The welcome-file-list contains an ordered list of welcome
- files elements.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="welcome-file"
- type="xsd:string"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The welcome-file element contains file name to use
- as a default welcome file, such as index.html
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-</xsd:schema>
-
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd (from rev 95186, projects/metadata/web/trunk/src/main/resources/schema/web-app_2_5.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-app_2_5.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,1271 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.5">
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)web-app_2_5.xsds 1.62 05/08/06
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2003-2005 Sun Microsystems, Inc.
+ 4150 Network Circle
+ Santa Clara, California 95054
+ U.S.A
+ All rights reserved.
+
+ Sun Microsystems, Inc. has intellectual property rights
+ relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ This is the XML Schema for the Servlet 2.5 deployment descriptor.
+ The deployment descriptor must be named "WEB-INF/web.xml" in the
+ web application's war file. All Servlet deployment descriptors
+ must indicate the web application schema by using the Java EE
+ namespace:
+
+ http://java.sun.com/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="2.5">
+ ...
+ </web-app>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_5.xsd"/>
+ <xsd:include schemaLocation="jsp_2_1.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="web-app" type="javaee:web-appType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-app element is the root of the deployment
+ descriptor for a web application. Note that the sub-elements
+ of this element can be in the arbitrary order. Because of
+ that, the multiplicity of the elements of distributable,
+ session-config, welcome-file-list, jsp-config, login-config,
+ and locale-encoding-mapping-list was changed from "?" to "*"
+ in this schema. However, the deployment descriptor instance
+ file must not contain multiple elements of session-config,
+ jsp-config, and login-config. When there are multiple elements of
+ welcome-file-list or locale-encoding-mapping-list, the container
+ must concatenate the element contents. The multiple occurence
+ of the element distributable is redundant and the container
+ treats that case exactly in the same way when there is only
+ one distributable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:unique name="web-app-servlet-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet element contains the name of a servlet.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:servlet"/>
+ <xsd:field xpath="javaee:servlet-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-filter-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filter element contains the name of a filter.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:filter"/>
+ <xsd:field xpath="javaee:filter-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-local-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name of
+ a resource environment reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name of
+ a message destination reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+
+ <xsd:unique name="web-app-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a web
+ application's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The name
+ must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+
+ <xsd:key name="web-app-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A role-name-key is specified to allow the references
+ from the security-role-refs.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:security-role"/>
+ <xsd:field xpath="javaee:role-name"/>
+ </xsd:key>
+
+ <xsd:keyref name="web-app-role-name-references"
+ refer="javaee:web-app-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The keyref indicates the references from
+ security-role-ref to a specified role-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:servlet/javaee:security-role-ref"/>
+ <xsd:field xpath="javaee:role-link"/>
+ </xsd:keyref>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-constraintType indicates the user roles that
+ should be permitted access to this resource
+ collection. The role-name used here must either correspond
+ to the role-name of one of the security-role elements
+ defined for this web application, or be the specially
+ reserved role-name "*" that is a compact syntax for
+ indicating all roles in the web application. If both "*"
+ and rolenames appear, the container interprets this as all
+ roles. If no roles are defined, no user is allowed access
+ to the portion of the web application described by the
+ containing security-constraint. The container matches
+ role names case sensitively when determining access.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-methodType is used to configure the authentication
+ mechanism for the web application. As a prerequisite to
+ gaining access to any web resources which are protected by
+ an authorization constraint, a user must have authenticated
+ using the configured mechanism. Legal values are "BASIC",
+ "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
+ authentication scheme.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="dispatcherType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The dispatcher has four legal values: FORWARD, REQUEST, INCLUDE,
+ and ERROR. A value of FORWARD means the Filter will be applied
+ under RequestDispatcher.forward() calls. A value of REQUEST
+ means the Filter will be applied under ordinary client calls to
+ the path or servlet. A value of INCLUDE means the Filter will be
+ applied under RequestDispatcher.include() calls. A value of
+ ERROR means the Filter will be applied under the error page
+ mechanism. The absence of any dispatcher elements in a
+ filter-mapping indicates a default of applying filters only under
+ ordinary client calls to the path or servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="FORWARD"/>
+ <xsd:enumeration value="INCLUDE"/>
+ <xsd:enumeration value="REQUEST"/>
+ <xsd:enumeration value="ERROR"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="encodingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The encodingType defines IANA character sets.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-codeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-code contains an HTTP error code, ex: 404
+
+ Used in: error-page
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdPositiveIntegerType">
+ <xsd:pattern value="\d{3}"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-pageType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-pageType contains a mapping between an error code
+ or exception type to the path of a resource in the web
+ application.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:choice>
+ <xsd:element name="error-code"
+ type="javaee:error-codeType"/>
+
+ <xsd:element name="exception-type"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The exception-type contains a fully qualified class
+ name of a Java exception type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+
+ <xsd:element name="location"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The location element contains the location of the
+ resource in the web application relative to the root of
+ the web application. The value of the location must have
+ a leading `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Declaration of the filter mappings in this web
+ application is done by using filter-mappingType.
+ The container uses the filter-mapping
+ declarations to decide which filters to apply to a request,
+ and in what order. The container matches the request URI to
+ a Servlet in the normal way. To determine which filters to
+ apply it matches filter-mapping declarations either on
+ servlet-name, or on url-pattern for each filter-mapping
+ element, depending on which style is used. The order in
+ which filters are invoked is the order in which
+ filter-mapping declarations that match a request URI for a
+ servlet appear in the list of filter-mapping elements.The
+ filter-name value must be the value of the filter-name
+ sub-elements of one of the filter declarations in the
+ deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="filter-name"
+ type="javaee:filter-nameType"/>
+ <xsd:choice minOccurs="1" maxOccurs="unbounded">
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"/>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ </xsd:choice>
+ <xsd:element name="dispatcher"
+ type="javaee:dispatcherType"
+ minOccurs="0" maxOccurs="4"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The logical name of the filter is declare
+ by using filter-nameType. This name is used to map the
+ filter. Each filter name is unique within the web
+ application.
+
+ Used in: filter, filter-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filterType is used to declare a filter in the web
+ application. The filter is mapped to either a servlet or a
+ URL pattern in the filter-mapping element, using the
+ filter-name value to reference. Filters can access the
+ initialization parameters declared in the deployment
+ descriptor at runtime via the FilterConfig interface.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="filter-name"
+ type="javaee:filter-nameType"/>
+ <xsd:element name="filter-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully qualified classname of the filter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-param element contains a name/value pair as
+ an initialization param of a servlet filter
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="form-login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-configType specifies the login and error
+ pages that should be used in form based login. If form based
+ authentication is not used, these elements are ignored.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+
+ <xsd:element name="form-login-page"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-page element defines the location in the web
+ app where the page that can be used for login can be
+ found. The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="form-error-page"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-error-page element defines the location in
+ the web app where the error page that is displayed
+ when login is not successful can be found.
+ The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="http-methodType">
+ <xsd:annotation>
+
+ <xsd:documentation>
+
+ A HTTP method type as defined in HTTP 1.1 section 2.2.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:restriction base="xsd:token">
+ <xsd:pattern value="[!-~-[\(\)<>@,;:"/\[\]?=\{\}\\\p{Z}]]+"/>
+ </xsd:restriction>
+
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="load-on-startupType">
+ <xsd:union memberTypes="javaee:null-charType xsd:integer"/>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mapping-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping-list contains one or more
+ locale-encoding-mapping(s).
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="locale-encoding-mapping"
+ type="javaee:locale-encoding-mappingType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping contains locale name and
+ encoding name. The locale name must be either "Language-code",
+ such as "ja", defined by ISO-639 or "Language-code_Country-code",
+ such as "ja_JP". "Country code" is defined by ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="locale"
+ type="javaee:localeType"/>
+ <xsd:element name="encoding"
+ type="javaee:encodingType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The localeType defines valid locale defined by ISO-639-1
+ and ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The login-configType is used to configure the authentication
+ method that should be used, the realm name that should be
+ used for this application, and the attributes that are
+ needed by the form login mechanism.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="auth-method"
+ type="javaee:auth-methodType"
+ minOccurs="0"/>
+ <xsd:element name="realm-name"
+ type="javaee:string" minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The realm name element specifies the realm name to
+ use in HTTP Basic authorization.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="form-login-config"
+ type="javaee:form-login-configType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-mappingType defines a mapping between an extension
+ and a mime type.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The extension element contains a string describing an
+ extension. example: "txt"
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:element name="extension"
+ type="javaee:string"/>
+ <xsd:element name="mime-type"
+ type="javaee:mime-typeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-typeType is used to indicate a defined mime type.
+
+ Example:
+ "text/plain"
+
+ Used in: mime-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="nonEmptyStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+ This type defines a string which contains at least one
+ character.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:minLength value="1"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="null-charType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value=""/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-constraintType is used to associate
+ security constraints with one or more web resource
+ collections
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="display-name"
+ type="javaee:display-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="web-resource-collection"
+ type="javaee:web-resource-collectionType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="auth-constraint"
+ type="javaee:auth-constraintType"
+ minOccurs="0"/>
+ <xsd:element name="user-data-constraint"
+ type="javaee:user-data-constraintType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-mappingType defines a mapping between a
+ servlet and a url pattern.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ minOccurs="1" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-name element contains the canonical name of the
+ servlet. Each servlet name is unique within the web
+ application.
+ The special servlet name of "*" may be used to reference all
+ servlets.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servletType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servletType is used to declare a servlet.
+ It contains the declarative data of a
+ servlet. If a jsp-file is specified and the load-on-startup
+ element is present, then the JSP should be precompiled and
+ loaded.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ <xsd:choice>
+ <xsd:element name="servlet-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-class element contains the fully
+ qualified class name of the servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="jsp-file"
+ type="javaee:jsp-fileType"/>
+
+ </xsd:choice>
+
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="load-on-startup"
+ type="javaee:load-on-startupType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The load-on-startup element indicates that this
+ servlet should be loaded (instantiated and have
+ its init() called) on the startup of the web
+ application. The optional contents of these
+ element must be an integer indicating the order in
+ which the servlet should be loaded. If the value
+ is a negative integer, or the element is not
+ present, the container is free to load the servlet
+ whenever it chooses. If the value is a positive
+ integer or 0, the container must load and
+ initialize the servlet as the application is
+ deployed. The container must guarantee that
+ servlets marked with lower integers are loaded
+ before servlets marked with higher integers. The
+ container may choose the order of loading of
+ servlets with the same load-on-start-up value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="run-as"
+ type="javaee:run-asType"
+ minOccurs="0"/>
+ <xsd:element name="security-role-ref"
+ type="javaee:security-role-refType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="session-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-configType defines the session parameters
+ for this web application.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="session-timeout"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-timeout element defines the default
+ session timeout interval for all sessions created
+ in this web application. The specified timeout
+ must be expressed in a whole number of minutes.
+ If the timeout is 0 or less, the container ensures
+ the default behaviour of sessions is never to time
+ out. If this element is not specified, the container
+ must set its default timeout period.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transport-guaranteeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transport-guaranteeType specifies that the communication
+ between client and server should be NONE, INTEGRAL, or
+ CONFIDENTIAL. NONE means that the application does not
+ require any transport guarantees. A value of INTEGRAL means
+ that the application requires that the data sent between the
+ client and server be sent in such a way that it can't be
+ changed in transit. CONFIDENTIAL means that the application
+ requires that the data be transmitted in a fashion that
+ prevents other entities from observing the contents of the
+ transmission. In most cases, the presence of the INTEGRAL or
+ CONFIDENTIAL flag will indicate that the use of SSL is
+ required.
+
+ Used in: user-data-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NONE"/>
+ <xsd:enumeration value="INTEGRAL"/>
+ <xsd:enumeration value="CONFIDENTIAL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="user-data-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The user-data-constraintType is used to indicate how
+ data communicated between the client and container should be
+ protected.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transport-guarantee"
+ type="javaee:transport-guaranteeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The elements that use this type designate a path starting
+ with a "/" and interpreted relative to the root of a WAR
+ file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="/.*"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:simpleType name="web-app-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type contains the recognized versions of
+ web-application supported. It is used to designate the
+ version of the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="2.5"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-appType">
+
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="distributable"
+ type="javaee:emptyType"/>
+ <xsd:element name="context-param"
+ type="javaee:param-valueType">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The context-param element contains the declaration
+ of a web application's servlet context
+ initialization parameters.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="filter"
+ type="javaee:filterType"/>
+ <xsd:element name="filter-mapping"
+ type="javaee:filter-mappingType"/>
+ <xsd:element name="listener"
+ type="javaee:listenerType"/>
+ <xsd:element name="servlet"
+ type="javaee:servletType"/>
+ <xsd:element name="servlet-mapping"
+ type="javaee:servlet-mappingType"/>
+ <xsd:element name="session-config"
+ type="javaee:session-configType"/>
+ <xsd:element name="mime-mapping"
+ type="javaee:mime-mappingType"/>
+ <xsd:element name="welcome-file-list"
+ type="javaee:welcome-file-listType"/>
+ <xsd:element name="error-page"
+ type="javaee:error-pageType"/>
+ <xsd:element name="jsp-config"
+ type="javaee:jsp-configType"/>
+ <xsd:element name="security-constraint"
+ type="javaee:security-constraintType"/>
+ <xsd:element name="login-config"
+ type="javaee:login-configType"/>
+ <xsd:element name="security-role"
+ type="javaee:security-roleType"/>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="message-destination"
+ type="javaee:message-destinationType"/>
+ <xsd:element name="locale-encoding-mapping-list"
+ type="javaee:locale-encoding-mapping-listType"/>
+ </xsd:choice>
+
+ <xsd:attribute name="version"
+ type="javaee:web-app-versionType"
+ use="required"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+
+ <xsd:attribute name="metadata-complete" type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether this
+ deployment descriptor and other related deployment
+ descriptors for this module (e.g., web service
+ descriptors) are complete, or whether the class
+ files available to this module and packaged with
+ this application should be examined for annotations
+ that specify deployment information.
+
+ If metadata-complete is set to "true", the deployment
+ tool must ignore any annotations that specify deployment
+ information, which might be present in the class files
+ of the application.
+
+ If metadata-complete is not specified or is set to
+ "false", the deployment tool must examine the class
+ files of the application for annotations, as
+ specified by the specifications.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-resource-collectionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-collectionType is used to identify a subset
+ of the resources and HTTP methods on those resources within
+ a web application to which a security constraint applies. If
+ no HTTP methods are specified, then the security constraint
+ applies to all HTTP methods.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="web-resource-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-name contains the name of this web
+ resource collection.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="http-method"
+ type="javaee:http-methodType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="welcome-file-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file-list contains an ordered list of welcome
+ files elements.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="welcome-file"
+ type="xsd:string"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file element contains file name to use
+ as a default welcome file, such as index.html
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
+
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/web-common_3_0.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,1554 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://java.sun.com/xml/ns/javaee"
- xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="3.0">
- <xsd:annotation>
- <xsd:documentation>
-
- $Id$
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
-
- Copyright 2003-2009 Sun Microsystems, Inc. All rights reserved.
-
- The contents of this file are subject to the terms of either the
- GNU General Public License Version 2 only ("GPL") or the Common
- Development and Distribution License("CDDL") (collectively, the
- "License"). You may not use this file except in compliance with
- the License. You can obtain a copy of the License at
- https://glassfish.dev.java.net/public/CDDL+GPL.html or
- glassfish/bootstrap/legal/LICENSE.txt. See the License for the
- specific language governing permissions and limitations under the
- License.
-
- When distributing the software, include this License Header
- Notice in each file and include the License file at
- glassfish/bootstrap/legal/LICENSE.txt. Sun designates this
- particular file as subject to the "Classpath" exception as
- provided by Sun in the GPL Version 2 section of the License file
- that accompanied this code. If applicable, add the following
- below the License Header, with the fields enclosed by brackets []
- replaced by your own identifying information:
- "Portions Copyrighted [year] [name of copyright owner]"
-
- Contributor(s):
-
- If you wish your version of this file to be governed by only the
- CDDL or only the GPL Version 2, indicate your decision by adding
- "[Contributor] elects to include this software in this
- distribution under the [CDDL or GPL Version 2] license." If you
- don't indicate a single choice of license, a recipient has the
- option to distribute your version of this file under either the
- CDDL, the GPL Version 2 or to extend the choice of license to its
- licensees as provided above. However, if you add GPL Version 2
- code and therefore, elected the GPL Version 2 license, then the
- option applies only if the new code is made subject to such
- option by the copyright holder.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-<![CDATA[[
- This is the common XML Schema for the Servlet 3.0 deployment descriptor.
- This file is in turn used by web.xml and web-fragment.xml
- web application's war file. All Servlet deployment descriptors
- must indicate the web common schema by using the Java EE
- namespace:
-
- http://java.sun.com/xml/ns/javaee
-
- and by indicating the version of the schema by
- using the version element as shown below:
-
- <web-app xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="..."
- version="3.0">
- ...
- </web-app>
-
- The instance documents may indicate the published version of
- the schema using the xsi:schemaLocation attribute for Java EE
- namespace with the following location:
-
- http://java.sun.com/xml/ns/javaee/web-common_3_0.xsd
-
-]]>
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- The following conventions apply to all Java EE
- deployment descriptor elements unless indicated otherwise.
-
- - In elements that specify a pathname to a file within the
- same JAR file, relative filenames (i.e., those not
- starting with "/") are considered relative to the root of
- the JAR file's namespace. Absolute filenames (i.e., those
- starting with "/") also specify names in the root of the
- JAR file's namespace. In general, relative names are
- preferred. The exception is .war files where absolute
- names are preferred for consistency with the Servlet API.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="javaee_6.xsd"/>
-
- <xsd:include schemaLocation="jsp_2_2.xsd"/>
-
- <xsd:group name="web-commonType">
- <xsd:choice>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="name"
- type="javaee:java-identifierType"/>
- <xsd:element name="distributable"
- type="javaee:emptyType"/>
- <xsd:element name="context-param"
- type="javaee:param-valueType">
- <xsd:annotation>
- <xsd:documentation>
-
- The context-param element contains the declaration
- of a web application's servlet context
- initialization parameters.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="filter"
- type="javaee:filterType"/>
- <xsd:element name="filter-mapping"
- type="javaee:filter-mappingType"/>
- <xsd:element name="listener"
- type="javaee:listenerType"/>
- <xsd:element name="servlet"
- type="javaee:servletType"/>
- <xsd:element name="servlet-mapping"
- type="javaee:servlet-mappingType"/>
- <xsd:element name="session-config"
- type="javaee:session-configType"/>
- <xsd:element name="mime-mapping"
- type="javaee:mime-mappingType"/>
- <xsd:element name="welcome-file-list"
- type="javaee:welcome-file-listType"/>
- <xsd:element name="error-page"
- type="javaee:error-pageType"/>
- <xsd:element name="jsp-config"
- type="javaee:jsp-configType"/>
- <xsd:element name="security-constraint"
- type="javaee:security-constraintType"/>
- <xsd:element name="login-config"
- type="javaee:login-configType"/>
- <xsd:element name="security-role"
- type="javaee:security-roleType"/>
- <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
- <xsd:element name="message-destination"
- type="javaee:message-destinationType"/>
- <xsd:element name="locale-encoding-mapping-list"
- type="javaee:locale-encoding-mapping-listType"/>
- </xsd:choice>
- </xsd:group>
-
- <xsd:attributeGroup name="web-common-attributes">
- <xsd:attribute name="version"
- type="javaee:web-app-versionType"
- use="required"/>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- <xsd:attribute name="metadata-complete"
- type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>
-
- The metadata-complete attribute defines whether this
- deployment descriptor and other related deployment
- descriptors for this module (e.g., web service
- descriptors) are complete, or whether the class
- files available to this module and packaged with
- this application should be examined for annotations
- that specify deployment information.
-
- If metadata-complete is set to "true", the deployment
- tool must ignore any annotations that specify deployment
- information, which might be present in the class files
- of the application.
-
- If metadata-complete is not specified or is set to
- "false", the deployment tool must examine the class
- files of the application for annotations, as
- specified by the specifications.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:attributeGroup>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-appType">
- <xsd:choice minOccurs="0"
- maxOccurs="unbounded">
- <xsd:group ref="javaee:web-commonType"/>
- <xsd:element name="module-name"
- type="javaee:string"
- minOccurs="0"/>
- <xsd:element name="absolute-ordering"
- type="javaee:absoluteOrderingType"/>
- </xsd:choice>
- <xsd:attributeGroup ref="javaee:web-common-attributes"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-fragmentType">
- <xsd:choice minOccurs="0"
- maxOccurs="unbounded">
- <xsd:group ref="javaee:web-commonType"/>
- <xsd:element name="ordering"
- type="javaee:orderingType"/>
- </xsd:choice>
- <xsd:attributeGroup ref="javaee:web-common-attributes"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="auth-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The auth-constraintType indicates the user roles that
- should be permitted access to this resource
- collection. The role-name used here must either correspond
- to the role-name of one of the security-role elements
- defined for this web application, or be the specially
- reserved role-name "*" that is a compact syntax for
- indicating all roles in the web application. If both "*"
- and rolenames appear, the container interprets this as all
- roles. If no roles are defined, no user is allowed access
- to the portion of the web application described by the
- containing security-constraint. The container matches
- role names case sensitively when determining access.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description"
- type="javaee:descriptionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="role-name"
- type="javaee:role-nameType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="auth-methodType">
- <xsd:annotation>
- <xsd:documentation>
-
- The auth-methodType is used to configure the authentication
- mechanism for the web application. As a prerequisite to
- gaining access to any web resources which are protected by
- an authorization constraint, a user must have authenticated
- using the configured mechanism. Legal values are "BASIC",
- "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
- authentication scheme.
-
- Used in: login-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="dispatcherType">
- <xsd:annotation>
- <xsd:documentation>
-
- The dispatcher has five legal values: FORWARD, REQUEST,
- INCLUDE, ASYNC, and ERROR.
-
- A value of FORWARD means the Filter will be applied under
- RequestDispatcher.forward() calls.
- A value of REQUEST means the Filter will be applied under
- ordinary client calls to the path or servlet.
- A value of INCLUDE means the Filter will be applied under
- RequestDispatcher.include() calls.
- A value of ASYNC means the Filter will be applied under
- calls dispatched from an AsyncContext.
- A value of ERROR means the Filter will be applied under the
- error page mechanism.
-
- The absence of any dispatcher elements in a filter-mapping
- indicates a default of applying filters only under ordinary
- client calls to the path or servlet.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="FORWARD"/>
- <xsd:enumeration value="INCLUDE"/>
- <xsd:enumeration value="REQUEST"/>
- <xsd:enumeration value="ASYNC"/>
- <xsd:enumeration value="ERROR"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="error-codeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The error-code contains an HTTP error code, ex: 404
-
- Used in: error-page
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:xsdPositiveIntegerType">
- <xsd:pattern value="\d{3}"/>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="error-pageType">
- <xsd:annotation>
- <xsd:documentation>
-
- The error-pageType contains a mapping between an error code
- or exception type to the path of a resource in the web
- application.
-
- Error-page declarations using the exception-type element in
- the deployment descriptor must be unique up to the class name of
- the exception-type. Similarly, error-page declarations using the
- status-code element must be unique in the deployment descriptor
- up to the status code.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice minOccurs="0"
- maxOccurs="1">
- <xsd:element name="error-code"
- type="javaee:error-codeType"/>
- <xsd:element name="exception-type"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The exception-type contains a fully qualified class
- name of a Java exception type.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- <xsd:element name="location"
- type="javaee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The location element contains the location of the
- resource in the web application relative to the root of
- the web application. The value of the location must have
- a leading `/'.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filterType">
- <xsd:annotation>
- <xsd:documentation>
-
- The filterType is used to declare a filter in the web
- application. The filter is mapped to either a servlet or a
- URL pattern in the filter-mapping element, using the
- filter-name value to reference. Filters can access the
- initialization parameters declared in the deployment
- descriptor at runtime via the FilterConfig interface.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="filter-name"
- type="javaee:filter-nameType"/>
- <xsd:element name="filter-class"
- type="javaee:fully-qualified-classType"
- minOccurs="0"
- maxOccurs="1">
- <xsd:annotation>
- <xsd:documentation>
-
- The fully qualified classname of the filter.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="async-supported"
- type="javaee:true-falseType"
- minOccurs="0"/>
- <xsd:element name="init-param"
- type="javaee:param-valueType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The init-param element contains a name/value pair as
- an initialization param of a servlet filter
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filter-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- Declaration of the filter mappings in this web
- application is done by using filter-mappingType.
- The container uses the filter-mapping
- declarations to decide which filters to apply to a request,
- and in what order. The container matches the request URI to
- a Servlet in the normal way. To determine which filters to
- apply it matches filter-mapping declarations either on
- servlet-name, or on url-pattern for each filter-mapping
- element, depending on which style is used. The order in
- which filters are invoked is the order in which
- filter-mapping declarations that match a request URI for a
- servlet appear in the list of filter-mapping elements.The
- filter-name value must be the value of the filter-name
- sub-elements of one of the filter declarations in the
- deployment descriptor.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="filter-name"
- type="javaee:filter-nameType"/>
- <xsd:choice minOccurs="1"
- maxOccurs="unbounded">
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"/>
- <xsd:element name="servlet-name"
- type="javaee:servlet-nameType"/>
- </xsd:choice>
- <xsd:element name="dispatcher"
- type="javaee:dispatcherType"
- minOccurs="0"
- maxOccurs="5"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="nonEmptyStringType">
- <xsd:annotation>
- <xsd:documentation>
-
- This type defines a string which contains at least one
- character.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:minLength value="1"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="filter-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The logical name of the filter is declare
- by using filter-nameType. This name is used to map the
- filter. Each filter name is unique within the web
- application.
-
- Used in: filter, filter-mapping
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="form-login-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-login-configType specifies the login and error
- pages that should be used in form based login. If form based
- authentication is not used, these elements are ignored.
-
- Used in: login-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="form-login-page"
- type="javaee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-login-page element defines the location in the web
- app where the page that can be used for login can be
- found. The path begins with a leading / and is interpreted
- relative to the root of the WAR.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="form-error-page"
- type="javaee:war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The form-error-page element defines the location in
- the web app where the error page that is displayed
- when login is not successful can be found.
- The path begins with a leading / and is interpreted
- relative to the root of the WAR.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
- <xsd:simpleType name="http-methodType">
- <xsd:annotation>
- <xsd:documentation>
-
- A HTTP method type as defined in HTTP 1.1 section 2.2.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[!-~-[\(\)<>@,;:"/\[\]?=\{\}\\\p{Z}]]+"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:simpleType name="load-on-startupType">
- <xsd:union memberTypes="javaee:null-charType xsd:integer"/>
- </xsd:simpleType>
-
- <xsd:simpleType name="null-charType">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value=""/>
- </xsd:restriction>
- </xsd:simpleType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="login-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The login-configType is used to configure the authentication
- method that should be used, the realm name that should be
- used for this application, and the attributes that are
- needed by the form login mechanism.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="auth-method"
- type="javaee:auth-methodType"
- minOccurs="0"/>
- <xsd:element name="realm-name"
- type="javaee:string"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The realm name element specifies the realm name to
- use in HTTP Basic authorization.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="form-login-config"
- type="javaee:form-login-configType"
- minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mime-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The mime-mappingType defines a mapping between an extension
- and a mime type.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:annotation>
- <xsd:documentation>
-
- The extension element contains a string describing an
- extension. example: "txt"
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:element name="extension"
- type="javaee:string"/>
- <xsd:element name="mime-type"
- type="javaee:mime-typeType"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mime-typeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The mime-typeType is used to indicate a defined mime type.
-
- Example:
- "text/plain"
-
- Used in: mime-mapping
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="security-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The security-constraintType is used to associate
- security constraints with one or more web resource
- collections
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="display-name"
- type="javaee:display-nameType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="web-resource-collection"
- type="javaee:web-resource-collectionType"
- maxOccurs="unbounded"/>
- <xsd:element name="auth-constraint"
- type="javaee:auth-constraintType"
- minOccurs="0"/>
- <xsd:element name="user-data-constraint"
- type="javaee:user-data-constraintType"
- minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servletType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servletType is used to declare a servlet.
- It contains the declarative data of a
- servlet. If a jsp-file is specified and the load-on-startup
- element is present, then the JSP should be precompiled and
- loaded.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="servlet-name"
- type="javaee:servlet-nameType"/>
- <xsd:choice minOccurs="0"
- maxOccurs="1">
- <xsd:element name="servlet-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-class element contains the fully
- qualified class name of the servlet.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="jsp-file"
- type="javaee:jsp-fileType"/>
- </xsd:choice>
- <xsd:element name="init-param"
- type="javaee:param-valueType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="load-on-startup"
- type="javaee:load-on-startupType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The load-on-startup element indicates that this
- servlet should be loaded (instantiated and have
- its init() called) on the startup of the web
- application. The optional contents of these
- element must be an integer indicating the order in
- which the servlet should be loaded. If the value
- is a negative integer, or the element is not
- present, the container is free to load the servlet
- whenever it chooses. If the value is a positive
- integer or 0, the container must load and
- initialize the servlet as the application is
- deployed. The container must guarantee that
- servlets marked with lower integers are loaded
- before servlets marked with higher integers. The
- container may choose the order of loading of
- servlets with the same load-on-start-up value.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="enabled"
- type="javaee:true-falseType"
- minOccurs="0"/>
- <xsd:element name="async-supported"
- type="javaee:true-falseType"
- minOccurs="0"/>
- <xsd:element name="run-as"
- type="javaee:run-asType"
- minOccurs="0"/>
- <xsd:element name="security-role-ref"
- type="javaee:security-role-refType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="multipart-config"
- type="javaee:multipart-configType"
- minOccurs="0"
- maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servlet-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-mappingType defines a mapping between a
- servlet and a url pattern.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="servlet-name"
- type="javaee:servlet-nameType"/>
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"
- minOccurs="1"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="servlet-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The servlet-name element contains the canonical name of the
- servlet. Each servlet name is unique within the web
- application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="session-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The session-configType defines the session parameters
- for this web application.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="session-timeout"
- type="javaee:xsdIntegerType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The session-timeout element defines the default
- session timeout interval for all sessions created
- in this web application. The specified timeout
- must be expressed in a whole number of minutes.
- If the timeout is 0 or less, the container ensures
- the default behaviour of sessions is never to time
- out. If this element is not specified, the container
- must set its default timeout period.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="cookie-config"
- type="javaee:cookie-configType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The cookie-config element defines the configuration of the
- session tracking cookies created by this web application.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="tracking-mode"
- type="javaee:tracking-modeType"
- minOccurs="0"
- maxOccurs="3">
- <xsd:annotation>
- <xsd:documentation>
-
- The tracking-mode element defines the tracking modes
- for sessions created by this web application
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="cookie-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The cookie-configType defines the configuration for the
- session tracking cookies of this web application.
-
- Used in: session-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="name"
- type="javaee:cookie-nameType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The name that will be assigned to any session tracking
- cookies created by this web application.
- The default is JSESSIONID
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="domain"
- type="javaee:cookie-domainType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The domain name that will be assigned to any session tracking
- cookies created by this web application.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="path"
- type="javaee:cookie-pathType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The path that will be assigned to any session tracking
- cookies created by this web application.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="comment"
- type="javaee:cookie-commentType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The comment that will be assigned to any session tracking
- cookies created by this web application.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="http-only"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Specifies whether any session tracking cookies created
- by this web application will be marked as HttpOnly
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="secure"
- type="javaee:true-falseType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Specifies whether any session tracking cookies created
- by this web application will be marked as secure
- even if the request that initiated the corresponding session
- is using plain HTTP instead of HTTPS
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="max-age"
- type="javaee:xsdIntegerType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The lifetime (in seconds) that will be assigned to any
- session tracking cookies created by this web application.
- Default is -1
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="cookie-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- The name that will be assigned to any session tracking
- cookies created by this web application.
- The default is JSESSIONID
-
- Used in: cookie-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="cookie-domainType">
- <xsd:annotation>
- <xsd:documentation>
-
- The domain name that will be assigned to any session tracking
- cookies created by this web application.
-
- Used in: cookie-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="cookie-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The path that will be assigned to any session tracking
- cookies created by this web application.
-
- Used in: cookie-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="cookie-commentType">
- <xsd:annotation>
- <xsd:documentation>
-
- The comment that will be assigned to any session tracking
- cookies created by this web application.
-
- Used in: cookie-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:nonEmptyStringType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tracking-modeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The tracking modes for sessions created by this web
- application
-
- Used in: session-config
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="COOKIE"/>
- <xsd:enumeration value="URL"/>
- <xsd:enumeration value="SSL"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="transport-guaranteeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The transport-guaranteeType specifies that the communication
- between client and server should be NONE, INTEGRAL, or
- CONFIDENTIAL. NONE means that the application does not
- require any transport guarantees. A value of INTEGRAL means
- that the application requires that the data sent between the
- client and server be sent in such a way that it can't be
- changed in transit. CONFIDENTIAL means that the application
- requires that the data be transmitted in a fashion that
- prevents other entities from observing the contents of the
- transmission. In most cases, the presence of the INTEGRAL or
- CONFIDENTIAL flag will indicate that the use of SSL is
- required.
-
- Used in: user-data-constraint
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="NONE"/>
- <xsd:enumeration value="INTEGRAL"/>
- <xsd:enumeration value="CONFIDENTIAL"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="user-data-constraintType">
- <xsd:annotation>
- <xsd:documentation>
-
- The user-data-constraintType is used to indicate how
- data communicated between the client and container should be
- protected.
-
- Used in: security-constraint
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description"
- type="javaee:descriptionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="transport-guarantee"
- type="javaee:transport-guaranteeType"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="war-pathType">
- <xsd:annotation>
- <xsd:documentation>
-
- The elements that use this type designate a path starting
- with a "/" and interpreted relative to the root of a WAR
- file.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:pattern value="/.*"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <xsd:simpleType name="web-app-versionType">
- <xsd:annotation>
- <xsd:documentation>
-
- This type contains the recognized versions of
- web-application supported. It is used to designate the
- version of the web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="3.0"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="web-resource-collectionType">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-resource-collectionType is used to identify the
- resources and HTTP methods on those resources to which a
- security constraint applies. If no HTTP methods are specified,
- then the security constraint applies to all HTTP methods.
- If HTTP methods are specified by http-method-omission
- elements, the security constraint applies to all methods
- except those identified in the collection.
- http-method-omission and http-method elements are never
- mixed in the same collection.
-
- Used in: security-constraint
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="web-resource-name"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The web-resource-name contains the name of this web
- resource collection.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="description"
- type="javaee:descriptionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="url-pattern"
- type="javaee:url-patternType"
- maxOccurs="unbounded"/>
- <xsd:choice minOccurs="0"
- maxOccurs="1">
- <xsd:element name="http-method"
- type="javaee:http-methodType"
- minOccurs="1"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Each http-method names an HTTP method to which the
- constraint applies.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="http-method-omission"
- type="javaee:http-methodType"
- minOccurs="1"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Each http-method-omission names an HTTP method to
- which the constraint does not apply.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="welcome-file-listType">
- <xsd:annotation>
- <xsd:documentation>
-
- The welcome-file-list contains an ordered list of welcome
- files elements.
-
- Used in: web-app
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="welcome-file"
- type="xsd:string"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The welcome-file element contains file name to use
- as a default welcome file, such as index.html
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
- <xsd:simpleType name="localeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The localeType defines valid locale defined by ISO-639-1
- and ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:simpleType name="encodingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The encodingType defines IANA character sets.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[^\s]+"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="locale-encoding-mapping-listType">
- <xsd:annotation>
- <xsd:documentation>
-
- The locale-encoding-mapping-list contains one or more
- locale-encoding-mapping(s).
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="locale-encoding-mapping"
- type="javaee:locale-encoding-mappingType"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="locale-encoding-mappingType">
- <xsd:annotation>
- <xsd:documentation>
-
- The locale-encoding-mapping contains locale name and
- encoding name. The locale name must be either "Language-code",
- such as "ja", defined by ISO-639 or "Language-code_Country-code",
- such as "ja_JP". "Country code" is defined by ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="locale"
- type="javaee:localeType"/>
- <xsd:element name="encoding"
- type="javaee:encodingType"/>
- </xsd:sequence>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="ordering-othersType">
- <xsd:annotation>
- <xsd:documentation>
-
- This element indicates that the ordering sub-element in which
- it was placed should take special action regarding the ordering
- of this application resource relative to other application
- configuration resources.
- See section 8.2.2 of the specification for details.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="id"
- type="xsd:ID"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="absoluteOrderingType">
- <xsd:annotation>
- <xsd:documentation>
-
- Please see section 8.2.2 of the specification for details.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice minOccurs="0"
- maxOccurs="unbounded">
- <xsd:element name="name"
- type="javaee:java-identifierType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="others"
- type="javaee:ordering-othersType"
- minOccurs="0"
- maxOccurs="1"/>
- </xsd:choice>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="orderingType">
- <xsd:annotation>
- <xsd:documentation>
-
- Please see section 8.2.2 of the specification for details.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="after"
- type="javaee:ordering-orderingType"
- minOccurs="0"
- maxOccurs="1"/>
- <xsd:element name="before"
- type="javaee:ordering-orderingType"
- minOccurs="0"
- maxOccurs="1"/>
- </xsd:sequence>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="ordering-orderingType">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains a sequence of "name" elements, each of
- which
- refers to an application configuration resource by the "name"
- declared on its web.xml fragment. This element can also contain
- a single "others" element which specifies that this document
- comes
- before or after other documents within the application.
- See section 8.2.2 of the specification for details.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="name"
- type="javaee:java-identifierType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="others"
- type="javaee:ordering-othersType"
- minOccurs="0"
- maxOccurs="1"/>
- </xsd:sequence>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="multipart-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains a sequence of "name" elements, each of which
- refers to an application configuration resource by the "name"
- declared on its web.xml fragment. This element can also contain
- a single "others" element which specifies that this document comes
- before or after other documents within the application.
- See section 8.2.2 of the specification for details.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="location"
- type="javaee:string"
- minOccurs="0"
- maxOccurs="1"/>
- <xsd:element name="max-file-size"
- type="xsd:long"
- minOccurs="0"
- maxOccurs="1"/>
- <xsd:element name="max-request-size"
- type="xsd:long"
- minOccurs="0"
- maxOccurs="1"/>
- <xsd:element name="file-size-threshold"
- type="xsd:integer"
- minOccurs="0"
- maxOccurs="1"/>
- </xsd:sequence>
- </xsd:complexType>
-
-</xsd:schema>
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/web-common_3_0.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-common_3_0.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,1583 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="3.0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ $Id$
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright 2003-2009 Sun Microsystems, Inc. All rights reserved.
+
+ The contents of this file are subject to the terms of either the
+ GNU General Public License Version 2 only ("GPL") or the Common
+ Development and Distribution License("CDDL") (collectively, the
+ "License"). You may not use this file except in compliance with
+ the License. You can obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL.html or
+ glassfish/bootstrap/legal/LICENSE.txt. See the License for the
+ specific language governing permissions and limitations under the
+ License.
+
+ When distributing the software, include this License Header
+ Notice in each file and include the License file at
+ glassfish/bootstrap/legal/LICENSE.txt. Sun designates this
+ particular file as subject to the "Classpath" exception as
+ provided by Sun in the GPL Version 2 section of the License file
+ that accompanied this code. If applicable, add the following
+ below the License Header, with the fields enclosed by brackets []
+ replaced by your own identifying information:
+ "Portions Copyrighted [year] [name of copyright owner]"
+
+ Contributor(s):
+
+ If you wish your version of this file to be governed by only the
+ CDDL or only the GPL Version 2, indicate your decision by adding
+ "[Contributor] elects to include this software in this
+ distribution under the [CDDL or GPL Version 2] license." If you
+ don't indicate a single choice of license, a recipient has the
+ option to distribute your version of this file under either the
+ CDDL, the GPL Version 2 or to extend the choice of license to its
+ licensees as provided above. However, if you add GPL Version 2
+ code and therefore, elected the GPL Version 2 license, then the
+ option applies only if the new code is made subject to such
+ option by the copyright holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the common XML Schema for the Servlet 3.0 deployment descriptor.
+ This file is in turn used by web.xml and web-fragment.xml
+ web application's war file. All Servlet deployment descriptors
+ must indicate the web common schema by using the Java EE
+ namespace:
+
+ http://java.sun.com/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="3.0">
+ ...
+ </web-app>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://java.sun.com/xml/ns/javaee/web-common_3_0.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_6.xsd"/>
+
+ <xsd:include schemaLocation="jsp_2_2.xsd"/>
+
+ <xsd:group name="web-commonType">
+ <xsd:choice>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="javaee:java-identifierType"/>
+ <xsd:element name="distributable"
+ type="javaee:emptyType"/>
+ <xsd:element name="context-param"
+ type="javaee:param-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The context-param element contains the declaration
+ of a web application's servlet context
+ initialization parameters.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="filter"
+ type="javaee:filterType"/>
+ <xsd:element name="filter-mapping"
+ type="javaee:filter-mappingType"/>
+ <xsd:element name="listener"
+ type="javaee:listenerType"/>
+ <xsd:element name="servlet"
+ type="javaee:servletType"/>
+ <xsd:element name="servlet-mapping"
+ type="javaee:servlet-mappingType"/>
+ <xsd:element name="session-config"
+ type="javaee:session-configType"/>
+ <xsd:element name="mime-mapping"
+ type="javaee:mime-mappingType"/>
+ <xsd:element name="welcome-file-list"
+ type="javaee:welcome-file-listType"/>
+ <xsd:element name="error-page"
+ type="javaee:error-pageType"/>
+ <xsd:element name="jsp-config"
+ type="javaee:jsp-configType"/>
+ <xsd:element name="security-constraint"
+ type="javaee:security-constraintType"/>
+ <xsd:element name="login-config"
+ type="javaee:login-configType"/>
+ <xsd:element name="security-role"
+ type="javaee:security-roleType"/>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="message-destination"
+ type="javaee:message-destinationType"/>
+ <xsd:element name="locale-encoding-mapping-list"
+ type="javaee:locale-encoding-mapping-listType"/>
+ </xsd:choice>
+ </xsd:group>
+
+ <xsd:attributeGroup name="web-common-attributes">
+ <xsd:attribute name="version"
+ type="javaee:web-app-versionType"
+ use="required"/>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ <xsd:attribute name="metadata-complete"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether this
+ deployment descriptor and other related deployment
+ descriptors for this module (e.g., web service
+ descriptors) are complete, or whether the class
+ files available to this module and packaged with
+ this application should be examined for annotations
+ that specify deployment information.
+
+ If metadata-complete is set to "true", the deployment
+ tool must ignore any annotations that specify deployment
+ information, which might be present in the class files
+ of the application.
+
+ If metadata-complete is not specified or is set to
+ "false", the deployment tool must examine the class
+ files of the application for annotations, as
+ specified by the specifications.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-appType">
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="module-name"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:web-commonType"/>
+ <xsd:element name="absolute-ordering"
+ type="javaee:absoluteOrderingType"/>
+ </xsd:choice>
+ <xsd:attributeGroup ref="javaee:web-common-attributes"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-fragmentType">
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:group ref="javaee:web-commonType"/>
+ <xsd:element name="ordering"
+ type="javaee:orderingType"/>
+ </xsd:choice>
+ <xsd:attributeGroup ref="javaee:web-common-attributes"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-constraintType indicates the user roles that
+ should be permitted access to this resource
+ collection. The role-name used here must either correspond
+ to the role-name of one of the security-role elements
+ defined for this web application, or be the specially
+ reserved role-name "*" that is a compact syntax for
+ indicating all roles in the web application. If both "*"
+ and rolenames appear, the container interprets this as all
+ roles. If no roles are defined, no user is allowed access
+ to the portion of the web application described by the
+ containing security-constraint. The container matches
+ role names case sensitively when determining access.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-methodType is used to configure the authentication
+ mechanism for the web application. As a prerequisite to
+ gaining access to any web resources which are protected by
+ an authorization constraint, a user must have authenticated
+ using the configured mechanism. Legal values are "BASIC",
+ "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
+ authentication scheme.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="dispatcherType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The dispatcher has five legal values: FORWARD, REQUEST,
+ INCLUDE, ASYNC, and ERROR.
+
+ A value of FORWARD means the Filter will be applied under
+ RequestDispatcher.forward() calls.
+ A value of REQUEST means the Filter will be applied under
+ ordinary client calls to the path or servlet.
+ A value of INCLUDE means the Filter will be applied under
+ RequestDispatcher.include() calls.
+ A value of ASYNC means the Filter will be applied under
+ calls dispatched from an AsyncContext.
+ A value of ERROR means the Filter will be applied under the
+ error page mechanism.
+
+ The absence of any dispatcher elements in a filter-mapping
+ indicates a default of applying filters only under ordinary
+ client calls to the path or servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="FORWARD"/>
+ <xsd:enumeration value="INCLUDE"/>
+ <xsd:enumeration value="REQUEST"/>
+ <xsd:enumeration value="ASYNC"/>
+ <xsd:enumeration value="ERROR"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-codeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-code contains an HTTP error code, ex: 404
+
+ Used in: error-page
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdPositiveIntegerType">
+ <xsd:pattern value="\d{3}"/>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-pageType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-pageType contains a mapping between an error code
+ or exception type to the path of a resource in the web
+ application.
+
+ Error-page declarations using the exception-type element in
+ the deployment descriptor must be unique up to the class name of
+ the exception-type. Similarly, error-page declarations using the
+ status-code element must be unique in the deployment descriptor
+ up to the status code.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="error-code"
+ type="javaee:error-codeType"/>
+ <xsd:element name="exception-type"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The exception-type contains a fully qualified class
+ name of a Java exception type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:element name="location"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The location element contains the location of the
+ resource in the web application relative to the root of
+ the web application. The value of the location must have
+ a leading `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filterType is used to declare a filter in the web
+ application. The filter is mapped to either a servlet or a
+ URL pattern in the filter-mapping element, using the
+ filter-name value to reference. Filters can access the
+ initialization parameters declared in the deployment
+ descriptor at runtime via the FilterConfig interface.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="filter-name"
+ type="javaee:filter-nameType"/>
+ <xsd:element name="filter-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully qualified classname of the filter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="async-supported"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-param element contains a name/value pair as
+ an initialization param of a servlet filter
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Declaration of the filter mappings in this web
+ application is done by using filter-mappingType.
+ The container uses the filter-mapping
+ declarations to decide which filters to apply to a request,
+ and in what order. The container matches the request URI to
+ a Servlet in the normal way. To determine which filters to
+ apply it matches filter-mapping declarations either on
+ servlet-name, or on url-pattern for each filter-mapping
+ element, depending on which style is used. The order in
+ which filters are invoked is the order in which
+ filter-mapping declarations that match a request URI for a
+ servlet appear in the list of filter-mapping elements.The
+ filter-name value must be the value of the filter-name
+ sub-elements of one of the filter declarations in the
+ deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="filter-name"
+ type="javaee:filter-nameType"/>
+ <xsd:choice minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"/>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ </xsd:choice>
+ <xsd:element name="dispatcher"
+ type="javaee:dispatcherType"
+ minOccurs="0"
+ maxOccurs="5"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="nonEmptyStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type defines a string which contains at least one
+ character.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:minLength value="1"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The logical name of the filter is declare
+ by using filter-nameType. This name is used to map the
+ filter. Each filter name is unique within the web
+ application.
+
+ Used in: filter, filter-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="form-login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-configType specifies the login and error
+ pages that should be used in form based login. If form based
+ authentication is not used, these elements are ignored.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="form-login-page"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-page element defines the location in the web
+ app where the page that can be used for login can be
+ found. The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="form-error-page"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-error-page element defines the location in
+ the web app where the error page that is displayed
+ when login is not successful can be found.
+ The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="http-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A HTTP method type as defined in HTTP 1.1 section 2.2.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:pattern value="[!-~-[\(\)<>@,;:"/\[\]?=\{\}\\\p{Z}]]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="load-on-startupType">
+ <xsd:union memberTypes="javaee:null-charType xsd:integer"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="null-charType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value=""/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The login-configType is used to configure the authentication
+ method that should be used, the realm name that should be
+ used for this application, and the attributes that are
+ needed by the form login mechanism.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="auth-method"
+ type="javaee:auth-methodType"
+ minOccurs="0"/>
+ <xsd:element name="realm-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The realm name element specifies the realm name to
+ use in HTTP Basic authorization.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="form-login-config"
+ type="javaee:form-login-configType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-mappingType defines a mapping between an extension
+ and a mime type.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The extension element contains a string describing an
+ extension. example: "txt"
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="extension"
+ type="javaee:string"/>
+ <xsd:element name="mime-type"
+ type="javaee:mime-typeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-typeType is used to indicate a defined mime type.
+
+ Example:
+ "text/plain"
+
+ Used in: mime-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-constraintType is used to associate
+ security constraints with one or more web resource
+ collections
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="display-name"
+ type="javaee:display-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="web-resource-collection"
+ type="javaee:web-resource-collectionType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="auth-constraint"
+ type="javaee:auth-constraintType"
+ minOccurs="0"/>
+ <xsd:element name="user-data-constraint"
+ type="javaee:user-data-constraintType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servletType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servletType is used to declare a servlet.
+ It contains the declarative data of a
+ servlet. If a jsp-file is specified and the load-on-startup
+ element is present, then the JSP should be precompiled and
+ loaded.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="servlet-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-class element contains the fully
+ qualified class name of the servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="jsp-file"
+ type="javaee:jsp-fileType"/>
+ </xsd:choice>
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="load-on-startup"
+ type="javaee:load-on-startupType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The load-on-startup element indicates that this
+ servlet should be loaded (instantiated and have
+ its init() called) on the startup of the web
+ application. The optional contents of these
+ element must be an integer indicating the order in
+ which the servlet should be loaded. If the value
+ is a negative integer, or the element is not
+ present, the container is free to load the servlet
+ whenever it chooses. If the value is a positive
+ integer or 0, the container must load and
+ initialize the servlet as the application is
+ deployed. The container must guarantee that
+ servlets marked with lower integers are loaded
+ before servlets marked with higher integers. The
+ container may choose the order of loading of
+ servlets with the same load-on-start-up value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="enabled"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="async-supported"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="run-as"
+ type="javaee:run-asType"
+ minOccurs="0"/>
+ <xsd:element name="security-role-ref"
+ type="javaee:security-role-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="multipart-config"
+ type="javaee:multipart-configType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-mappingType defines a mapping between a
+ servlet and a url pattern.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ minOccurs="1"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-name element contains the canonical name of the
+ servlet. Each servlet name is unique within the web
+ application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="session-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-configType defines the session parameters
+ for this web application.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="session-timeout"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-timeout element defines the default
+ session timeout interval for all sessions created
+ in this web application. The specified timeout
+ must be expressed in a whole number of minutes.
+ If the timeout is 0 or less, the container ensures
+ the default behaviour of sessions is never to time
+ out. If this element is not specified, the container
+ must set its default timeout period.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="cookie-config"
+ type="javaee:cookie-configType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cookie-config element defines the configuration of the
+ session tracking cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="tracking-mode"
+ type="javaee:tracking-modeType"
+ minOccurs="0"
+ maxOccurs="3">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tracking-mode element defines the tracking modes
+ for sessions created by this web application
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cookie-configType defines the configuration for the
+ session tracking cookies of this web application.
+
+ Used in: session-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:cookie-nameType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name that will be assigned to any session tracking
+ cookies created by this web application.
+ The default is JSESSIONID
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="domain"
+ type="javaee:cookie-domainType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The domain name that will be assigned to any session tracking
+ cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="path"
+ type="javaee:cookie-pathType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The path that will be assigned to any session tracking
+ cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="comment"
+ type="javaee:cookie-commentType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The comment that will be assigned to any session tracking
+ cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="http-only"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies whether any session tracking cookies created
+ by this web application will be marked as HttpOnly
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="secure"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies whether any session tracking cookies created
+ by this web application will be marked as secure
+ even if the request that initiated the corresponding session
+ is using plain HTTP instead of HTTPS
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-age"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The lifetime (in seconds) that will be assigned to any
+ session tracking cookies created by this web application.
+ Default is -1
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name that will be assigned to any session tracking
+ cookies created by this web application.
+ The default is JSESSIONID
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-domainType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The domain name that will be assigned to any session tracking
+ cookies created by this web application.
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The path that will be assigned to any session tracking
+ cookies created by this web application.
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-commentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The comment that will be assigned to any session tracking
+ cookies created by this web application.
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tracking-modeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tracking modes for sessions created by this web
+ application
+
+ Used in: session-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="COOKIE"/>
+ <xsd:enumeration value="URL"/>
+ <xsd:enumeration value="SSL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transport-guaranteeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transport-guaranteeType specifies that the communication
+ between client and server should be NONE, INTEGRAL, or
+ CONFIDENTIAL. NONE means that the application does not
+ require any transport guarantees. A value of INTEGRAL means
+ that the application requires that the data sent between the
+ client and server be sent in such a way that it can't be
+ changed in transit. CONFIDENTIAL means that the application
+ requires that the data be transmitted in a fashion that
+ prevents other entities from observing the contents of the
+ transmission. In most cases, the presence of the INTEGRAL or
+ CONFIDENTIAL flag will indicate that the use of SSL is
+ required.
+
+ Used in: user-data-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NONE"/>
+ <xsd:enumeration value="INTEGRAL"/>
+ <xsd:enumeration value="CONFIDENTIAL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="user-data-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The user-data-constraintType is used to indicate how
+ data communicated between the client and container should be
+ protected.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transport-guarantee"
+ type="javaee:transport-guaranteeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The elements that use this type designate a path starting
+ with a "/" and interpreted relative to the root of a WAR
+ file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="/.*"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="web-app-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type contains the recognized versions of
+ web-application supported. It is used to designate the
+ version of the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="3.0"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-resource-collectionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-collectionType is used to identify the
+ resources and HTTP methods on those resources to which a
+ security constraint applies. If no HTTP methods are specified,
+ then the security constraint applies to all HTTP methods.
+ If HTTP methods are specified by http-method-omission
+ elements, the security constraint applies to all methods
+ except those identified in the collection.
+ http-method-omission and http-method elements are never
+ mixed in the same collection.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="web-resource-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-name contains the name of this web
+ resource collection.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="http-method"
+ type="javaee:http-methodType"
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Each http-method names an HTTP method to which the
+ constraint applies.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="http-method-omission"
+ type="javaee:http-methodType"
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Each http-method-omission names an HTTP method to
+ which the constraint does not apply.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="welcome-file-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file-list contains an ordered list of welcome
+ files elements.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="welcome-file"
+ type="xsd:string"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file element contains file name to use
+ as a default welcome file, such as index.html
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The localeType defines valid locale defined by ISO-639-1
+ and ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="encodingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The encodingType defines IANA character sets.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mapping-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping-list contains one or more
+ locale-encoding-mapping(s).
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="locale-encoding-mapping"
+ type="javaee:locale-encoding-mappingType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping contains locale name and
+ encoding name. The locale name must be either "Language-code",
+ such as "ja", defined by ISO-639 or "Language-code_Country-code",
+ such as "ja_JP". "Country code" is defined by ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="locale"
+ type="javaee:localeType"/>
+ <xsd:element name="encoding"
+ type="javaee:encodingType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ordering-othersType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This element indicates that the ordering sub-element in which
+ it was placed should take special action regarding the ordering
+ of this application resource relative to other application
+ configuration resources.
+ See section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="absoluteOrderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Please see section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="others"
+ type="javaee:ordering-othersType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:choice>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="orderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Please see section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="after"
+ type="javaee:ordering-orderingType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="before"
+ type="javaee:ordering-orderingType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ordering-orderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This element contains a sequence of "name" elements, each of
+ which
+ refers to an application configuration resource by the "name"
+ declared on its web.xml fragment. This element can also contain
+ a single "others" element which specifies that this document
+ comes
+ before or after other documents within the application.
+ See section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="others"
+ type="javaee:ordering-othersType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="multipart-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This element specifies configuration information related to the
+ handling of multipart/form-data requests.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="location"
+ type="javaee:string"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The directory location where uploaded files will be stored
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-file-size"
+ type="xsd:long"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The maximum size limit of uploaded files
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-request-size"
+ type="xsd:long"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The maximum size limit of multipart/form-data requests
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="file-size-threshold"
+ type="xsd:integer"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The size threshold after which an uploaded file will be
+ written to disk
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+</xsd:schema>
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/web-facesconfig_1_2.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,2071 +0,0 @@
-<?xml version = "1.0" encoding = "UTF-8"?>
-
-<xsd:schema
- targetNamespace="http://java.sun.com/xml/ns/javaee"
- xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xml="http://www.w3.org/XML/1998/namespace"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.2">
-
- <xsd:annotation>
- <xsd:documentation>
- $Id: web-facesconfig_1_2.xsd,v 1.11 2006/03/27 00:12:24 rogerk Exp $
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- Copyright 2005 Sun Microsystems, Inc.,
- 901 San Antonio Road,
- Palo Alto, California 94303, U.S.A.
- All rights reserved.
-
- Sun Microsystems, Inc. has intellectual property
- rights relating to technology described in this document. In
- particular, and without limitation, these intellectual
- property rights may include one or more of the U.S. patents
- listed at http://www.sun.com/patents and one or more
- additional patents or pending patent applications in the
- U.S. and other countries.
-
- This document and the technology which it describes are
- distributed under licenses restricting their use, copying,
- distribution, and decompilation. No part of this document
- may be reproduced in any form by any means without prior
- written authorization of Sun and its licensors, if any.
-
- Third-party software, including font technology, is
- copyrighted and licensed from Sun suppliers.
-
- Sun, Sun Microsystems, the Sun logo, Solaris, Java, Java EE,
- JavaServer Pages, Enterprise JavaBeans and the Java Coffee
- Cup logo are trademarks or registered trademarks of Sun
- Microsystems, Inc. in the U.S. and other countries.
-
- Federal Acquisitions: Commercial Software - Government Users
- Subject to Standard License Terms and Conditions.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation>
-
- <![CDATA[
-
- The XML Schema for the JavaServer Faces Application
- Configuration File (Version 1.2).
-
- All JavaServer Faces configuration files must indicate
- the JavaServer Faces schema by indicating the JavaServer
- Faces namespace:
-
- http://java.sun.com/xml/ns/javaee
-
- and by indicating the version of the schema by
- using the version element as shown below:
-
- <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="..."
- version="1.2">
- ...
- </faces-config>
-
- The instance documents may indicate the published
- version of the schema using xsi:schemaLocation attribute
- for javaee namespace with the following location:
-
- http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd
-
- ]]>
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="javaee_5.xsd"/>
-
- <!-- **************************************************** -->
-
- <xsd:element name = "faces-config" type="javaee:faces-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "faces-config" element is the root of the configuration
- information hierarchy, and contains nested elements for all
- of the other configuration settings.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:unique name="faces-config-converter-ID-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- Converter IDs must be unique within a document.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:selector xpath="javaee:converter"/>
- <xsd:field xpath="javaee:converter-id"/>
- </xsd:unique>
-
- <xsd:unique name="faces-config-converter-for-class-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- 'converter-for-class' element values must be unique
- within a document.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:selector xpath="javaee:converter"/>
- <xsd:field xpath="javaee:converter-for-class"/>
- </xsd:unique>
-
- <xsd:unique name="faces-config-validator-ID-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- Validator IDs must be unique within a document.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:selector xpath="javaee:validator"/>
- <xsd:field xpath="javaee:validator-id"/>
- </xsd:unique>
-
- <xsd:unique name="faces-config-managed-bean-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- Managed bean names must be unique within a document.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:selector xpath="javaee:managed-bean"/>
- <xsd:field xpath="javaee:managed-bean-name"/>
- </xsd:unique>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "faces-config" element is the root of the configuration
- information hierarchy, and contains nested elements for all
- of the other configuration settings.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:element name="application"
- type="javaee:faces-config-applicationType"/>
- <xsd:element name="factory"
- type="javaee:faces-config-factoryType"/>
- <xsd:element name="component"
- type="javaee:faces-config-componentType"/>
- <xsd:element name="converter"
- type="javaee:faces-config-converterType"/>
- <xsd:element name="managed-bean"
- type="javaee:faces-config-managed-beanType"/>
- <xsd:element name="navigation-rule"
- type="javaee:faces-config-navigation-ruleType"/>
- <xsd:element name="referenced-bean"
- type="javaee:faces-config-referenced-beanType"/>
- <xsd:element name="render-kit"
- type="javaee:faces-config-render-kitType"/>
- <xsd:element name="lifecycle"
- type="javaee:faces-config-lifecycleType"/>
- <xsd:element name="validator"
- type="javaee:faces-config-validatorType"/>
- <xsd:element name="faces-config-extension"
- type="javaee:faces-config-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:attribute name = "id" type = "xsd:ID"/>
- <xsd:attribute name="version"
- type="javaee:faces-config-versionType"
- use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for faces-config. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-applicationType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "application" element provides a mechanism to define the
- various per-application-singleton implementation artifacts for
- a particular web application that is utilizing
- JavaServer Faces. For nested elements that are not specified,
- the JSF implementation must provide a suitable default.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:element name="action-listener"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "action-listener" element contains the fully
- qualified class name of the concrete
- ActionListener implementation class that will be
- called during the Invoke Application phase of the
- request processing lifecycle.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="default-render-kit-id"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "default-render-kit-id" element allows the
- application to define a renderkit to be used other
- than the standard one.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="message-bundle"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The base name of a resource bundle representing
- the message resources for this application. See
- the JavaDocs for the "java.util.ResourceBundle"
- class for more information on the syntax of
- resource bundle names.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="navigation-handler"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "navigation-handler" element contains the
- fully qualified class name of the concrete
- NavigationHandler implementation class that will
- be called during the Invoke Application phase
- of the request processing lifecycle, if the
- default ActionListener (provided by the JSF
- implementation) is used.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="view-handler"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "view-handler" element contains the fully
- qualified class name of the concrete ViewHandler
- implementation class that will be called during
- the Restore View and Render Response phases of the
- request processing lifecycle. The faces
- implementation must provide a default
- implementation of this class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="state-manager"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "state-manager" element contains the fully
- qualified class name of the concrete StateManager
- implementation class that will be called during
- the Restore View and Render Response phases of the
- request processing lifecycle. The faces
- implementation must provide a default
- implementation of this class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="el-resolver"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "el-resolver" element contains the fully
- qualified class name of the concrete
- javax.el.ELResolver implementation class
- that will be used during the processing of
- EL expressions.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="property-resolver"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "property-resolver" element contains the fully
- qualified class name of the concrete
- PropertyResolver implementation class that will
- be used during the processing of value binding
- expressions.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="variable-resolver"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "variable-resolver" element contains the fully
- qualified class name of the concrete
- VariableResolver implementation class that will
- be used during the processing of value binding
- expressions.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element
- name="locale-config"
- type="javaee:faces-config-locale-configType"/>
- <xsd:element
- name="resource-bundle"
- type="javaee:faces-config-application-resource-bundleType"/>
- <xsd:element name="application-extension"
- type="javaee:faces-config-application-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:attribute name = "id" type = "xsd:ID"/>
- </xsd:complexType>
-
- <xsd:complexType name="faces-config-application-resource-bundleType">
- <xsd:annotation>
- <xsd:documentation>
-
- The resource-bundle element inside the application element
- references a java.util.ResourceBundle instance by name
- using the var element. ResourceBundles referenced in this
- manner may be returned by a call to
- Application.getResourceBundle() passing the current
- FacesContext for this request and the value of the var
- element below.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="base-name"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The fully qualified class name of the
- java.util.ResourceBundle instance.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="var"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The name by which this ResourceBundle instance
- is retrieved by a call to
- Application.getResourceBundle().
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-application-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for application. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-factoryType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "factory" element provides a mechanism to define the
- various Factories that comprise parts of the implementation
- of JavaServer Faces. For nested elements that are not
- specified, the JSF implementation must provide a suitable
- default.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:element name="application-factory"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "application-factory" element contains the
- fully qualified class name of the concrete
- ApplicationFactory implementation class that will
- be called when
- FactoryFinder.getFactory(APPLICATION_FACTORY) is
- called.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="faces-context-factory"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "faces-context-factory" element contains the
- fully qualified class name of the concrete
- FacesContextFactory implementation class that will
- be called when
- FactoryFinder.getFactory(FACES_CONTEXT_FACTORY)
- is called.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="lifecycle-factory"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "lifecycle-factory" element contains the fully
- qualified class name of the concrete LifecycleFactory
- implementation class that will be called when
- FactoryFinder.getFactory(LIFECYCLE_FACTORY) is called.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="render-kit-factory"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "render-kit-factory" element contains the fully
- qualified class name of the concrete RenderKitFactory
- implementation class that will be called when
- FactoryFinder.getFactory(RENDER_KIT_FACTORY) is
- called.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="factory-extension"
- type="javaee:faces-config-factory-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:attribute name = "id" type = "xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-factory-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for factory. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-attributeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "attribute" element represents a named, typed, value
- associated with the parent UIComponent via the generic
- attributes mechanism.
-
- Attribute names must be unique within the scope of the parent
- (or related) component.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="attribute-name"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "attribute-name" element represents the name under
- which the corresponding value will be stored, in the
- generic attributes of the UIComponent we are related
- to.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "attribute-class" element represents the Java type
- of the value associated with this attribute name.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="default-value"
- type="javaee:faces-config-default-valueType"
- minOccurs="0"/>
- <xsd:element name="suggested-value"
- type="javaee:faces-config-suggested-valueType"
- minOccurs="0"/>
- <xsd:element name="attribute-extension"
- type="javaee:faces-config-attribute-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name = "id" type = "xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-attribute-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for attribute. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-componentType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "component" element represents a concrete UIComponent
- implementation class that should be registered under the
- specified type identifier, along with its associated
- properties and attributes. Component types must be unique
- within the entire web application.
-
- Nested "attribute" elements identify generic attributes that
- are recognized by the implementation logic of this component.
- Nested "property" elements identify JavaBeans properties of
- the component class that may be exposed for manipulation
- via tools.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="component-type"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "component-type" element represents the name under
- which the corresponding UIComponent class should be
- registered.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="component-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "component-class" element represents the fully
- qualified class name of a concrete UIComponent
- implementation class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="facet"
- type="javaee:faces-config-facetType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="attribute"
- type="javaee:faces-config-attributeType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="property"
- type="javaee:faces-config-propertyType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="component-extension"
- type="javaee:faces-config-component-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-component-extensionType">
- <xsd:annotation>
- <xsd:documentation>
- Extension element for component. It may contain
- implementation specific content.
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-default-localeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "default-locale" element declares the default locale
- for this application instance.
-
- It must be specified as :language:[_:country:[_:variant:]]
- without the colons, for example "ja_JP_SJIS". The
- separators between the segments may be '-' or '_'.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:faces-config-localeType">
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
-
- <xsd:complexType name="faces-config-default-valueType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "default-value" contains the value for the property or
- attribute in which this element resides. This value differs
- from the "suggested-value" in that the property or attribute
- must take the value, whereas in "suggested-value" taking the
- value is optional.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="faces-config-el-expressionType">
- <xsd:annotation>
- <xsd:documentation>
-
- EL expressions present within a faces config file
- must start with the character sequence of '#{' and
- end with '}'.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="#\{.*\}"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-facetType">
- <xsd:annotation>
- <xsd:documentation>
-
- Define the name and other design-time information for a facet
- that is associated with a renderer or a component.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="facet-name"
- type="javaee:java-identifierType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "facet-name" element represents the facet name
- under which a UIComponent will be added to its parent.
- It must be of type "Identifier".
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="facet-extension"
- type="javaee:faces-config-facet-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-facet-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for facet. It may contain implementation
- specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-from-view-idType">
- <xsd:annotation>
- <xsd:documentation>
-
- The value of from-view-id must contain one of the following
- values:
-
- - The exact match for a view identifier that is recognized
- by the the ViewHandler implementation being used (such as
- "/index.jsp" if you are using the default ViewHandler).
-
- - A proper prefix of a view identifier, plus a trailing
- "*" character. This pattern indicates that all view
- identifiers that match the portion of the pattern up to
- the asterisk will match the surrounding rule. When more
- than one match exists, the match with the longest pattern
- is selected.
-
- - An "*" character, which means that this pattern applies
- to all view identifiers.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-from-actionType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "from-action" element contains an action reference
- expression that must have been executed (by the default
- ActionListener for handling application level events)
- in order to select the navigation rule. If not specified,
- this rule will be relevant no matter which action reference
- was executed (or if no action reference was executed).
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:faces-config-el-expressionType">
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-converterType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "converter" element represents a concrete Converter
- implementation class that should be registered under the
- specified converter identifier. Converter identifiers must
- be unique within the entire web application.
-
- Nested "attribute" elements identify generic attributes that
- may be configured on the corresponding UIComponent in order
- to affect the operation of the Converter. Nested "property"
- elements identify JavaBeans properties of the Converter
- implementation class that may be configured to affect the
- operation of the Converter. "attribute" and "property"
- elements are intended to allow component developers to
- more completely describe their components to tools and users.
- These elements have no required runtime semantics.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:choice>
- <xsd:element name="converter-id"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "converter-id" element represents the
- identifier under which the corresponding
- Converter class should be registered.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="converter-for-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "converter-for-class" element represents the
- fully qualified class name for which a Converter
- class will be registered.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
-
- <xsd:element name="converter-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "converter-class" element represents the fully
- qualified class name of a concrete Converter
- implementation class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute"
- type="javaee:faces-config-attributeType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Nested "attribute" elements identify generic
- attributes that may be configured on the
- corresponding UIComponent in order to affect the
- operation of the Converter. This attribute is
- primarily for design-time tools and is not
- specified to have any meaning at runtime.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="property"
- type="javaee:faces-config-propertyType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Nested "property" elements identify JavaBeans
- properties of the Converter implementation class
- that may be configured to affect the operation of
- the Converter. This attribute is primarily for
- design-time tools and is not specified to have
- any meaning at runtime.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="converter-extension"
- type="javaee:faces-config-converter-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-converter-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for converter. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-lifecycleType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "lifecycle" element provides a mechanism to specify
- modifications to the behaviour of the default Lifecycle
- implementation for this web application.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="phase-listener"
- type="javaee:fully-qualified-classType"
- minOccurs="0"
- maxOccurs="unbounded">
-
- <xsd:annotation>
- <xsd:documentation>
-
- The "phase-listener" element contains the fully
- qualified class name of the concrete PhaseListener
- implementation class that will be registered on
- the Lifecycle.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="lifecycle-extension"
- type="javaee:faces-config-lifecycle-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
-
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-lifecycle-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for lifecycle. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="faces-config-localeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The localeType defines valid locale defined by ISO-639-1
- and ISO-3166.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:string">
- <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-locale-configType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "locale-config" element allows the app developer to
- declare the supported locales for this application.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="default-locale"
- type="javaee:faces-config-default-localeType"
- minOccurs="0">
- </xsd:element>
- <xsd:element name="supported-locale"
- type="javaee:faces-config-supported-localeType"
- minOccurs="0"
- maxOccurs="unbounded">
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-managed-beanType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "managed-bean" element represents a JavaBean, of a
- particular class, that will be dynamically instantiated
- at runtime (by the default VariableResolver implementation)
- if it is referenced as the first element of a value binding
- expression, and no corresponding bean can be identified in
- any scope. In addition to the creation of the managed bean,
- and the optional storing of it into the specified scope,
- the nested managed-property elements can be used to
- initialize the contents of settable JavaBeans properties of
- the created instance.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="managed-bean-name"
- type="javaee:java-identifierType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "managed-bean-name" element represents the
- attribute name under which a managed bean will
- be searched for, as well as stored (unless the
- "managed-bean-scope" value is "none").
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="managed-bean-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "managed-bean-class" element represents the fully
- qualified class name of the Java class that will be
- used`to instantiate a new instance if creation of the
- specified`managed bean is requested.
-
- The specified class must conform to standard JavaBeans
- conventions. In particular, it must have a public
- zero-arguments constructor, and zero or more public
- property setters.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element
- name="managed-bean-scope"
- type="javaee:faces-config-managed-bean-scopeOrNoneType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "managed-bean-scope" element represents the scope
- into which a newly created instance of the specified
- managed bean will be stored (unless the value is
- "none").
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:choice>
- <xsd:element name="managed-property"
- type="javaee:faces-config-managed-propertyType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="map-entries"
- type="javaee:faces-config-map-entriesType"/>
- <xsd:element name="list-entries"
- type="javaee:faces-config-list-entriesType"/>
- </xsd:choice>
- <xsd:element name="managed-bean-extension"
- type="javaee:faces-config-managed-bean-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-managed-bean-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for managed-bean. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-managed-bean-scopeOrNoneType">
- <xsd:annotation>
- <xsd:documentation>
-
- <![CDATA[
- Defines the legal values for the <managed-bean-scope>
- element's body content, which includes all of the scopes
- normally used in a web application, plus the "none" value
- indicating that a created bean should not be stored into
- any scope.
- ]]>
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="request"/>
- <xsd:enumeration value="session"/>
- <xsd:enumeration value="application"/>
- <xsd:enumeration value="none"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-managed-propertyType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "managed-property" element represents an individual
- property of a managed bean that will be configured to the
- specified value (or value set) if the corresponding
- managed bean is automatically created.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="property-name"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "property-name" element represents the JavaBeans
- property name under which the corresponding value may
- be stored.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="property-class"
- type="javaee:java-typeType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The "property-class" element represents the Java type
- of the value associated with this property name.
- If not specified, it can be inferred from existing
- classes; however, this element should be specified
- if the configuration file is going to be the source
- for generating the corresponding classes.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:choice>
- <xsd:element name="map-entries"
- type="javaee:faces-config-map-entriesType"/>
- <xsd:element name="null-value"
- type="javaee:faces-config-null-valueType">
- </xsd:element>
- <xsd:element name="value"
- type="javaee:faces-config-valueType"/>
- <xsd:element name="list-entries"
- type="javaee:faces-config-list-entriesType"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-map-entryType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "map-entry" element reprsents a single key-entry pair
- that will be added to the computed value of a managed
- property of type java.util.Map.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "key" element is the String representation of a
- map key that will be stored in a managed property of
- type java.util.Map.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:choice>
- <xsd:element name="null-value"
- type="javaee:faces-config-null-valueType"/>
- <xsd:element name="value"
- type="javaee:faces-config-valueType"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-map-entriesType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "map-entries' element represents a set of key-entry pairs
- that will be added to the computed value of a managed property
- of type java.util.Map. In addition, the Java class types
- of the key and entry values may be optionally declared.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="key-class"
- type="javaee:fully-qualified-classType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The "key-class" element defines the Java type to which
- each "key" element in a set of "map-entry" elements
- will be converted to. If omitted, "java.lang.String"
- is assumed.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="value-class"
- type="javaee:faces-config-value-classType"
- minOccurs="0"/>
- <xsd:element name="map-entry"
- type="javaee:faces-config-map-entryType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-navigation-caseType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "navigation-case" element describes a particular
- combination of conditions that must match for this case to
- be executed, and the view id of the component tree that
- should be selected next.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="from-action"
- type="javaee:faces-config-from-actionType"
- minOccurs="0">
- </xsd:element>
- <xsd:element name="from-outcome"
- type="javaee:string" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The "from-outcome" element contains a logical outcome
- string returned by the execution of an application
- action method selected via an "actionRef" property
- (or a literal value specified by an "action" property)
- of a UICommand component. If specified, this rule
- will be relevant only if the outcome value matches
- this element's value. If not specified, this rule
- will be relevant no matter what the outcome value was.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="to-view-id"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "to-view-id" element contains the view identifier
- of the next view that should be displayed if this
- navigation rule is matched.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element
- name="redirect"
- type="javaee:faces-config-redirectType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-navigation-ruleType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "navigation-rule" element represents an individual
- decision rule that will be utilized by the default
- NavigationHandler implementation to make decisions on
- what view should be displayed next, based on the
- view id being processed.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="from-view-id"
- type="javaee:faces-config-from-view-idType"
- minOccurs="0"/>
- <xsd:element name="navigation-case"
- type="javaee:faces-config-navigation-caseType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element
- name="navigation-rule-extension"
- type="javaee:faces-config-navigation-rule-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-navigation-rule-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for navigation-rule. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-null-valueType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "null-value" element indicates that the managed
- property in which we are nested will be explicitly
- set to null if our managed bean is automatically
- created. This is different from omitting the managed
- property element entirely, which will cause no
- property setter to be called for this property.
-
- The "null-value" element can only be used when the
- associated "property-class" identifies a Java class,
- not a Java primitive.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-propertyType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "property" element represents a JavaBean property of the
- Java class represented by our parent element.
-
- Property names must be unique within the scope of the Java
- class that is represented by the parent element, and must
- correspond to property names that will be recognized when
- performing introspection against that class via
- java.beans.Introspector.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="property-name"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "property-name" element represents the JavaBeans
- property name under which the corresponding value
- may be stored.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="property-class"
- type="javaee:java-typeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "property-class" element represents the Java type
- of the value associated with this property name.
- If not specified, it can be inferred from existing
- classes; however, this element should be specified if
- the configuration file is going to be the source for
- generating the corresponding classes.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="default-value"
- type="javaee:faces-config-default-valueType"
- minOccurs="0"/>
- <xsd:element name="suggested-value"
- type="javaee:faces-config-suggested-valueType"
- minOccurs="0"/>
- <xsd:element name="property-extension"
- type="javaee:faces-config-property-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
-
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-property-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for property. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-redirectType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "redirect" element indicates that navigation to the
- specified "to-view-id" should be accomplished by
- performing an HTTP redirect rather than the usual
- ViewHandler mechanisms.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-referenced-beanType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "referenced-bean" element represents at design time the
- promise that a Java object of the specified type will exist at
- runtime in some scope, under the specified key. This can be
- used by design time tools to construct user interface dialogs
- based on the properties of the specified class. The presence
- or absence of a referenced bean element has no impact on the
- JavaServer Faces runtime environment inside a web application.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="referenced-bean-name"
- type="javaee:java-identifierType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "referenced-bean-name" element represents the
- attribute name under which the corresponding
- referenced bean may be assumed to be stored, in one
- of 'request', 'session', or 'application' scopes.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="referenced-bean-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "referenced-bean-class" element represents the
- fully qualified class name of the Java class
- (either abstract or concrete) or Java interface
- implemented by the corresponding referenced bean.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-render-kitType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "render-kit" element represents a concrete RenderKit
- implementation that should be registered under the specified
- render-kit-id. If no render-kit-id is specified, the
- identifier of the default RenderKit
- (RenderKitFactory.DEFAULT_RENDER_KIT) is assumed.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="render-kit-id"
- type="javaee:string"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The "render-kit-id" element represents an identifier
- for the RenderKit represented by the parent
- "render-kit" element.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="render-kit-class"
- type="javaee:fully-qualified-classType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The "render-kit-class" element represents the fully
- qualified class name of a concrete RenderKit
- implementation class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="renderer"
- type="javaee:faces-config-rendererType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="render-kit-extension"
- type="javaee:faces-config-render-kit-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-rendererType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "renderer" element represents a concrete Renderer
- implementation class that should be registered under the
- specified component family and renderer type identifiers,
- in the RenderKit associated with the parent "render-kit"
- element. Combinations of component family and
- renderer type must be unique within the RenderKit
- associated with the parent "render-kit" element.
-
- Nested "attribute" elements identify generic component
- attributes that are recognized by this renderer.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="component-family"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "component-family" element represents the
- component family for which the Renderer represented
- by the parent "renderer" element will be used.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="renderer-type"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "renderer-type" element represents a renderer type
- identifier for the Renderer represented by the parent
- "renderer" element.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="renderer-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "renderer-class" element represents the fully
- qualified class name of a concrete Renderer
- implementation class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="facet"
- type="javaee:faces-config-facetType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="attribute"
- type="javaee:faces-config-attributeType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="renderer-extension"
- type="javaee:faces-config-renderer-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-renderer-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for renderer. It may contain implementation
- specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-render-kit-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for render-kit. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-suggested-valueType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "suggested-value" contains the value for the property or
- attribute in which this element resides. This value is
- advisory only and is intended for tools to use when
- populating pallettes.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-supported-localeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "supported-locale" element allows authors to declare
- which locales are supported in this application instance.
-
- It must be specified as :language:[_:country:[_:variant:]]
- without the colons, for example "ja_JP_SJIS". The
- separators between the segments may be '-' or '_'.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:extension base="javaee:faces-config-localeType">
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:extension>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-validatorType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "validator" element represents a concrete Validator
- implementation class that should be registered under the
- specified validator identifier. Validator identifiers must
- be unique within the entire web application.
-
- Nested "attribute" elements identify generic attributes that
- may be configured on the corresponding UIComponent in order
- to affect the operation of the Validator. Nested "property"
- elements identify JavaBeans properties of the Validator
- implementation class that may be configured to affect the
- operation of the Validator. "attribute" and "property"
- elements are intended to allow component developers to
- more completely describe their components to tools and users.
- These elements have no required runtime semantics.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup"/>
- <xsd:element name="validator-id"
- type="javaee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- The "validator-id" element represents the identifier
- under which the corresponding Validator class should
- be registered.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="validator-class"
- type="javaee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "validator-class" element represents the fully
- qualified class name of a concrete Validator
- implementation class.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute"
- type="javaee:faces-config-attributeType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Nested "attribute" elements identify generic
- attributes that may be configured on the
- corresponding UIComponent in order to affect the
- operation of the Validator. This attribute is
- primarily for design-time tools and is not
- specified to have any meaning at runtime.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="property"
- type="javaee:faces-config-propertyType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Nested "property" elements identify JavaBeans
- properties of the Validator implementation class
- that may be configured to affect the operation of
- the Validator. This attribute is primarily for
- design-time tools and is not specified to have
- any meaning at runtime.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="validator-extension"
- type="javaee:faces-config-validator-extensionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name = "faces-config-validator-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Extension element for validator. It may contain
- implementation specific content.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:any namespace="##any"
- processContents="lax"
- minOccurs="0"
- maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="faces-config-valueType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "value" element is the String representation of
- a literal value to which a scalar managed property
- will be set, or a value binding expression ("#{...}")
- that will be used to calculate the required value.
- It will be converted as specified for the actual
- property type.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:union
- memberTypes="javaee:faces-config-el-expressionType xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-value-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "value-class" element defines the Java type to which each
- "value" element's value will be converted to, prior to adding
- it to the "list-entries" list for a managed property that is
- a java.util.List, or a "map-entries" map for a managed
- property that is a java.util.Map.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleContent>
- <xsd:restriction base="javaee:fully-qualified-classType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="faces-config-list-entriesType">
- <xsd:annotation>
- <xsd:documentation>
-
- The "list-entries" element represents a set of initialization
- elements for a managed property that is a java.util.List or an
- array. In the former case, the "value-class" element can
- optionally be used to declare the Java type to which each
- value should be converted before adding it to the Collection.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-class"
- type="javaee:faces-config-value-classType"
- minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="unbounded">
- <xsd:element name="null-value"
- type="javaee:faces-config-null-valueType"/>
- <xsd:element name="value"
- type="javaee:faces-config-valueType"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="faces-config-versionType">
- <xsd:annotation>
- <xsd:documentation>
-
- This type contains the recognized versions of
- faces-config supported.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="1.2"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
-</xsd:schema>
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/web-facesconfig_1_2.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-facesconfig_1_2.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,2108 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+
+<!--
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can obtain
+ a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
+ or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
+ Sun designates this particular file as subject to the "Classpath" exception
+ as provided by Sun in the GPL Version 2 section of the License file that
+ accompanied this code. If applicable, add the following below the License
+ Header, with the fields enclosed by brackets [] replaced by your own
+ identifying information: "Portions Copyrighted [year]
+ [name of copyright owner]"
+
+ Contributor(s):
+
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+-->
+
+
+<xsd:schema
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.2">
+
+ <xsd:annotation>
+ <xsd:documentation>
+ $Id: web-facesconfig_1_2.xsd,v 1.15 2008/03/26 17:46:42 rlubke Exp $
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2005 Sun Microsystems, Inc.,
+ 901 San Antonio Road,
+ Palo Alto, California 94303, U.S.A.
+ All rights reserved.
+
+ Sun Microsystems, Inc. has intellectual property
+ rights relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, Java EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ <![CDATA[
+
+ The XML Schema for the JavaServer Faces Application
+ Configuration File (Version 1.2).
+
+ All JavaServer Faces configuration files must indicate
+ the JavaServer Faces schema by indicating the JavaServer
+ Faces namespace:
+
+ http://java.sun.com/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="1.2">
+ ...
+ </faces-config>
+
+ The instance documents may indicate the published
+ version of the schema using xsi:schemaLocation attribute
+ for javaee namespace with the following location:
+
+ http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd
+
+ ]]>
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_5.xsd"/>
+
+ <!-- **************************************************** -->
+
+ <xsd:element name = "faces-config" type="javaee:faces-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "faces-config" element is the root of the configuration
+ information hierarchy, and contains nested elements for all
+ of the other configuration settings.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:unique name="faces-config-converter-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Converter IDs must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:selector xpath="javaee:converter"/>
+ <xsd:field xpath="javaee:converter-id"/>
+ </xsd:unique>
+
+ <xsd:unique name="faces-config-converter-for-class-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ 'converter-for-class' element values must be unique
+ within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:selector xpath="javaee:converter"/>
+ <xsd:field xpath="javaee:converter-for-class"/>
+ </xsd:unique>
+
+ <xsd:unique name="faces-config-validator-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Validator IDs must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:selector xpath="javaee:validator"/>
+ <xsd:field xpath="javaee:validator-id"/>
+ </xsd:unique>
+
+ <xsd:unique name="faces-config-managed-bean-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Managed bean names must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:selector xpath="javaee:managed-bean"/>
+ <xsd:field xpath="javaee:managed-bean-name"/>
+ </xsd:unique>
+ </xsd:element>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "faces-config" element is the root of the configuration
+ information hierarchy, and contains nested elements for all
+ of the other configuration settings.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element name="application"
+ type="javaee:faces-config-applicationType"/>
+ <xsd:element name="factory"
+ type="javaee:faces-config-factoryType"/>
+ <xsd:element name="component"
+ type="javaee:faces-config-componentType"/>
+ <xsd:element name="converter"
+ type="javaee:faces-config-converterType"/>
+ <xsd:element name="managed-bean"
+ type="javaee:faces-config-managed-beanType"/>
+ <xsd:element name="navigation-rule"
+ type="javaee:faces-config-navigation-ruleType"/>
+ <xsd:element name="referenced-bean"
+ type="javaee:faces-config-referenced-beanType"/>
+ <xsd:element name="render-kit"
+ type="javaee:faces-config-render-kitType"/>
+ <xsd:element name="lifecycle"
+ type="javaee:faces-config-lifecycleType"/>
+ <xsd:element name="validator"
+ type="javaee:faces-config-validatorType"/>
+ <xsd:element name="faces-config-extension"
+ type="javaee:faces-config-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:choice>
+ <xsd:attribute name = "id" type = "xsd:ID"/>
+ <xsd:attribute name="version"
+ type="javaee:faces-config-versionType"
+ use="required"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for faces-config. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-applicationType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "application" element provides a mechanism to define the
+ various per-application-singleton implementation artifacts for
+ a particular web application that is utilizing
+ JavaServer Faces. For nested elements that are not specified,
+ the JSF implementation must provide a suitable default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element name="action-listener"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "action-listener" element contains the fully
+ qualified class name of the concrete
+ ActionListener implementation class that will be
+ called during the Invoke Application phase of the
+ request processing lifecycle.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-render-kit-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "default-render-kit-id" element allows the
+ application to define a renderkit to be used other
+ than the standard one.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="message-bundle"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The base name of a resource bundle representing
+ the message resources for this application. See
+ the JavaDocs for the "java.util.ResourceBundle"
+ class for more information on the syntax of
+ resource bundle names.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="navigation-handler"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "navigation-handler" element contains the
+ fully qualified class name of the concrete
+ NavigationHandler implementation class that will
+ be called during the Invoke Application phase
+ of the request processing lifecycle, if the
+ default ActionListener (provided by the JSF
+ implementation) is used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="view-handler"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "view-handler" element contains the fully
+ qualified class name of the concrete ViewHandler
+ implementation class that will be called during
+ the Restore View and Render Response phases of the
+ request processing lifecycle. The faces
+ implementation must provide a default
+ implementation of this class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="state-manager"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "state-manager" element contains the fully
+ qualified class name of the concrete StateManager
+ implementation class that will be called during
+ the Restore View and Render Response phases of the
+ request processing lifecycle. The faces
+ implementation must provide a default
+ implementation of this class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="el-resolver"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "el-resolver" element contains the fully
+ qualified class name of the concrete
+ javax.el.ELResolver implementation class
+ that will be used during the processing of
+ EL expressions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property-resolver"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "property-resolver" element contains the fully
+ qualified class name of the concrete
+ PropertyResolver implementation class that will
+ be used during the processing of value binding
+ expressions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="variable-resolver"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "variable-resolver" element contains the fully
+ qualified class name of the concrete
+ VariableResolver implementation class that will
+ be used during the processing of value binding
+ expressions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element
+ name="locale-config"
+ type="javaee:faces-config-locale-configType"/>
+ <xsd:element
+ name="resource-bundle"
+ type="javaee:faces-config-application-resource-bundleType"/>
+ <xsd:element name="application-extension"
+ type="javaee:faces-config-application-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:choice>
+ <xsd:attribute name = "id" type = "xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:complexType name="faces-config-application-resource-bundleType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-bundle element inside the application element
+ references a java.util.ResourceBundle instance by name
+ using the var element. ResourceBundles referenced in this
+ manner may be returned by a call to
+ Application.getResourceBundle() passing the current
+ FacesContext for this request and the value of the var
+ element below.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="base-name"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully qualified class name of the
+ java.util.ResourceBundle instance.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="var"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name by which this ResourceBundle instance
+ is retrieved by a call to
+ Application.getResourceBundle().
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-application-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for application. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-factoryType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "factory" element provides a mechanism to define the
+ various Factories that comprise parts of the implementation
+ of JavaServer Faces. For nested elements that are not
+ specified, the JSF implementation must provide a suitable
+ default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element name="application-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "application-factory" element contains the
+ fully qualified class name of the concrete
+ ApplicationFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(APPLICATION_FACTORY) is
+ called.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="faces-context-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "faces-context-factory" element contains the
+ fully qualified class name of the concrete
+ FacesContextFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(FACES_CONTEXT_FACTORY)
+ is called.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="lifecycle-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "lifecycle-factory" element contains the fully
+ qualified class name of the concrete LifecycleFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(LIFECYCLE_FACTORY) is called.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="render-kit-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "render-kit-factory" element contains the fully
+ qualified class name of the concrete RenderKitFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(RENDER_KIT_FACTORY) is
+ called.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="factory-extension"
+ type="javaee:faces-config-factory-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:choice>
+ <xsd:attribute name = "id" type = "xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-factory-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for factory. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "attribute" element represents a named, typed, value
+ associated with the parent UIComponent via the generic
+ attributes mechanism.
+
+ Attribute names must be unique within the scope of the parent
+ (or related) component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="attribute-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "attribute-name" element represents the name under
+ which the corresponding value will be stored, in the
+ generic attributes of the UIComponent we are related
+ to.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "attribute-class" element represents the Java type
+ of the value associated with this attribute name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-value"
+ type="javaee:faces-config-default-valueType"
+ minOccurs="0"/>
+ <xsd:element name="suggested-value"
+ type="javaee:faces-config-suggested-valueType"
+ minOccurs="0"/>
+ <xsd:element name="attribute-extension"
+ type="javaee:faces-config-attribute-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name = "id" type = "xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-attribute-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for attribute. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-componentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "component" element represents a concrete UIComponent
+ implementation class that should be registered under the
+ specified type identifier, along with its associated
+ properties and attributes. Component types must be unique
+ within the entire web application.
+
+ Nested "attribute" elements identify generic attributes that
+ are recognized by the implementation logic of this component.
+ Nested "property" elements identify JavaBeans properties of
+ the component class that may be exposed for manipulation
+ via tools.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="component-type"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "component-type" element represents the name under
+ which the corresponding UIComponent class should be
+ registered.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="component-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "component-class" element represents the fully
+ qualified class name of a concrete UIComponent
+ implementation class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facet"
+ type="javaee:faces-config-facetType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="component-extension"
+ type="javaee:faces-config-component-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-component-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for component. It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-default-localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "default-locale" element declares the default locale
+ for this application instance.
+
+ It must be specified as :language:[_:country:[_:variant:]]
+ without the colons, for example "ja_JP_SJIS". The
+ separators between the segments may be '-' or '_'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-localeType">
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+
+ <xsd:complexType name="faces-config-default-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "default-value" contains the value for the property or
+ attribute in which this element resides. This value differs
+ from the "suggested-value" in that the property or attribute
+ must take the value, whereas in "suggested-value" taking the
+ value is optional.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:simpleType name="faces-config-el-expressionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ EL expressions present within a faces config file
+ must start with the character sequence of '#{' and
+ end with '}'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="#\{.*\}"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-facetType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Define the name and other design-time information for a facet
+ that is associated with a renderer or a component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="facet-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "facet-name" element represents the facet name
+ under which a UIComponent will be added to its parent.
+ It must be of type "Identifier".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facet-extension"
+ type="javaee:faces-config-facet-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-facet-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for facet. It may contain implementation
+ specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-from-view-idType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The value of from-view-id must contain one of the following
+ values:
+
+ - The exact match for a view identifier that is recognized
+ by the the ViewHandler implementation being used (such as
+ "/index.jsp" if you are using the default ViewHandler).
+
+ - A proper prefix of a view identifier, plus a trailing
+ "*" character. This pattern indicates that all view
+ identifiers that match the portion of the pattern up to
+ the asterisk will match the surrounding rule. When more
+ than one match exists, the match with the longest pattern
+ is selected.
+
+ - An "*" character, which means that this pattern applies
+ to all view identifiers.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-from-actionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "from-action" element contains an action reference
+ expression that must have been executed (by the default
+ ActionListener for handling application level events)
+ in order to select the navigation rule. If not specified,
+ this rule will be relevant no matter which action reference
+ was executed (or if no action reference was executed).
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-converterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "converter" element represents a concrete Converter
+ implementation class that should be registered under the
+ specified converter identifier. Converter identifiers must
+ be unique within the entire web application.
+
+ Nested "attribute" elements identify generic attributes that
+ may be configured on the corresponding UIComponent in order
+ to affect the operation of the Converter. Nested "property"
+ elements identify JavaBeans properties of the Converter
+ implementation class that may be configured to affect the
+ operation of the Converter. "attribute" and "property"
+ elements are intended to allow component developers to
+ more completely describe their components to tools and users.
+ These elements have no required runtime semantics.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:choice>
+ <xsd:element name="converter-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "converter-id" element represents the
+ identifier under which the corresponding
+ Converter class should be registered.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="converter-for-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "converter-for-class" element represents the
+ fully qualified class name for which a Converter
+ class will be registered.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+
+ <xsd:element name="converter-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "converter-class" element represents the fully
+ qualified class name of a concrete Converter
+ implementation class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Nested "attribute" elements identify generic
+ attributes that may be configured on the
+ corresponding UIComponent in order to affect the
+ operation of the Converter. This attribute is
+ primarily for design-time tools and is not
+ specified to have any meaning at runtime.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Nested "property" elements identify JavaBeans
+ properties of the Converter implementation class
+ that may be configured to affect the operation of
+ the Converter. This attribute is primarily for
+ design-time tools and is not specified to have
+ any meaning at runtime.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="converter-extension"
+ type="javaee:faces-config-converter-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-converter-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for converter. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-lifecycleType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "lifecycle" element provides a mechanism to specify
+ modifications to the behaviour of the default Lifecycle
+ implementation for this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="phase-listener"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "phase-listener" element contains the fully
+ qualified class name of the concrete PhaseListener
+ implementation class that will be registered on
+ the Lifecycle.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="lifecycle-extension"
+ type="javaee:faces-config-lifecycle-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-lifecycle-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for lifecycle. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:simpleType name="faces-config-localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The localeType defines valid locale defined by ISO-639-1
+ and ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="([a-z]{2})[_|\-]?([\p{L}]{2})?[_|\-]?(\w+)?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-locale-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "locale-config" element allows the app developer to
+ declare the supported locales for this application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="default-locale"
+ type="javaee:faces-config-default-localeType"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="supported-locale"
+ type="javaee:faces-config-supported-localeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "managed-bean" element represents a JavaBean, of a
+ particular class, that will be dynamically instantiated
+ at runtime (by the default VariableResolver implementation)
+ if it is referenced as the first element of a value binding
+ expression, and no corresponding bean can be identified in
+ any scope. In addition to the creation of the managed bean,
+ and the optional storing of it into the specified scope,
+ the nested managed-property elements can be used to
+ initialize the contents of settable JavaBeans properties of
+ the created instance.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="managed-bean-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "managed-bean-name" element represents the
+ attribute name under which a managed bean will
+ be searched for, as well as stored (unless the
+ "managed-bean-scope" value is "none").
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="managed-bean-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "managed-bean-class" element represents the fully
+ qualified class name of the Java class that will be
+ used`to instantiate a new instance if creation of the
+ specified`managed bean is requested.
+
+ The specified class must conform to standard JavaBeans
+ conventions. In particular, it must have a public
+ zero-arguments constructor, and zero or more public
+ property setters.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element
+ name="managed-bean-scope"
+ type="javaee:faces-config-managed-bean-scopeOrNoneType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "managed-bean-scope" element represents the scope
+ into which a newly created instance of the specified
+ managed bean will be stored (unless the value is
+ "none").
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="managed-property"
+ type="javaee:faces-config-managed-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="map-entries"
+ type="javaee:faces-config-map-entriesType"/>
+ <xsd:element name="list-entries"
+ type="javaee:faces-config-list-entriesType"/>
+ </xsd:choice>
+ <xsd:element name="managed-bean-extension"
+ type="javaee:faces-config-managed-bean-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-managed-bean-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for managed-bean. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-bean-scopeOrNoneType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ <![CDATA[
+ Defines the legal values for the <managed-bean-scope>
+ element's body content, which includes all of the scopes
+ normally used in a web application, plus the "none" value
+ indicating that a created bean should not be stored into
+ any scope.
+ ]]>
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="request"/>
+ <xsd:enumeration value="session"/>
+ <xsd:enumeration value="application"/>
+ <xsd:enumeration value="none"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "managed-property" element represents an individual
+ property of a managed bean that will be configured to the
+ specified value (or value set) if the corresponding
+ managed bean is automatically created.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="property-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "property-name" element represents the JavaBeans
+ property name under which the corresponding value may
+ be stored.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property-class"
+ type="javaee:java-typeType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "property-class" element represents the Java type
+ of the value associated with this property name.
+ If not specified, it can be inferred from existing
+ classes; however, this element should be specified
+ if the configuration file is going to be the source
+ for generating the corresponding classes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="map-entries"
+ type="javaee:faces-config-map-entriesType"/>
+ <xsd:element name="null-value"
+ type="javaee:faces-config-null-valueType">
+ </xsd:element>
+ <xsd:element name="value"
+ type="javaee:faces-config-valueType"/>
+ <xsd:element name="list-entries"
+ type="javaee:faces-config-list-entriesType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-map-entryType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "map-entry" element reprsents a single key-entry pair
+ that will be added to the computed value of a managed
+ property of type java.util.Map.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="key"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "key" element is the String representation of a
+ map key that will be stored in a managed property of
+ type java.util.Map.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="null-value"
+ type="javaee:faces-config-null-valueType"/>
+ <xsd:element name="value"
+ type="javaee:faces-config-valueType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-map-entriesType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "map-entries' element represents a set of key-entry pairs
+ that will be added to the computed value of a managed property
+ of type java.util.Map. In addition, the Java class types
+ of the key and entry values may be optionally declared.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="key-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "key-class" element defines the Java type to which
+ each "key" element in a set of "map-entry" elements
+ will be converted to. If omitted, "java.lang.String"
+ is assumed.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="value-class"
+ type="javaee:faces-config-value-classType"
+ minOccurs="0"/>
+ <xsd:element name="map-entry"
+ type="javaee:faces-config-map-entryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-navigation-caseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "navigation-case" element describes a particular
+ combination of conditions that must match for this case to
+ be executed, and the view id of the component tree that
+ should be selected next.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="from-action"
+ type="javaee:faces-config-from-actionType"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="from-outcome"
+ type="javaee:string" minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "from-outcome" element contains a logical outcome
+ string returned by the execution of an application
+ action method selected via an "actionRef" property
+ (or a literal value specified by an "action" property)
+ of a UICommand component. If specified, this rule
+ will be relevant only if the outcome value matches
+ this element's value. If not specified, this rule
+ will be relevant no matter what the outcome value was.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="to-view-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "to-view-id" element contains the view identifier
+ of the next view that should be displayed if this
+ navigation rule is matched.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element
+ name="redirect"
+ type="javaee:faces-config-redirectType" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-navigation-ruleType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "navigation-rule" element represents an individual
+ decision rule that will be utilized by the default
+ NavigationHandler implementation to make decisions on
+ what view should be displayed next, based on the
+ view id being processed.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="from-view-id"
+ type="javaee:faces-config-from-view-idType"
+ minOccurs="0"/>
+ <xsd:element name="navigation-case"
+ type="javaee:faces-config-navigation-caseType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element
+ name="navigation-rule-extension"
+ type="javaee:faces-config-navigation-rule-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-navigation-rule-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for navigation-rule. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-null-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "null-value" element indicates that the managed
+ property in which we are nested will be explicitly
+ set to null if our managed bean is automatically
+ created. This is different from omitting the managed
+ property element entirely, which will cause no
+ property setter to be called for this property.
+
+ The "null-value" element can only be used when the
+ associated "property-class" identifies a Java class,
+ not a Java primitive.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "property" element represents a JavaBean property of the
+ Java class represented by our parent element.
+
+ Property names must be unique within the scope of the Java
+ class that is represented by the parent element, and must
+ correspond to property names that will be recognized when
+ performing introspection against that class via
+ java.beans.Introspector.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="property-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "property-name" element represents the JavaBeans
+ property name under which the corresponding value
+ may be stored.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property-class"
+ type="javaee:java-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "property-class" element represents the Java type
+ of the value associated with this property name.
+ If not specified, it can be inferred from existing
+ classes; however, this element should be specified if
+ the configuration file is going to be the source for
+ generating the corresponding classes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-value"
+ type="javaee:faces-config-default-valueType"
+ minOccurs="0"/>
+ <xsd:element name="suggested-value"
+ type="javaee:faces-config-suggested-valueType"
+ minOccurs="0"/>
+ <xsd:element name="property-extension"
+ type="javaee:faces-config-property-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-property-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for property. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-redirectType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "redirect" element indicates that navigation to the
+ specified "to-view-id" should be accomplished by
+ performing an HTTP redirect rather than the usual
+ ViewHandler mechanisms.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-referenced-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "referenced-bean" element represents at design time the
+ promise that a Java object of the specified type will exist at
+ runtime in some scope, under the specified key. This can be
+ used by design time tools to construct user interface dialogs
+ based on the properties of the specified class. The presence
+ or absence of a referenced bean element has no impact on the
+ JavaServer Faces runtime environment inside a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="referenced-bean-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "referenced-bean-name" element represents the
+ attribute name under which the corresponding
+ referenced bean may be assumed to be stored, in one
+ of 'request', 'session', or 'application' scopes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="referenced-bean-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "referenced-bean-class" element represents the
+ fully qualified class name of the Java class
+ (either abstract or concrete) or Java interface
+ implemented by the corresponding referenced bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-render-kitType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "render-kit" element represents a concrete RenderKit
+ implementation that should be registered under the specified
+ render-kit-id. If no render-kit-id is specified, the
+ identifier of the default RenderKit
+ (RenderKitFactory.DEFAULT_RENDER_KIT) is assumed.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="render-kit-id"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "render-kit-id" element represents an identifier
+ for the RenderKit represented by the parent
+ "render-kit" element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="render-kit-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "render-kit-class" element represents the fully
+ qualified class name of a concrete RenderKit
+ implementation class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="renderer"
+ type="javaee:faces-config-rendererType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="render-kit-extension"
+ type="javaee:faces-config-render-kit-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-rendererType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "renderer" element represents a concrete Renderer
+ implementation class that should be registered under the
+ specified component family and renderer type identifiers,
+ in the RenderKit associated with the parent "render-kit"
+ element. Combinations of component family and
+ renderer type must be unique within the RenderKit
+ associated with the parent "render-kit" element.
+
+ Nested "attribute" elements identify generic component
+ attributes that are recognized by this renderer.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="component-family"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "component-family" element represents the
+ component family for which the Renderer represented
+ by the parent "renderer" element will be used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="renderer-type"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "renderer-type" element represents a renderer type
+ identifier for the Renderer represented by the parent
+ "renderer" element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="renderer-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "renderer-class" element represents the fully
+ qualified class name of a concrete Renderer
+ implementation class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facet"
+ type="javaee:faces-config-facetType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="renderer-extension"
+ type="javaee:faces-config-renderer-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-renderer-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for renderer. It may contain implementation
+ specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-render-kit-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for render-kit. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-suggested-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "suggested-value" contains the value for the property or
+ attribute in which this element resides. This value is
+ advisory only and is intended for tools to use when
+ populating pallettes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-supported-localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "supported-locale" element allows authors to declare
+ which locales are supported in this application instance.
+
+ It must be specified as :language:[_:country:[_:variant:]]
+ without the colons, for example "ja_JP_SJIS". The
+ separators between the segments may be '-' or '_'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-localeType">
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-validatorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "validator" element represents a concrete Validator
+ implementation class that should be registered under the
+ specified validator identifier. Validator identifiers must
+ be unique within the entire web application.
+
+ Nested "attribute" elements identify generic attributes that
+ may be configured on the corresponding UIComponent in order
+ to affect the operation of the Validator. Nested "property"
+ elements identify JavaBeans properties of the Validator
+ implementation class that may be configured to affect the
+ operation of the Validator. "attribute" and "property"
+ elements are intended to allow component developers to
+ more completely describe their components to tools and users.
+ These elements have no required runtime semantics.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="validator-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "validator-id" element represents the identifier
+ under which the corresponding Validator class should
+ be registered.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="validator-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "validator-class" element represents the fully
+ qualified class name of a concrete Validator
+ implementation class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Nested "attribute" elements identify generic
+ attributes that may be configured on the
+ corresponding UIComponent in order to affect the
+ operation of the Validator. This attribute is
+ primarily for design-time tools and is not
+ specified to have any meaning at runtime.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Nested "property" elements identify JavaBeans
+ properties of the Validator implementation class
+ that may be configured to affect the operation of
+ the Validator. This attribute is primarily for
+ design-time tools and is not specified to have
+ any meaning at runtime.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="validator-extension"
+ type="javaee:faces-config-validator-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name = "faces-config-validator-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for validator. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:simpleType name="faces-config-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "value" element is the String representation of
+ a literal value to which a scalar managed property
+ will be set, or a value binding expression ("#{...}")
+ that will be used to calculate the required value.
+ It will be converted as specified for the actual
+ property type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:union
+ memberTypes="javaee:faces-config-el-expressionType xsd:string"/>
+ </xsd:simpleType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-value-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "value-class" element defines the Java type to which each
+ "value" element's value will be converted to, prior to adding
+ it to the "list-entries" list for a managed property that is
+ a java.util.List, or a "map-entries" map for a managed
+ property that is a java.util.Map.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-list-entriesType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The "list-entries" element represents a set of initialization
+ elements for a managed property that is a java.util.List or an
+ array. In the former case, the "value-class" element can
+ optionally be used to declare the Java type to which each
+ value should be converted before adding it to the Collection.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="value-class"
+ type="javaee:faces-config-value-classType"
+ minOccurs="0"/>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element name="null-value"
+ type="javaee:faces-config-null-valueType"/>
+ <xsd:element name="value"
+ type="javaee:faces-config-valueType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:simpleType name="faces-config-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type contains the recognized versions of
+ faces-config supported.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="1.2"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- **************************************************** -->
+
+</xsd:schema>
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/web-jsptaglibrary_2_0.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,989 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<xsd:schema
- targetNamespace="http://java.sun.com/xml/ns/j2ee"
- xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xml="http://www.w3.org/XML/1998/namespace"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.0">
-
- <xsd:annotation>
- <xsd:documentation>
- %W% %G%
- </xsd:documentation>
- </xsd:annotation>
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
-
- This is the XML Schema for the JSP Taglibrary
- descriptor. All Taglibrary descriptors must
- indicate the tag library schema by using the Taglibrary
- namespace:
-
- http://java.sun.com/xml/ns/j2ee
-
- and by indicating the version of the schema by
- using the version element as shown below:
-
- <taglib xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="..."
- version="2.0">
- ...
- </taglib>
-
- The instance documents may indicate the published
- version of the schema using xsi:schemaLocation attribute
- for J2EE namespace with the following location:
-
- http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd
-
- ]]>
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:include schemaLocation="j2ee_1_4.xsd"/>
-
-
-<!-- **************************************************** -->
-
-
- <xsd:element name="taglib" type="j2ee:tldTaglibType">
- <xsd:annotation>
- <xsd:documentation>
-
- The taglib tag is the document root.
- The definition of taglib is provided
- by the tldTaglibType.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:unique name="tag-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The taglib element contains, among other things, tag and
- tag-file elements.
- The name subelements of these elements must each be unique.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:tag|j2ee:tag-file"/>
- <xsd:field xpath="j2ee:name"/>
- </xsd:unique>
-
- <xsd:unique name="function-name-uniqueness">
- <xsd:annotation>
- <xsd:documentation>
-
- The taglib element contains function elements.
- The name subelements of these elements must each be unique.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:selector xpath="j2ee:function"/>
- <xsd:field xpath="j2ee:name"/>
- </xsd:unique>
-
- </xsd:element>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="body-contentType">
- <xsd:annotation>
- <xsd:documentation>
-
- Specifies the type of body that is valid for a tag.
- This value is used by the JSP container to validate
- that a tag invocation has the correct body syntax and
- by page composition tools to assist the page author
- in providing a valid tag body.
-
- There are currently four values specified:
-
- tagdependent The body of the tag is interpreted by the tag
- implementation itself, and is most likely
- in a different "language", e.g embedded SQL
- statements.
-
- JSP The body of the tag contains nested JSP
- syntax.
-
- empty The body must be empty
-
- scriptless The body accepts only template text, EL
- Expressions, and JSP action elements. No
- scripting elements are allowed.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:enumeration value="tagdependent"/>
- <xsd:enumeration value="JSP"/>
- <xsd:enumeration value="empty"/>
- <xsd:enumeration value="scriptless"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="extensibleType" abstract="true">
- <xsd:annotation>
- <xsd:documentation>
-
- The extensibleType is an abstract base type that is used to
- define the type of extension-elements. Instance documents
- must substitute a known type to define the extension by
- using xsi:type attribute to define the actual type of
- extension-elements.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="functionType">
- <xsd:annotation>
- <xsd:documentation>
-
- The function element is used to provide information on each
- function in the tag library that is to be exposed to the EL.
-
- The function element may have several subelements defining:
-
- description Optional tag-specific information
-
- display-name A short name that is intended to be
- displayed by tools
-
- icon Optional icon element that can be used
- by tools
-
- name A unique name for this function
-
- function-class Provides the name of the Java class that
- implements the function
-
- function-signature Provides the signature, as in the Java
- Language Specification, of the Java
- method that is to be used to implement
- the function.
-
- example Optional informal description of an
- example of a use of this function
-
- function-extension Zero or more extensions that provide extra
- information about this function, for tool
- consumption
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="name"
- type="j2ee:tld-canonical-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- A unique name for this function.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="function-class"
- type="j2ee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- Provides the fully-qualified class name of the Java
- class containing the static method that implements
- the function.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="function-signature"
- type="j2ee:string">
- <xsd:annotation>
- <xsd:documentation>
-
- Provides the signature, of the static Java method that is
- to be used to implement the function. The syntax of the
- function-signature element is as follows:
-
- FunctionSignature ::= ReturnType S MethodName S?
- '(' S? Parameters? S? ')'
-
- ReturnType ::= Type
-
- MethodName ::= Identifier
-
- Parameters ::= Parameter
- | ( Parameter S? ',' S? Parameters )
-
- Parameter ::= Type
-
- Where:
-
- * Type is a basic type or a fully qualified Java class name
- (including package name), as per the 'Type' production
- in the Java Language Specification, Second Edition,
- Chapter 18.
-
- * Identifier is a Java identifier, as per the 'Identifier'
- production in the Java Language Specification, Second
- Edition, Chapter 18.
-
- Example:
-
- java.lang.String nickName( java.lang.String, int )
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="example"
- type="j2ee:xsdStringType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The example element contains an informal description
- of an example of the use of this function.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="function-extension"
- type="j2ee:tld-extensionType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Function extensions are for tool use only and must not affect
- the behavior of a container.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tagFileType">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an action in this tag library that is implemented
- as a .tag file.
-
- The tag-file element has two required subelements:
-
- description Optional tag-specific information
-
- display-name A short name that is intended to be
- displayed by tools
-
- icon Optional icon element that can be used
- by tools
-
- name The unique action name
-
- path Where to find the .tag file implementing this
- action, relative to the root of the web
- application or the root of the JAR file for a
- tag library packaged in a JAR. This must
- begin with /WEB-INF/tags if the .tag file
- resides in the WAR, or /META-INF/tags if the
- .tag file resides in a JAR.
-
- example Optional informal description of an
- example of a use of this tag
-
- tag-extension Zero or more extensions that provide extra
- information about this tag, for tool
- consumption
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="name"
- type="j2ee:tld-canonical-nameType"/>
- <xsd:element name="path"
- type="j2ee:pathType"/>
- <xsd:element name="example"
- type="j2ee:xsdStringType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The example element contains an informal description
- of an example of the use of a tag.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="tag-extension"
- type="j2ee:tld-extensionType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Tag extensions are for tool use only and must not affect
- the behavior of a container.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tagType">
- <xsd:annotation>
- <xsd:documentation>
-
- The tag defines a unique tag in this tag library. It has one
- attribute, id.
-
- The tag element may have several subelements defining:
-
- description Optional tag-specific information
-
- display-name A short name that is intended to be
- displayed by tools
-
- icon Optional icon element that can be used
- by tools
-
- name The unique action name
-
- tag-class The tag handler class implementing
- javax.servlet.jsp.tagext.JspTag
-
- tei-class An optional subclass of
- javax.servlet.jsp.tagext.TagExtraInfo
-
- body-content The body content type
-
- variable Optional scripting variable information
-
- attribute All attributes of this action that are
- evaluated prior to invocation.
-
- dynamic-attributes Whether this tag supports additional
- attributes with dynamic names. If
- true, the tag-class must implement the
- javax.servlet.jsp.tagext.DynamicAttributes
- interface. Defaults to false.
-
- example Optional informal description of an
- example of a use of this tag
-
- tag-extension Zero or more extensions that provide extra
- information about this tag, for tool
- consumption
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="name"
- type="j2ee:tld-canonical-nameType"/>
- <xsd:element name="tag-class"
- type="j2ee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the subclass of javax.serlvet.jsp.tagext.JspTag
- that implements the request time semantics for
- this tag. (required)
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="tei-class"
- type="j2ee:fully-qualified-classType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the subclass of javax.servlet.jsp.tagext.TagExtraInfo
- for this tag. (optional)
-
- If this is not given, the class is not consulted at
- translation time.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="body-content"
- type="j2ee:body-contentType">
- <xsd:annotation>
- <xsd:documentation>
-
- Specifies the format for the body of this tag.
- The default in JSP 1.2 was "JSP" but because this
- is an invalid setting for simple tag handlers, there
- is no longer a default in JSP 2.0. A reasonable
- default for simple tag handlers is "scriptless" if
- the tag can have a body.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="variable"
- type="j2ee:variableType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute"
- type="j2ee:tld-attributeType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="dynamic-attributes"
- type="j2ee:generic-booleanType"
- minOccurs="0"/>
- <xsd:element name="example"
- type="j2ee:xsdStringType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The example element contains an informal description
- of an example of the use of a tag.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="tag-extension"
- type="j2ee:tld-extensionType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Tag extensions are for tool use only and must not affect
- the behavior of a container.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tld-attributeType">
- <xsd:annotation>
- <xsd:documentation>
-
- The attribute element defines an attribute for the nesting
- tag. The attributre element may have several subelements
- defining:
-
- description a description of the attribute
-
- name the name of the attribute
-
- required whether the attribute is required or
- optional
-
- rtexprvalue whether the attribute is a runtime attribute
-
- type the type of the attributes
-
- fragment whether this attribute is a fragment
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description"
- type="j2ee:descriptionType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="name"
- type="j2ee:java-identifierType"/>
- <xsd:element name="required"
- type="j2ee:generic-booleanType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines if the nesting attribute is required or
- optional.
-
- If not present then the default is "false", i.e
- the attribute is optional.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="rtexprvalue"
- type="j2ee:generic-booleanType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines if the nesting attribute can have scriptlet
- expressions as a value, i.e the value of the
- attribute may be dynamically calculated at request
- time, as opposed to a static value determined at
- translation time.
-
- If not present then the default is "false", i.e the
- attribute has a static value
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="type"
- type="j2ee:fully-qualified-classType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the Java type of the attributes value. For
- static values (those determined at translation time)
- the type is always java.lang.String.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:element name="fragment"
- type="j2ee:generic-booleanType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- "true" if this attribute is of type
- javax.jsp.tagext.JspFragment, representing dynamic
- content that can be re-evaluated as many times
- as needed by the tag handler. If omitted or "false",
- the default is still type="java.lang.String"
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tld-canonical-nameType">
-
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the canonical name of a tag or attribute being
- defined.
-
- The name must conform to the lexical rules for an NMTOKEN.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:xsdNMTOKENType"/>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tld-extensionType">
- <xsd:annotation>
- <xsd:documentation>
-
- The tld-extensionType is used to indicate
- extensions to a specific TLD element.
-
- It is used by elements to designate an extension block
- that is targeted to a specific extension designated by
- a set of extension elements that are declared by a
- namespace. The namespace identifies the extension to
- the tool that processes the extension.
-
- The type of the extension-element is abstract. Therefore,
- a concrete type must be specified by the TLD using
- xsi:type attribute for each extension-element.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="extension-element"
- type="j2ee:extensibleType"
- maxOccurs="unbounded"/>
- </xsd:sequence>
-
- <xsd:attribute name="namespace"
- use="required"
- type="xsd:anyURI"/>
- <xsd:attribute name="id" type="xsd:ID"/>
-
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="tldTaglibType">
- <xsd:annotation>
- <xsd:documentation>
-
- The taglib tag is the document root, it defines:
-
- description a simple string describing the "use" of this taglib,
- should be user discernable
-
- display-name the display-name element contains a
- short name that is intended to be displayed
- by tools
-
- icon optional icon that can be used by tools
-
- tlib-version the version of the tag library implementation
-
- short-name a simple default short name that could be
- used by a JSP authoring tool to create
- names with a mnemonic value; for example,
- the it may be used as the prefered prefix
- value in taglib directives
-
- uri a uri uniquely identifying this taglib
-
- validator optional TagLibraryValidator information
-
- listener optional event listener specification
-
- tag tags in this tag library
-
- tag-file tag files in this tag library
-
- function zero or more EL functions defined in this
- tag library
-
- taglib-extension zero or more extensions that provide extra
- information about this taglib, for tool
- consumption
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:group ref="j2ee:descriptionGroup"/>
- <xsd:element name="tlib-version"
- type="j2ee:dewey-versionType">
- <xsd:annotation>
- <xsd:documentation>
-
- Describes this version (number) of the taglibrary.
- It is described as a dewey decimal.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
-
- <xsd:element name="short-name"
- type="j2ee:tld-canonical-nameType">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines a simple default name that could be used by
- a JSP authoring tool to create names with a
- mnemonicvalue; for example, it may be used as the
- preferred prefix value in taglib directives. Do
- not use white space, and do not start with digits
- or underscore.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="uri"
- type="j2ee:xsdAnyURIType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines a public URI that uniquely identifies this
- version of the taglibrary. Leave it empty if it
- does not apply.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
- <xsd:element name="validator"
- type="j2ee:validatorType"
- minOccurs="0">
- </xsd:element>
- <xsd:element name="listener"
- type="j2ee:listenerType"
- minOccurs="0" maxOccurs="unbounded">
- </xsd:element>
- <xsd:element name="tag"
- type="j2ee:tagType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="tag-file"
- type="j2ee:tagFileType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="function"
- type="j2ee:functionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="taglib-extension"
- type="j2ee:tld-extensionType"
- minOccurs="0"
- maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- Taglib extensions are for tool use only and must not affect
- the behavior of a container.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="version"
- type="j2ee:dewey-versionType"
- fixed="2.0"
- use="required">
- <xsd:annotation>
- <xsd:documentation>
-
- Describes the JSP version (number) this taglibrary
- requires in order to function (dewey decimal)
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:attribute>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="validatorType">
- <xsd:annotation>
- <xsd:documentation>
-
- A validator that can be used to validate
- the conformance of a JSP page to using this tag library is
- defined by a validatorType.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="description"
- type="j2ee:descriptionType"
- minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="validator-class"
- type="j2ee:fully-qualified-classType">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the TagLibraryValidator class that can be used
- to validate the conformance of a JSP page to using this
- tag library.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="init-param"
- type="j2ee:param-valueType"
- minOccurs="0" maxOccurs="unbounded">
- <xsd:annotation>
- <xsd:documentation>
-
- The init-param element contains a name/value pair as an
- initialization param.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="variable-scopeType">
- <xsd:annotation>
- <xsd:documentation>
-
- This type defines scope of the scripting variable. See
- TagExtraInfo for details. The allowed values are,
- "NESTED", "AT_BEGIN" and "AT_END".
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:simpleContent>
- <xsd:restriction base="j2ee:string">
- <xsd:enumeration value="NESTED"/>
- <xsd:enumeration value="AT_BEGIN"/>
- <xsd:enumeration value="AT_END"/>
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="variableType">
- <xsd:annotation>
- <xsd:documentation>
-
- The variableType provides information on the scripting
- variables defined by using this tag. It is a (translation
- time) error for a tag that has one or more variable
- subelements to have a TagExtraInfo class that returns a
- non-null value from a call to getVariableInfo().
-
- The subelements of variableType are of the form:
-
- description Optional description of this
- variable
-
- name-given The variable name as a constant
-
- name-from-attribute The name of an attribute whose
- (translation time) value will
- give the name of the
- variable. One of name-given or
- name-from-attribute is required.
-
- variable-class Name of the class of the variable.
- java.lang.String is default.
-
- declare Whether the variable is declared
- or not. True is the default.
-
- scope The scope of the scripting varaible
- defined. NESTED is default.
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:sequence>
- <xsd:element name="description"
- type="j2ee:descriptionType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:choice>
- <xsd:element name="name-given"
- type="j2ee:java-identifierType">
- <xsd:annotation>
- <xsd:documentation>
-
- The name for the scripting variable.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="name-from-attribute"
- type="j2ee:java-identifierType">
- <xsd:annotation>
- <xsd:documentation>
-
- The name of an attribute whose
- (translation-time) value will give the name of
- the variable.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- <xsd:element name="variable-class"
- type="j2ee:fully-qualified-classType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The optional name of the class for the scripting
- variable. The default is java.lang.String.
-
- </xsd:documentation>
- </xsd:annotation>
-
- </xsd:element>
-
- <xsd:element name="declare"
- type="j2ee:generic-booleanType"
- minOccurs="0">
-
- <xsd:annotation>
- <xsd:documentation>
-
- Whether the scripting variable is to be defined
- or not. See TagExtraInfo for details. This
- element is optional and "true" is the default.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="scope"
- type="j2ee:variable-scopeType"
- minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>
-
- The element is optional and "NESTED" is the default.
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID"/>
- </xsd:complexType>
-
-</xsd:schema>
-
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/web-jsptaglibrary_2_0.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_0.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,1010 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema
+ targetNamespace="http://java.sun.com/xml/ns/j2ee"
+ xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.0">
+
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)web-jsptaglibrary_2_0.xsds 1.36 08/18/03
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2003 Sun Microsystems, Inc., 901 San Antonio
+ Road, Palo Alto, California 94303, U.S.A. All rights
+ reserved.
+
+ Sun Microsystems, Inc. has intellectual property rights
+ relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ This is the XML Schema for the JSP Taglibrary
+ descriptor. All Taglibrary descriptors must
+ indicate the tag library schema by using the Taglibrary
+ namespace:
+
+ http://java.sun.com/xml/ns/j2ee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <taglib xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="2.0">
+ ...
+ </taglib>
+
+ The instance documents may indicate the published
+ version of the schema using xsi:schemaLocation attribute
+ for J2EE namespace with the following location:
+
+ http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="j2ee_1_4.xsd"/>
+
+
+<!-- **************************************************** -->
+
+
+ <xsd:element name="taglib" type="j2ee:tldTaglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib tag is the document root.
+ The definition of taglib is provided
+ by the tldTaglibType.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="tag-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib element contains, among other things, tag and
+ tag-file elements.
+ The name subelements of these elements must each be unique.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:tag|j2ee:tag-file"/>
+ <xsd:field xpath="j2ee:name"/>
+ </xsd:unique>
+
+ <xsd:unique name="function-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib element contains function elements.
+ The name subelements of these elements must each be unique.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="j2ee:function"/>
+ <xsd:field xpath="j2ee:name"/>
+ </xsd:unique>
+
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="body-contentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies the type of body that is valid for a tag.
+ This value is used by the JSP container to validate
+ that a tag invocation has the correct body syntax and
+ by page composition tools to assist the page author
+ in providing a valid tag body.
+
+ There are currently four values specified:
+
+ tagdependent The body of the tag is interpreted by the tag
+ implementation itself, and is most likely
+ in a different "language", e.g embedded SQL
+ statements.
+
+ JSP The body of the tag contains nested JSP
+ syntax.
+
+ empty The body must be empty
+
+ scriptless The body accepts only template text, EL
+ Expressions, and JSP action elements. No
+ scripting elements are allowed.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:enumeration value="tagdependent"/>
+ <xsd:enumeration value="JSP"/>
+ <xsd:enumeration value="empty"/>
+ <xsd:enumeration value="scriptless"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="extensibleType" abstract="true">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The extensibleType is an abstract base type that is used to
+ define the type of extension-elements. Instance documents
+ must substitute a known type to define the extension by
+ using xsi:type attribute to define the actual type of
+ extension-elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="functionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The function element is used to provide information on each
+ function in the tag library that is to be exposed to the EL.
+
+ The function element may have several subelements defining:
+
+ description Optional tag-specific information
+
+ display-name A short name that is intended to be
+ displayed by tools
+
+ icon Optional icon element that can be used
+ by tools
+
+ name A unique name for this function
+
+ function-class Provides the name of the Java class that
+ implements the function
+
+ function-signature Provides the signature, as in the Java
+ Language Specification, of the Java
+ method that is to be used to implement
+ the function.
+
+ example Optional informal description of an
+ example of a use of this function
+
+ function-extension Zero or more extensions that provide extra
+ information about this function, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="j2ee:tld-canonical-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A unique name for this function.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="function-class"
+ type="j2ee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Provides the fully-qualified class name of the Java
+ class containing the static method that implements
+ the function.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="function-signature"
+ type="j2ee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Provides the signature, of the static Java method that is
+ to be used to implement the function. The syntax of the
+ function-signature element is as follows:
+
+ FunctionSignature ::= ReturnType S MethodName S?
+ '(' S? Parameters? S? ')'
+
+ ReturnType ::= Type
+
+ MethodName ::= Identifier
+
+ Parameters ::= Parameter
+ | ( Parameter S? ',' S? Parameters )
+
+ Parameter ::= Type
+
+ Where:
+
+ * Type is a basic type or a fully qualified Java class name
+ (including package name), as per the 'Type' production
+ in the Java Language Specification, Second Edition,
+ Chapter 18.
+
+ * Identifier is a Java identifier, as per the 'Identifier'
+ production in the Java Language Specification, Second
+ Edition, Chapter 18.
+
+ Example:
+
+ java.lang.String nickName( java.lang.String, int )
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="example"
+ type="j2ee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The example element contains an informal description
+ of an example of the use of this function.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="function-extension"
+ type="j2ee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Function extensions are for tool use only and must not affect
+ the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tagFileType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines an action in this tag library that is implemented
+ as a .tag file.
+
+ The tag-file element has two required subelements:
+
+ description Optional tag-specific information
+
+ display-name A short name that is intended to be
+ displayed by tools
+
+ icon Optional icon element that can be used
+ by tools
+
+ name The unique action name
+
+ path Where to find the .tag file implementing this
+ action, relative to the root of the web
+ application or the root of the JAR file for a
+ tag library packaged in a JAR. This must
+ begin with /WEB-INF/tags if the .tag file
+ resides in the WAR, or /META-INF/tags if the
+ .tag file resides in a JAR.
+
+ example Optional informal description of an
+ example of a use of this tag
+
+ tag-extension Zero or more extensions that provide extra
+ information about this tag, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="j2ee:tld-canonical-nameType"/>
+ <xsd:element name="path"
+ type="j2ee:pathType"/>
+ <xsd:element name="example"
+ type="j2ee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The example element contains an informal description
+ of an example of the use of a tag.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="tag-extension"
+ type="j2ee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Tag extensions are for tool use only and must not affect
+ the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tagType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tag defines a unique tag in this tag library. It has one
+ attribute, id.
+
+ The tag element may have several subelements defining:
+
+ description Optional tag-specific information
+
+ display-name A short name that is intended to be
+ displayed by tools
+
+ icon Optional icon element that can be used
+ by tools
+
+ name The unique action name
+
+ tag-class The tag handler class implementing
+ javax.servlet.jsp.tagext.JspTag
+
+ tei-class An optional subclass of
+ javax.servlet.jsp.tagext.TagExtraInfo
+
+ body-content The body content type
+
+ variable Optional scripting variable information
+
+ attribute All attributes of this action that are
+ evaluated prior to invocation.
+
+ dynamic-attributes Whether this tag supports additional
+ attributes with dynamic names. If
+ true, the tag-class must implement the
+ javax.servlet.jsp.tagext.DynamicAttributes
+ interface. Defaults to false.
+
+ example Optional informal description of an
+ example of a use of this tag
+
+ tag-extension Zero or more extensions that provide extra
+ information about this tag, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="j2ee:tld-canonical-nameType"/>
+ <xsd:element name="tag-class"
+ type="j2ee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the subclass of javax.serlvet.jsp.tagext.JspTag
+ that implements the request time semantics for
+ this tag. (required)
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="tei-class"
+ type="j2ee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the subclass of javax.servlet.jsp.tagext.TagExtraInfo
+ for this tag. (optional)
+
+ If this is not given, the class is not consulted at
+ translation time.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="body-content"
+ type="j2ee:body-contentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies the format for the body of this tag.
+ The default in JSP 1.2 was "JSP" but because this
+ is an invalid setting for simple tag handlers, there
+ is no longer a default in JSP 2.0. A reasonable
+ default for simple tag handlers is "scriptless" if
+ the tag can have a body.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="variable"
+ type="j2ee:variableType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="attribute"
+ type="j2ee:tld-attributeType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="dynamic-attributes"
+ type="j2ee:generic-booleanType"
+ minOccurs="0"/>
+ <xsd:element name="example"
+ type="j2ee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The example element contains an informal description
+ of an example of the use of a tag.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="tag-extension"
+ type="j2ee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Tag extensions are for tool use only and must not affect
+ the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The attribute element defines an attribute for the nesting
+ tag. The attributre element may have several subelements
+ defining:
+
+ description a description of the attribute
+
+ name the name of the attribute
+
+ required whether the attribute is required or
+ optional
+
+ rtexprvalue whether the attribute is a runtime attribute
+
+ type the type of the attributes
+
+ fragment whether this attribute is a fragment
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="j2ee:descriptionType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="name"
+ type="j2ee:java-identifierType"/>
+ <xsd:element name="required"
+ type="j2ee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines if the nesting attribute is required or
+ optional.
+
+ If not present then the default is "false", i.e
+ the attribute is optional.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:choice>
+ <xsd:sequence>
+ <xsd:element name="rtexprvalue"
+ type="j2ee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines if the nesting attribute can have scriptlet
+ expressions as a value, i.e the value of the
+ attribute may be dynamically calculated at request
+ time, as opposed to a static value determined at
+ translation time.
+
+ If not present then the default is "false", i.e the
+ attribute has a static value
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="type"
+ type="j2ee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the Java type of the attributes value. For
+ static values (those determined at translation time)
+ the type is always java.lang.String.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:element name="fragment"
+ type="j2ee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ "true" if this attribute is of type
+ javax.jsp.tagext.JspFragment, representing dynamic
+ content that can be re-evaluated as many times
+ as needed by the tag handler. If omitted or "false",
+ the default is still type="java.lang.String"
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-canonical-nameType">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the canonical name of a tag or attribute being
+ defined.
+
+ The name must conform to the lexical rules for an NMTOKEN.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:xsdNMTOKENType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tld-extensionType is used to indicate
+ extensions to a specific TLD element.
+
+ It is used by elements to designate an extension block
+ that is targeted to a specific extension designated by
+ a set of extension elements that are declared by a
+ namespace. The namespace identifies the extension to
+ the tool that processes the extension.
+
+ The type of the extension-element is abstract. Therefore,
+ a concrete type must be specified by the TLD using
+ xsi:type attribute for each extension-element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="extension-element"
+ type="j2ee:extensibleType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+
+ <xsd:attribute name="namespace"
+ use="required"
+ type="xsd:anyURI"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tldTaglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib tag is the document root, it defines:
+
+ description a simple string describing the "use" of this taglib,
+ should be user discernable
+
+ display-name the display-name element contains a
+ short name that is intended to be displayed
+ by tools
+
+ icon optional icon that can be used by tools
+
+ tlib-version the version of the tag library implementation
+
+ short-name a simple default short name that could be
+ used by a JSP authoring tool to create
+ names with a mnemonic value; for example,
+ the it may be used as the prefered prefix
+ value in taglib directives
+
+ uri a uri uniquely identifying this taglib
+
+ validator optional TagLibraryValidator information
+
+ listener optional event listener specification
+
+ tag tags in this tag library
+
+ tag-file tag files in this tag library
+
+ function zero or more EL functions defined in this
+ tag library
+
+ taglib-extension zero or more extensions that provide extra
+ information about this taglib, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="j2ee:descriptionGroup"/>
+ <xsd:element name="tlib-version"
+ type="j2ee:dewey-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Describes this version (number) of the taglibrary.
+ It is described as a dewey decimal.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ <xsd:element name="short-name"
+ type="j2ee:tld-canonical-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines a simple default name that could be used by
+ a JSP authoring tool to create names with a
+ mnemonicvalue; for example, it may be used as the
+ preferred prefix value in taglib directives. Do
+ not use white space, and do not start with digits
+ or underscore.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="uri"
+ type="j2ee:xsdAnyURIType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines a public URI that uniquely identifies this
+ version of the taglibrary. Leave it empty if it
+ does not apply.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="validator"
+ type="j2ee:validatorType"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="listener"
+ type="j2ee:listenerType"
+ minOccurs="0" maxOccurs="unbounded">
+ </xsd:element>
+ <xsd:element name="tag"
+ type="j2ee:tagType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="tag-file"
+ type="j2ee:tagFileType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="function"
+ type="j2ee:functionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="taglib-extension"
+ type="j2ee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Taglib extensions are for tool use only and must not affect
+ the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="j2ee:dewey-versionType"
+ fixed="2.0"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Describes the JSP version (number) this taglibrary
+ requires in order to function (dewey decimal)
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:attribute>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="validatorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A validator that can be used to validate
+ the conformance of a JSP page to using this tag library is
+ defined by a validatorType.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="j2ee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="validator-class"
+ type="j2ee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the TagLibraryValidator class that can be used
+ to validate the conformance of a JSP page to using this
+ tag library.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="init-param"
+ type="j2ee:param-valueType"
+ minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-param element contains a name/value pair as an
+ initialization param.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="variable-scopeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type defines scope of the scripting variable. See
+ TagExtraInfo for details. The allowed values are,
+ "NESTED", "AT_BEGIN" and "AT_END".
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="j2ee:string">
+ <xsd:enumeration value="NESTED"/>
+ <xsd:enumeration value="AT_BEGIN"/>
+ <xsd:enumeration value="AT_END"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="variableType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The variableType provides information on the scripting
+ variables defined by using this tag. It is a (translation
+ time) error for a tag that has one or more variable
+ subelements to have a TagExtraInfo class that returns a
+ non-null value from a call to getVariableInfo().
+
+ The subelements of variableType are of the form:
+
+ description Optional description of this
+ variable
+
+ name-given The variable name as a constant
+
+ name-from-attribute The name of an attribute whose
+ (translation time) value will
+ give the name of the
+ variable. One of name-given or
+ name-from-attribute is required.
+
+ variable-class Name of the class of the variable.
+ java.lang.String is default.
+
+ declare Whether the variable is declared
+ or not. True is the default.
+
+ scope The scope of the scripting varaible
+ defined. NESTED is default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="j2ee:descriptionType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:choice>
+ <xsd:element name="name-given"
+ type="j2ee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name for the scripting variable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="name-from-attribute"
+ type="j2ee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name of an attribute whose
+ (translation-time) value will give the name of
+ the variable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:element name="variable-class"
+ type="j2ee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The optional name of the class for the scripting
+ variable. The default is java.lang.String.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ <xsd:element name="declare"
+ type="j2ee:generic-booleanType"
+ minOccurs="0">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Whether the scripting variable is to be defined
+ or not. See TagExtraInfo for details. This
+ element is optional and "true" is the default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="scope"
+ type="j2ee:variable-scopeType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element is optional and "NESTED" is the default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
+
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd
===================================================================
--- projects/metadata/web/trunk/src/main/resources/schema/web-jsptaglibrary_2_1.xsd 2009-10-09 15:27:34 UTC (rev 94608)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,229 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<!--
- ** This XSD contains only the programatic elements required for an implementation.
- ** For the XSD from Sun that includes documentation and other copyrighted information
- ** please refer to http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd for a fully documented and latest
- ** XSD.
--->
-
-<xsd:schema targetNamespace="http://java.sun.com/xml/ns/javaee"
- xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.1">
-
- <xsd:include schemaLocation="javaee_5.xsd" />
-
- <xsd:element name="taglib" type="javaee:tldTaglibType">
- <xsd:unique name="tag-name-uniqueness">
- <xsd:selector xpath="javaee:tag|javaee:tag-file" />
- <xsd:field xpath="javaee:name" />
- </xsd:unique>
-
- <xsd:unique name="function-name-uniqueness">
- <xsd:selector xpath="javaee:function" />
- <xsd:field xpath="javaee:name" />
- </xsd:unique>
- </xsd:element>
-
- <xsd:complexType name="body-contentType">
- <xsd:simpleContent>
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="tagdependent" />
- <xsd:enumeration value="JSP" />
- <xsd:enumeration value="empty" />
- <xsd:enumeration value="scriptless" />
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <xsd:complexType name="extensibleType" abstract="true">
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="functionType">
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup" />
- <xsd:element name="name" type="javaee:tld-canonical-nameType"></xsd:element>
- <xsd:element name="function-class" type="javaee:fully-qualified-classType"></xsd:element>
- <xsd:element name="function-signature" type="javaee:string"></xsd:element>
- <xsd:element name="example" type="javaee:xsdStringType" minOccurs="0"></xsd:element>
- <xsd:element name="function-extension" type="javaee:tld-extensionType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="tagFileType">
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup" />
- <xsd:element name="name" type="javaee:tld-canonical-nameType" />
- <xsd:element name="path" type="javaee:pathType" />
- <xsd:element name="example" type="javaee:xsdStringType" minOccurs="0"></xsd:element>
- <xsd:element name="tag-extension" type="javaee:tld-extensionType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="tagType">
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup" />
- <xsd:element name="name" type="javaee:tld-canonical-nameType" />
- <xsd:element name="tag-class" type="javaee:fully-qualified-classType"></xsd:element>
- <xsd:element name="tei-class" type="javaee:fully-qualified-classType" minOccurs="0"></xsd:element>
- <xsd:element name="body-content" type="javaee:body-contentType"></xsd:element>
- <xsd:element name="variable" type="javaee:variableType" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element name="attribute" type="javaee:tld-attributeType" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element name="dynamic-attributes" type="javaee:generic-booleanType" minOccurs="0" />
- <xsd:element name="example" type="javaee:xsdStringType" minOccurs="0" />
- <xsd:element name="tag-extension" type="javaee:tld-extensionType" minOccurs="0" maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="tld-attributeType">
- <xsd:sequence>
- <xsd:element name="description" type="javaee:descriptionType" minOccurs="0" maxOccurs="unbounded" />
-
- <xsd:element name="name" type="javaee:java-identifierType" />
- <xsd:element name="required" type="javaee:generic-booleanType" minOccurs="0"></xsd:element>
- <xsd:choice>
-
- <xsd:sequence>
- <xsd:sequence minOccurs="0">
- <xsd:element name="rtexprvalue" type="javaee:generic-booleanType"></xsd:element>
-
- <xsd:element name="type" type="javaee:fully-qualified-classType" minOccurs="0"></xsd:element>
- </xsd:sequence>
-
- <xsd:choice>
- <xsd:element name="deferred-value" type="javaee:tld-deferred-valueType" minOccurs="0"></xsd:element>
- <xsd:element name="deferred-method" type="javaee:tld-deferred-methodType" minOccurs="0"></xsd:element>
- </xsd:choice>
- </xsd:sequence>
-
- <xsd:element name="fragment" type="javaee:generic-booleanType" minOccurs="0"></xsd:element>
-
- </xsd:choice>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="tld-canonical-nameType">
- <xsd:simpleContent>
- <xsd:restriction base="javaee:xsdNMTOKENType" />
- </xsd:simpleContent>
- </xsd:complexType>
-
- <xsd:complexType name="tld-deferred-methodType">
- <xsd:sequence>
- <xsd:element name="method-signature" type="javaee:string" minOccurs="0"></xsd:element>
- </xsd:sequence>
-
- <xsd:attribute name="id" type="xsd:ID" />
-
- </xsd:complexType>
-
- <xsd:complexType name="tld-deferred-valueType">
-
- <xsd:sequence>
- <xsd:element name="type" type="javaee:fully-qualified-classType" minOccurs="0"></xsd:element>
-
- </xsd:sequence>
-
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="tld-extensionType">
- <xsd:sequence>
- <xsd:element name="extension-element" type="javaee:extensibleType" maxOccurs="unbounded" />
- </xsd:sequence>
-
- <xsd:attribute name="namespace" use="required" type="xsd:anyURI" />
- <xsd:attribute name="id" type="xsd:ID" />
-
- </xsd:complexType>
-
- <xsd:complexType name="tldTaglibType">
- <xsd:sequence>
- <xsd:group ref="javaee:descriptionGroup" />
- <xsd:element name="tlib-version" type="javaee:dewey-versionType"></xsd:element>
-
- <xsd:element name="short-name" type="javaee:tld-canonical-nameType">
-
- </xsd:element>
-
- <xsd:element name="uri" type="javaee:xsdAnyURIType" minOccurs="0">
-
- </xsd:element>
- <xsd:element name="validator" type="javaee:validatorType" minOccurs="0">
-
- </xsd:element>
- <xsd:element name="listener" type="javaee:listenerType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
- <xsd:element name="tag" type="javaee:tagType" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element name="tag-file" type="javaee:tagFileType" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element name="function" type="javaee:functionType" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element name="taglib-extension" type="javaee:tld-extensionType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
- </xsd:sequence>
- <xsd:attribute name="version" type="javaee:dewey-versionType" fixed="2.1" use="required"></xsd:attribute>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="validatorType">
- <xsd:sequence>
- <xsd:element name="description" type="javaee:descriptionType" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element name="validator-class" type="javaee:fully-qualified-classType"></xsd:element>
- <xsd:element name="init-param" type="javaee:param-valueType" minOccurs="0" maxOccurs="unbounded"></xsd:element>
-
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-
- <xsd:complexType name="variable-scopeType">
- <xsd:simpleContent>
-
- <xsd:restriction base="javaee:string">
- <xsd:enumeration value="NESTED" />
- <xsd:enumeration value="AT_BEGIN" />
- <xsd:enumeration value="AT_END" />
- </xsd:restriction>
- </xsd:simpleContent>
- </xsd:complexType>
-
- <xsd:complexType name="variableType">
- <xsd:sequence>
- <xsd:element name="description" type="javaee:descriptionType" minOccurs="0" maxOccurs="unbounded" />
-
- <xsd:choice>
- <xsd:element name="name-given" type="javaee:java-identifierType"></xsd:element>
-
- <xsd:element name="name-from-attribute" type="javaee:java-identifierType"></xsd:element>
- </xsd:choice>
- <xsd:element name="variable-class" type="javaee:fully-qualified-classType" minOccurs="0"></xsd:element>
-
- <xsd:element name="declare" type="javaee:generic-booleanType" minOccurs="0"></xsd:element>
- <xsd:element name="scope" type="javaee:variable-scopeType" minOccurs="0"></xsd:element>
- </xsd:sequence>
- <xsd:attribute name="id" type="xsd:ID" />
- </xsd:complexType>
-</xsd:schema>
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd (from rev 95409, projects/metadata/web/trunk/src/main/resources/schema/web-jsptaglibrary_2_1.xsd)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/main/resources/schema/web-jsptaglibrary_2_1.xsd 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,1144 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.1">
+
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)web-jsptaglibrary_2_1.xsds 1.1
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Copyright 2003-2005 Sun Microsystems, Inc.
+ 4150 Network Circle
+ Santa Clara, California 95054
+ U.S.A
+ All rights reserved.
+
+ Sun Microsystems, Inc. has intellectual property rights
+ relating to technology described in this document. In
+ particular, and without limitation, these intellectual
+ property rights may include one or more of the U.S. patents
+ listed at http://www.sun.com/patents and one or more
+ additional patents or pending patent applications in the
+ U.S. and other countries.
+
+ This document and the technology which it describes are
+ distributed under licenses restricting their use, copying,
+ distribution, and decompilation. No part of this document
+ may be reproduced in any form by any means without prior
+ written authorization of Sun and its licensors, if any.
+
+ Third-party software, including font technology, is
+ copyrighted and licensed from Sun suppliers.
+
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
+ Cup logo are trademarks or registered trademarks of Sun
+ Microsystems, Inc. in the U.S. and other countries.
+
+ Federal Acquisitions: Commercial Software - Government Users
+ Subject to Standard License Terms and Conditions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ This is the XML Schema for the JSP Taglibrary
+ descriptor. All Taglibrary descriptors must
+ indicate the tag library schema by using the Taglibrary
+ namespace:
+
+ http://java.sun.com/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <taglib xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="2.1">
+ ...
+ </taglib>
+
+ The instance documents may indicate the published
+ version of the schema using xsi:schemaLocation attribute
+ for Java EE namespace with the following location:
+
+ http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_5.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="taglib" type="javaee:tldTaglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib tag is the document root.
+ The definition of taglib is provided
+ by the tldTaglibType.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="tag-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib element contains, among other things, tag and
+ tag-file elements.
+ The name subelements of these elements must each be unique.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:tag|javaee:tag-file"/>
+ <xsd:field xpath="javaee:name"/>
+ </xsd:unique>
+
+ <xsd:unique name="function-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib element contains function elements.
+ The name subelements of these elements must each be unique.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:function"/>
+ <xsd:field xpath="javaee:name"/>
+ </xsd:unique>
+
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="body-contentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies the type of body that is valid for a tag.
+ This value is used by the JSP container to validate
+ that a tag invocation has the correct body syntax and
+ by page composition tools to assist the page author
+ in providing a valid tag body.
+
+ There are currently four values specified:
+
+ tagdependent The body of the tag is interpreted by the tag
+ implementation itself, and is most likely
+ in a different "language", e.g embedded SQL
+ statements.
+
+ JSP The body of the tag contains nested JSP
+ syntax.
+
+ empty The body must be empty
+
+ scriptless The body accepts only template text, EL
+ Expressions, and JSP action elements. No
+ scripting elements are allowed.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="tagdependent"/>
+ <xsd:enumeration value="JSP"/>
+ <xsd:enumeration value="empty"/>
+ <xsd:enumeration value="scriptless"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="extensibleType" abstract="true">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The extensibleType is an abstract base type that is used to
+ define the type of extension-elements. Instance documents
+ must substitute a known type to define the extension by
+ using xsi:type attribute to define the actual type of
+ extension-elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="functionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The function element is used to provide information on each
+ function in the tag library that is to be exposed to the EL.
+
+ The function element may have several subelements defining:
+
+ description Optional tag-specific information
+
+ display-name A short name that is intended to be
+ displayed by tools
+
+ icon Optional icon element that can be used
+ by tools
+
+ name A unique name for this function
+
+ function-class Provides the name of the Java class that
+ implements the function
+
+ function-signature Provides the signature, as in the Java
+ Language Specification, of the Java
+ method that is to be used to implement
+ the function.
+
+ example Optional informal description of an
+ example of a use of this function
+
+ function-extension Zero or more extensions that provide extra
+ information about this function, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="javaee:tld-canonical-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A unique name for this function.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="function-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Provides the fully-qualified class name of the Java
+ class containing the static method that implements
+ the function.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="function-signature"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Provides the signature, of the static Java method that is
+ to be used to implement the function. The syntax of the
+ function-signature element is as follows:
+
+ FunctionSignature ::= ReturnType S MethodName S?
+ '(' S? Parameters? S? ')'
+
+ ReturnType ::= Type
+
+ MethodName ::= Identifier
+
+ Parameters ::= Parameter
+ | ( Parameter S? ',' S? Parameters )
+
+ Parameter ::= Type
+
+ Where:
+
+ * Type is a basic type or a fully qualified
+ Java class name (including package name),
+ as per the 'Type' production in the Java
+ Language Specification, Second Edition,
+ Chapter 18.
+
+ * Identifier is a Java identifier, as per
+ the 'Identifier' production in the Java
+ Language Specification, Second
+ Edition, Chapter 18.
+
+ Example:
+
+ java.lang.String nickName( java.lang.String, int )
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="example"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The example element contains an informal description
+ of an example of the use of this function.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="function-extension"
+ type="javaee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Function extensions are for tool use only and must not
+ affect the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tagFileType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines an action in this tag library that is implemented
+ as a .tag file.
+
+ The tag-file element has two required subelements:
+
+ description Optional tag-specific information
+
+ display-name A short name that is intended to be
+ displayed by tools
+
+ icon Optional icon element that can be used
+ by tools
+
+ name The unique action name
+
+ path Where to find the .tag file implementing this
+ action, relative to the root of the web
+ application or the root of the JAR file for a
+ tag library packaged in a JAR. This must
+ begin with /WEB-INF/tags if the .tag file
+ resides in the WAR, or /META-INF/tags if the
+ .tag file resides in a JAR.
+
+ example Optional informal description of an
+ example of a use of this tag
+
+ tag-extension Zero or more extensions that provide extra
+ information about this tag, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="javaee:tld-canonical-nameType"/>
+ <xsd:element name="path"
+ type="javaee:pathType"/>
+ <xsd:element name="example"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The example element contains an informal description
+ of an example of the use of a tag.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="tag-extension"
+ type="javaee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Tag extensions are for tool use only and must not affect
+ the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tagType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tag defines a unique tag in this tag library. It has one
+ attribute, id.
+
+ The tag element may have several subelements defining:
+
+ description Optional tag-specific information
+
+ display-name A short name that is intended to be
+ displayed by tools
+
+ icon Optional icon element that can be used
+ by tools
+
+ name The unique action name
+
+ tag-class The tag handler class implementing
+ javax.servlet.jsp.tagext.JspTag
+
+ tei-class An optional subclass of
+ javax.servlet.jsp.tagext.TagExtraInfo
+
+ body-content The body content type
+
+ variable Optional scripting variable information
+
+ attribute All attributes of this action that are
+ evaluated prior to invocation.
+
+ dynamic-attributes Whether this tag supports additional
+ attributes with dynamic names. If
+ true, the tag-class must implement the
+ javax.servlet.jsp.tagext.DynamicAttributes
+ interface. Defaults to false.
+
+ example Optional informal description of an
+ example of a use of this tag
+
+ tag-extension Zero or more extensions that provide extra
+ information about this tag, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="javaee:tld-canonical-nameType"/>
+ <xsd:element name="tag-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the subclass of javax.serlvet.jsp.tagext.JspTag
+ that implements the request time semantics for
+ this tag. (required)
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="tei-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the subclass of javax.servlet.jsp.tagext.TagExtraInfo
+ for this tag. (optional)
+
+ If this is not given, the class is not consulted at
+ translation time.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="body-content"
+ type="javaee:body-contentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies the format for the body of this tag.
+ The default in JSP 1.2 was "JSP" but because this
+ is an invalid setting for simple tag handlers, there
+ is no longer a default in JSP 2.0. A reasonable
+ default for simple tag handlers is "scriptless" if
+ the tag can have a body.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="variable"
+ type="javaee:variableType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="attribute"
+ type="javaee:tld-attributeType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="dynamic-attributes"
+ type="javaee:generic-booleanType"
+ minOccurs="0"/>
+ <xsd:element name="example"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The example element contains an informal description
+ of an example of the use of a tag.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="tag-extension"
+ type="javaee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Tag extensions are for tool use only and must not affect
+ the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The attribute element defines an attribute for the nesting
+ tag. The attribute element may have several subelements
+ defining:
+
+ description a description of the attribute
+
+ name the name of the attribute
+
+ required whether the attribute is required or
+ optional
+
+ rtexprvalue whether the attribute is a runtime attribute
+
+ type the type of the attributes
+
+ fragment whether this attribute is a fragment
+
+ deferred-value present if this attribute is to be parsed as a
+ javax.el.ValueExpression
+
+ deferred-method present if this attribute is to be parsed as a
+ javax.el.MethodExpression
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="name"
+ type="javaee:java-identifierType"/>
+ <xsd:element name="required"
+ type="javaee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines if the nesting attribute is required or
+ optional.
+
+ If not present then the default is "false", i.e
+ the attribute is optional.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:sequence>
+ <xsd:sequence minOccurs="0">
+ <xsd:element name="rtexprvalue"
+ type="javaee:generic-booleanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines if the nesting attribute can have scriptlet
+ expressions as a value, i.e the value of the
+ attribute may be dynamically calculated at request
+ time, as opposed to a static value determined at
+ translation time.
+ If not present then the default is "false", i.e the
+ attribute has a static value
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the Java type of the attributes value.
+ If this element is omitted, the expected type is
+ assumed to be "java.lang.Object".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+
+ <xsd:choice>
+ <xsd:element name="deferred-value"
+ type="javaee:tld-deferred-valueType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Present if the value for this attribute is to be
+ passed to the tag handler as a
+ javax.el.ValueExpression. This allows for deferred
+ evaluation of EL expressions. An optional subelement
+ will contain the expected type that the value will
+ be coerced to after evaluation of the expression.
+ The type defaults to Object if one is not provided.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="deferred-method"
+ type="javaee:tld-deferred-methodType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Present if the value for this attribute is to be
+ passed to the tag handler as a
+ javax.el.MethodExpression. This allows for deferred
+ evaluation of an EL expression that identifies a
+ method to be invoked on an Object. An optional
+ subelement will contain the expected method
+ signature. The signature defaults to "void method()"
+ if one is not provided.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+
+ <xsd:element name="fragment"
+ type="javaee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ "true" if this attribute is of type
+ javax.jsp.tagext.JspFragment, representing dynamic
+ content that can be re-evaluated as many times
+ as needed by the tag handler. If omitted or "false",
+ the default is still type="java.lang.String"
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-canonical-nameType">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the canonical name of a tag or attribute being
+ defined.
+
+ The name must conform to the lexical rules for an NMTOKEN.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdNMTOKENType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-deferred-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines information about how to provide the value for a
+ tag handler attribute that accepts a javax.el.MethodExpression.
+
+ The deferred-method element has one optional subelement:
+
+ method-signature Provides the signature, as in the Java
+ Language Specifies, that is expected for
+ the method being identified by the
+ expression.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="method-signature"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Provides the expected signature of the method identified
+ by the javax.el.MethodExpression.
+
+ This disambiguates overloaded methods and ensures that
+ the return value is of the expected type.
+
+ The syntax of the method-signature element is identical
+ to that of the function-signature element. See the
+ documentation for function-signature for more details.
+
+ The name of the method is for documentation purposes only
+ and is ignored by the JSP container.
+
+ Example:
+
+ boolean validate(java.lang.String)
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-deferred-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines information about how to provide the value for a
+ tag handler attribute that accepts a javax.el.ValueExpression.
+
+ The deferred-value element has one optional subelement:
+
+ type the expected type of the attribute
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully-qualified name of the Java type that is the
+ expected type for this deferred expression. If this
+ element is omitted, the expected type is assumed to be
+ "java.lang.Object".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tld-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tld-extensionType is used to indicate
+ extensions to a specific TLD element.
+
+ It is used by elements to designate an extension block
+ that is targeted to a specific extension designated by
+ a set of extension elements that are declared by a
+ namespace. The namespace identifies the extension to
+ the tool that processes the extension.
+
+ The type of the extension-element is abstract. Therefore,
+ a concrete type must be specified by the TLD using
+ xsi:type attribute for each extension-element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="extension-element"
+ type="javaee:extensibleType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+
+ <xsd:attribute name="namespace"
+ use="required"
+ type="xsd:anyURI"/>
+ <xsd:attribute name="id" type="xsd:ID"/>
+
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tldTaglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglib tag is the document root, it defines:
+
+ description a simple string describing the "use" of this
+ taglib, should be user discernable
+
+ display-name the display-name element contains a
+ short name that is intended to be displayed
+ by tools
+
+ icon optional icon that can be used by tools
+
+ tlib-version the version of the tag library implementation
+
+ short-name a simple default short name that could be
+ used by a JSP authoring tool to create
+ names with a mnemonic value; for example,
+ the it may be used as the prefered prefix
+ value in taglib directives
+
+ uri a uri uniquely identifying this taglib
+
+ validator optional TagLibraryValidator information
+
+ listener optional event listener specification
+
+ tag tags in this tag library
+
+ tag-file tag files in this tag library
+
+ function zero or more EL functions defined in this
+ tag library
+
+ taglib-extension zero or more extensions that provide extra
+ information about this taglib, for tool
+ consumption
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="tlib-version"
+ type="javaee:dewey-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Describes this version (number) of the taglibrary.
+ It is described as a dewey decimal.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ <xsd:element name="short-name"
+ type="javaee:tld-canonical-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines a simple default name that could be used by
+ a JSP authoring tool to create names with a
+ mnemonicvalue; for example, it may be used as the
+ preferred prefix value in taglib directives. Do
+ not use white space, and do not start with digits
+ or underscore.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="uri"
+ type="javaee:xsdAnyURIType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines a public URI that uniquely identifies this
+ version of the taglibrary. Leave it empty if it
+ does not apply.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="validator"
+ type="javaee:validatorType"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="listener"
+ type="javaee:listenerType"
+ minOccurs="0" maxOccurs="unbounded">
+ </xsd:element>
+ <xsd:element name="tag"
+ type="javaee:tagType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="tag-file"
+ type="javaee:tagFileType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="function"
+ type="javaee:functionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="taglib-extension"
+ type="javaee:tld-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Taglib extensions are for tool use only and must not
+ affect the behavior of a container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="2.1"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Describes the JSP version (number) this taglibrary
+ requires in order to function (dewey decimal)
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:attribute>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="validatorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A validator that can be used to validate
+ the conformance of a JSP page to using this tag library is
+ defined by a validatorType.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="validator-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the TagLibraryValidator class that can be used
+ to validate the conformance of a JSP page to using this
+ tag library.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-param element contains a name/value pair as an
+ initialization param.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="variable-scopeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type defines scope of the scripting variable. See
+ TagExtraInfo for details. The allowed values are,
+ "NESTED", "AT_BEGIN" and "AT_END".
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NESTED"/>
+ <xsd:enumeration value="AT_BEGIN"/>
+ <xsd:enumeration value="AT_END"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="variableType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The variableType provides information on the scripting
+ variables defined by using this tag. It is a (translation
+ time) error for a tag that has one or more variable
+ subelements to have a TagExtraInfo class that returns a
+ non-null value from a call to getVariableInfo().
+
+ The subelements of variableType are of the form:
+
+ description Optional description of this
+ variable
+
+ name-given The variable name as a constant
+
+ name-from-attribute The name of an attribute whose
+ (translation time) value will
+ give the name of the
+ variable. One of name-given or
+ name-from-attribute is required.
+
+ variable-class Name of the class of the variable.
+ java.lang.String is default.
+
+ declare Whether the variable is declared
+ or not. True is the default.
+
+ scope The scope of the scripting varaible
+ defined. NESTED is default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:choice>
+ <xsd:element name="name-given"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name for the scripting variable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="name-from-attribute"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name of an attribute whose
+ (translation-time) value will give the name of
+ the variable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:element name="variable-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The optional name of the class for the scripting
+ variable. The default is java.lang.String.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ <xsd:element name="declare"
+ type="javaee:generic-booleanType"
+ minOccurs="0">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Whether the scripting variable is to be defined
+ or not. See TagExtraInfo for details. This
+ element is optional and "true" is the default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="scope"
+ type="javaee:variable-scopeType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element is optional and "NESTED" is the default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
+
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java 2009-09-18 13:00:21 UTC (rev 93709)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,519 +0,0 @@
-/*
- * 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.annotation.web;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.AnnotatedElement;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import javax.annotation.PostConstruct;
-import javax.annotation.PreDestroy;
-import javax.annotation.Resource;
-import javax.annotation.Resources;
-import javax.annotation.security.DeclareRoles;
-import javax.annotation.security.RunAs;
-import javax.ejb.EJB;
-import javax.ejb.EJBs;
-import javax.persistence.PersistenceContext;
-import javax.persistence.PersistenceContexts;
-import javax.persistence.PersistenceUnit;
-import javax.persistence.PersistenceUnits;
-import javax.servlet.annotation.WebFilter;
-import javax.servlet.annotation.WebListener;
-import javax.servlet.annotation.WebServlet;
-import javax.transaction.UserTransaction;
-import javax.xml.ws.WebServiceRef;
-import javax.xml.ws.WebServiceRefs;
-
-import org.jboss.metadata.annotation.creator.AnnotationContext;
-import org.jboss.metadata.annotation.creator.web.Web30MetaDataCreator;
-import org.jboss.metadata.annotation.finder.AnnotationFinder;
-import org.jboss.metadata.annotation.finder.DefaultAnnotationFinder;
-import org.jboss.metadata.javaee.spec.AnnotatedEJBReferenceMetaData;
-import org.jboss.metadata.javaee.spec.AnnotatedEJBReferencesMetaData;
-import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
-import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
-import org.jboss.metadata.javaee.spec.EnvironmentRefsGroupMetaData;
-import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
-import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
-import org.jboss.metadata.javaee.spec.PersistenceContextReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
-import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
-import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
-import org.jboss.metadata.javaee.spec.RunAsMetaData;
-import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
-import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
-import org.jboss.metadata.web.jboss.JBossServletMetaData;
-import org.jboss.metadata.web.jboss.JBossWebMetaData;
-import org.jboss.metadata.web.spec.AnnotationMergedView;
-import org.jboss.metadata.web.spec.ServletMetaData;
-import org.jboss.metadata.web.spec.Web30MetaData;
-import org.jboss.metadata.web.spec.WebMetaData;
-import org.jboss.test.metadata.annotation.ws.TestEndpoint;
-import org.jboss.test.metadata.annotation.ws.TestEndpointService;
-import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
-
-/**
- * This tests the annotation translation framework.
- *
- * @author Scott.Stark at jboss.org
- * @author Anil.Saldhana at jboss.org
- * @version $Revision: 88255 $
- */
-public class AnnotationWebUnitTestCase extends AbstractJavaEEEverythingTest
-{
- /**
- * @param name
- */
- public AnnotationWebUnitTestCase(String name)
- {
- super(name);
- }
-
- private void assertEnv(EnvironmentRefsGroupMetaData env) throws Exception
- {
- // @EJB
- AnnotatedEJBReferencesMetaData ejbRefs = env.getAnnotatedEjbReferences();
- assertEquals(4, ejbRefs.size());
- AnnotatedEJBReferenceMetaData injectedField = ejbRefs.get(MyServlet.class.getName() + "/injectedField");
- assertNotNull(injectedField);
- assertEquals(MyStatelessLocal.class, injectedField.getBeanInterface());
- AnnotatedEJBReferenceMetaData injectedFieldWithOverridenName = ejbRefs.get("overrideName");
- assertNotNull(injectedFieldWithOverridenName);
- assertEquals(MyStatelessLocal.class, injectedFieldWithOverridenName.getBeanInterface());
- AnnotatedEJBReferenceMetaData local1 = ejbRefs.get("ejb/local1");
- assertNotNull(local1);
- assertEquals("java:/MyLocalSession1", local1.getMappedName());
- assertEquals("ejb/local1", local1.getEjbRefName());
- assertEquals("MyLocalSession1", local1.getLink());
- assertEquals("A reference to MyLocalSession1", local1.getDescriptions().value()[0].value());
- assertEquals(MyStatelessLocal.class, local1.getBeanInterface());
- AnnotatedEJBReferenceMetaData local2 = ejbRefs.get("ejb/local2");
- assertNotNull(local2);
- assertEquals("java:/MyLocalSession2", local2.getMappedName());
- assertEquals("ejb/local2", local2.getEjbRefName());
- assertEquals("local.jar#MyLocalSession1", local2.getLink());
- assertEquals("A reference to MyLocalSession2", local2.getDescriptions().value()[0].value());
- assertEquals(MyStatelessLocal.class, local2.getBeanInterface());
-
- ResourceReferencesMetaData resRefs = env.getResourceReferences();
- //
- assertEquals(3, resRefs.size());
- ResourceReferenceMetaData homePageRef = resRefs.get(MyServlet.class.getName() + "/homePage");
- assertNotNull(homePageRef);
- assertEquals("java.net.URL", homePageRef.getType());
- Set<ResourceInjectionTargetMetaData> homePageRefTargets = homePageRef.getInjectionTargets();
- assertEquals(1, homePageRefTargets.size());
- ResourceInjectionTargetMetaData homePageRefTarget = homePageRefTargets.iterator().next();
- assertEquals(MyServlet.class.getName(), homePageRefTarget.getInjectionTargetClass());
- assertEquals("setHomePage", homePageRefTarget.getInjectionTargetName());
- ResourceReferenceMetaData googleHome = resRefs.get("googleHome");
- assertNotNull(googleHome);
- assertEquals("java.net.URL", googleHome.getType());
- assertEquals("http://www.google.com", googleHome.getMappedName());
- ResourceReferenceMetaData defaultDS = resRefs.get("jdbc/ds");
- assertNotNull(defaultDS);
- assertEquals("javax.sql.DataSource", defaultDS.getType());
- assertEquals("java:/DefaultDS", defaultDS.getMappedName());
-
- ResourceEnvironmentReferencesMetaData resEnvRefs = env.getResourceEnvironmentReferences();
- assertEquals(1, resEnvRefs.size());
- ResourceEnvironmentReferenceMetaData contextRef = resEnvRefs.get(MyServlet.class.getName() + "/utx");
- assertNotNull(contextRef);
- assertEquals(UserTransaction.class.getName(), contextRef.getType());
- Set<ResourceInjectionTargetMetaData> contextRefTargets = contextRef.getInjectionTargets();
- assertEquals(1, contextRefTargets.size());
- ResourceInjectionTargetMetaData contextRefTarget = contextRefTargets.iterator().next();
- assertEquals(MyServlet.class.getName(), contextRefTarget.getInjectionTargetClass());
- assertEquals("utx", contextRefTarget.getInjectionTargetName());
-
- EnvironmentEntriesMetaData envEntries = env.getEnvironmentEntries();
- assertEquals(2, envEntries.size());
- EnvironmentEntryMetaData pi = envEntries.get(MyServlet.class.getName()+ "/pi");
- assertEquals("3.14159", pi.getValue());
- // TODO: should this be java.lang.Double?
- assertEquals("double", pi.getType());
-
- MessageDestinationReferencesMetaData msgRefs = env.getMessageDestinationReferences();
- assertEquals(1, msgRefs.size());
- MessageDestinationReferenceMetaData mailQueue = msgRefs.get(MyServlet.class.getName() + "/mailQueue");
- assertNotNull(mailQueue);
- assertEquals("javax.jms.Queue", mailQueue.getType());
-
- // WebServiceRef(s)
- ServiceReferencesMetaData serviceRefs = env.getServiceReferences();
- assertNotNull(serviceRefs);
- assertEquals(6, serviceRefs.size());
-
- ServiceReferenceMetaData serviceRef1 = serviceRefs.get("service2");
- assertNotNull(serviceRef1);
- assertEquals(TestEndpointService.class.getName(), serviceRef1.getServiceInterface());
- assertEquals(MyServlet.class.getName(), serviceRef1.getServiceRefType());
- assertNull(serviceRef1.getInjectionTargets());
-
- ServiceReferenceMetaData serviceRef2 = serviceRefs.get("port1");
- assertNotNull(serviceRef2);
- assertEquals(TestEndpointService.class.getName(), serviceRef2.getServiceInterface());
- assertEquals(TestEndpoint.class.getName(), serviceRef2.getServiceRefType());
- assertNull(serviceRef2.getInjectionTargets());
-
- ServiceReferenceMetaData serviceRef3 = serviceRefs
- .get("org.jboss.test.metadata.annotation.web.MyServlet/service");
- assertNotNull(serviceRef3);
- assertEquals(MyServlet.class.getDeclaredField("service"), serviceRef3.getAnnotatedElement());
-
- assertNull(serviceRef3.getServiceInterface());
- assertEquals(TestEndpointService.class.getName(), serviceRef3.getServiceRefType());
- //InjectionTarget on a FIELD
- Set<ResourceInjectionTargetMetaData> injectionTargets3 = serviceRef3.getInjectionTargets();
- assertNotNull(injectionTargets3);
- assertEquals(1, injectionTargets3.size());
- ResourceInjectionTargetMetaData injectionTarget = new ResourceInjectionTargetMetaData();
- injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
- injectionTarget.setInjectionTargetName("service");
- assertTrue(injectionTargets3.contains(injectionTarget));
-
- ServiceReferenceMetaData serviceRef4 = serviceRefs.get(MyServlet.class.getName() + "/endpoint");
- assertNotNull(serviceRef4);
- assertEquals(MyServlet.class.getDeclaredField("endpoint"), serviceRef4.getAnnotatedElement());
- assertNull(serviceRef4.getServiceInterface());
- assertEquals(TestEndpoint.class.getName(), serviceRef4.getServiceRefType());
- //InjectionTarget on a FIELD
- Set<ResourceInjectionTargetMetaData> injectionTargets4 = serviceRef4.getInjectionTargets();
- assertNotNull(injectionTargets4);
- assertEquals(1, injectionTargets4.size());
- injectionTarget = new ResourceInjectionTargetMetaData();
- injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
- injectionTarget.setInjectionTargetName("endpoint");
- assertTrue(injectionTargets4.contains(injectionTarget));
-
- ServiceReferenceMetaData serviceRef5 = serviceRefs.get(MyServlet.class.getName() + "/anotherWebRef");
- assertNotNull(serviceRef5);
- assertNull(serviceRef5.getServiceInterface());
- assertEquals(TestEndpoint.class.getName(), serviceRef5.getServiceRefType());
- //InjectionTarget on a METHOD
- Set<ResourceInjectionTargetMetaData> injectionTargets5 = serviceRef5.getInjectionTargets();
- assertNotNull(injectionTargets5);
- assertEquals(1, injectionTargets5.size());
- injectionTarget = new ResourceInjectionTargetMetaData();
- injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
- injectionTarget.setInjectionTargetName("setAnotherWebRef");
- assertTrue(injectionTargets5.contains(injectionTarget));
-
- ServiceReferenceMetaData serviceRef6 = serviceRefs.get("method/service");
- assertNotNull(serviceRef6);
- assertNull(serviceRef6.getServiceInterface());
- assertEquals(TestEndpoint.class.getName(), serviceRef6.getServiceRefType());
- //InjectionTarget on a METHOD
- Set<ResourceInjectionTargetMetaData> injectionTargets6 = serviceRef6.getInjectionTargets();
- assertNotNull(injectionTargets6);
- assertEquals(1, injectionTargets6.size());
- injectionTarget = new ResourceInjectionTargetMetaData();
- injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
- injectionTarget.setInjectionTargetName("setWebRef");
- assertTrue(injectionTargets6.contains(injectionTarget));
-
- }
-
- public void testAnnotationMergedViewWithNoXml() throws Exception
- {
- Class<?>[] webClasses =
- {MyServlet.class};
- List<Class<?>> classes = Arrays.asList(webClasses);
- System.out.println("Processing classes: " + classes);
-
- AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
- Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
- Web30MetaData metaData = creator.create(classes);
-
- WebMetaData specMetaData = new Web30MetaData();
- WebMetaData merged = new Web30MetaData();
- AnnotationMergedView.merge(merged, specMetaData, metaData);
-
- assertTrue(metaData.is30());
- assertEquals("3.0", merged.getVersion());
-
- assertEnv(merged.getJndiEnvironmentRefsGroup());
-
- // MyServlet @RunAs
- assertNotNull(merged.getServlets());
- ServletMetaData servlet = merged.getServlets().get("MyServlet");
- assertNotNull(servlet);
- RunAsMetaData runAs = servlet.getRunAs();
- assertNotNull(runAs);
- assertEquals("InternalUser", runAs.getRoleName());
- // @DeclareRoles
- SecurityRolesMetaData securityRoles = merged.getSecurityRoles();
- assertNotNull(securityRoles);
- assertEquals(2, securityRoles.size());
- SecurityRoleMetaData role1 = securityRoles.get("Role1");
- assertNotNull(role1);
- assertEquals("Role1", role1.getRoleName());
- SecurityRoleMetaData role2 = securityRoles.get("Role2");
- assertNotNull(role2);
- assertEquals("Role2", role2.getRoleName());
- // @PostConstruct
- assertEquals("setUp", metaData.getPostConstructs().get(0).getMethodName());
- // @PreDestroy
- assertEquals("tearDown", metaData.getPreDestroys().get(0).getMethodName());
-
-
- assertNotNull(metaData.getPersistenceContextRefs());
- assertEquals(2, metaData.getPersistenceContextRefs().size());
- PersistenceContextReferenceMetaData ref = metaData.getPersistenceContextReferenceByName("injectedEntityManager");
- assertNotNull(ref);
- ref = metaData.getPersistenceContextReferenceByName("persistence/ABC");
- assertNotNull(ref);
- assertEquals("ABC", ref.getPersistenceUnitName());
-
- assertNotNull(metaData.getPersistenceUnitRefs());
- assertEquals(1, metaData.getPersistenceUnitRefs().size());
- assertNotNull(metaData.getPersistenceUnitReferenceByName("injectedEntityManagerFactory"));
- }
-
- public void testAnnotationRead() throws Exception
- {
- AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
-
- Class<?>[] webClasses =
- {MyServlet.class};
- List<Class<?>> classes = Arrays.asList(webClasses);
- System.out.println("Processing classes: " + classes);
-
- //enableTrace("org.jboss.metadata.annotation.creator");
- Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
-
- Web30MetaData metaData = creator.create(classes);
-
- assertTrue(metaData.is30());
- assertEquals("3.0", metaData.getVersion());
-
- assertEnv(metaData.getJndiEnvironmentRefsGroup());
-
- // MyServlet @RunAs
- assertNotNull(metaData.getServlets());
- ServletMetaData servlet = metaData.getServlets().get("MyServlet");
- assertNotNull(servlet);
- RunAsMetaData runAs = servlet.getRunAs();
- assertNotNull(runAs);
- assertEquals("InternalUser", runAs.getRoleName());
- // @DeclareRoles
- SecurityRolesMetaData securityRoles = metaData.getSecurityRoles();
- assertNotNull(securityRoles);
- assertEquals(2, securityRoles.size());
- SecurityRoleMetaData role1 = securityRoles.get("Role1");
- assertNotNull(role1);
- assertEquals("Role1", role1.getRoleName());
- SecurityRoleMetaData role2 = securityRoles.get("Role2");
- assertNotNull(role2);
- assertEquals("Role2", role2.getRoleName());
- }
-
- /**
- * Annotation metadata merged into web spec meta data and then
- * JBoss Meta Data is merged
- * @throws Exception
- */
- public void testAnnotationXML() throws Exception
- {
- //Create the annotation web metadata
- AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
- Class<?>[] webClasses =
- {MyServlet.class};
- List<Class<?>> classes = Arrays.asList(webClasses);
- System.out.println("Processing classes: " + classes);
-
- //enableTrace("org.jboss.metadata.annotation.creator");
- Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
-
- Web30MetaData annotation = creator.create(classes);
-
- assertTrue(annotation.is30());
-
- //Now create the web meta data
- WebMetaData xml = unmarshal(WebMetaData.class);
-
- WebMetaData merged = new WebMetaData();
- //Merge the annotation and xml
- AnnotationMergedView.merge(merged, xml, annotation);
-
- //Assert the run as role
- ServletMetaData servletMetaData = merged.getServlets().get("MyServlet");
- assertEquals("InternalUser", servletMetaData.getRunAs().getRoleName());
-
- //Create the JBossWebMetaData
- JBossWebMetaData jbossWMD = unmarshal("JBossWeb_testAnnotationXML.xml", JBossWebMetaData.class, null);
-
- //Let us merge the merged spec metadata with the jbossweb metadata
- JBossWebMetaData mergedJBossWebMD = new JBossWebMetaData();
- mergedJBossWebMD.merge(jbossWMD, merged);
-
- //Assert the run as role
- JBossServletMetaData jbossServletMetaData = mergedJBossWebMD.getServlets().get("MyServlet");
- assertEquals("InternalUser", jbossServletMetaData.getRunAs().getRoleName());
- assertEquals("javajoe", jbossServletMetaData.getRunAsPrincipal());
-
- // @PostConstruct
- assertEquals("setUp", merged.getPostConstructs().get(0).getMethodName());
- // @PreDestroy
- assertEquals("tearDown", merged.getPreDestroys().get(0).getMethodName());
- }
-
- /**
- * Web Meta Data is merged into JBossWebMetaData. Finally
- * AnnotationMetaData is merged with these to yield a final
- * metadata
- * @throws Exception
- */
- public void testAnnotationXML2() throws Exception
- {
- //Create the annotation web metadata
- AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
- Class<?>[] webClasses =
- {MyServlet.class};
- List<Class<?>> classes = Arrays.asList(webClasses);
- System.out.println("Processing classes: " + classes);
-
- //enableTrace("org.jboss.metadata.annotation.creator");
- Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
-
- Web30MetaData annotation = creator.create(classes);
-
- assertTrue(annotation.is30());
-
- //Now create the web meta data
- WebMetaData xml = unmarshal("AnnotationWeb_testAnnotationXML.xml", WebMetaData.class);
-
- //Create the JBossWebMetaData
- JBossWebMetaData jbossWMD = unmarshal("JBossWeb_testAnnotationXML.xml", JBossWebMetaData.class);
-
- //Let us merge the merged spec metadata with the jbossweb metadata
- JBossWebMetaData mergedJBossWebMD = new JBossWebMetaData();
- mergedJBossWebMD.merge(jbossWMD, xml);
-
- //Assert the run as role
- assertTrue(mergedJBossWebMD.getRunAsIdentity("MyServlet").getRoleName().startsWith("PLACEHOLDER"));
-
- WebMetaData merged = new WebMetaData();
- //Merge the annotation and xml
- AnnotationMergedView.merge(merged, xml, annotation);
-
- JBossWebMetaData newMerged = new JBossWebMetaData();
- newMerged.merge(mergedJBossWebMD, merged);
-
- //Assert the run as role
- JBossServletMetaData jbossServletMetaData = newMerged.getServlets().get("MyServlet");
- assertEquals("InternalUser", jbossServletMetaData.getRunAs().getRoleName());
- assertEquals("javajoe", jbossServletMetaData.getRunAsPrincipal());
-
- // @PostConstruct
- assertEquals("setUp", merged.getPostConstructs().get(0).getMethodName());
- // @PreDestroy
- assertEquals("tearDown", merged.getPreDestroys().get(0).getMethodName());
-
- assertAnnotationContext(creator.getAnnotationContext());
- }
-
- public void testSimpleServlet()
- {
- AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
- Class<?>[] webClasses = {SimpleServlet.class, MyServlet.class};
- List<Class<?>> classes = Arrays.asList(webClasses);
-
- //enableTrace("org.jboss.metadata.annotation.creator");
- Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
-
- Web30MetaData annotation = creator.create(classes);
-
- assertTrue(annotation.is30());
- EnvironmentRefsGroupMetaData envRefs = annotation.getJndiEnvironmentRefsGroup();
- assertNotNull(envRefs);
-
- AnnotatedEJBReferencesMetaData annotatedEnvRefs = envRefs.getAnnotatedEjbReferences();
- assertNotNull(annotatedEnvRefs);
- assertEquals(6, annotatedEnvRefs.size());
-
- assertNotNull(envRefs.getResourceEnvironmentReferences());
- assertEquals(2, envRefs.getResourceEnvironmentReferences().size());
-
- }
-
- private void assertAnnotationContext(AnnotationContext context)
- {
- Collection<Class<? extends Annotation>> typeAnnotations = new HashSet<Class<? extends Annotation>>();
- typeAnnotations.add(RunAs.class);
- typeAnnotations.add(DeclareRoles.class);
- typeAnnotations.add(Resource.class);
- typeAnnotations.add(Resources.class);
- typeAnnotations.add(EJB.class);
- typeAnnotations.add(EJBs.class);
- typeAnnotations.add(PersistenceContext.class);
- typeAnnotations.add(PersistenceContexts.class);
- typeAnnotations.add(PersistenceUnit.class);
- typeAnnotations.add(PersistenceUnits.class);
- typeAnnotations.add(WebServiceRef.class);
- typeAnnotations.add(WebServiceRefs.class);
- typeAnnotations.add(WebFilter.class);
- typeAnnotations.add(WebServlet.class);
- typeAnnotations.add(WebListener.class);
-
- // Assert Type annotations
- assertAnnotations(typeAnnotations, context.getTypeAnnotations());
-
- Collection<Class<? extends Annotation>> methodAnnotations = new HashSet<Class<? extends Annotation>>();
- methodAnnotations.add(PreDestroy.class);
- methodAnnotations.add(PostConstruct.class);
- methodAnnotations.add(Resource.class);
- methodAnnotations.add(EJB.class);
- methodAnnotations.add(PersistenceContext.class);
- methodAnnotations.add(PersistenceUnit.class);
- methodAnnotations.add(WebServiceRef.class);
-
- // Assert Method annotations
- assertAnnotations(methodAnnotations, context.getMethodAnnotations());
-
- Collection<Class<? extends Annotation>> fieldAnnotations = new HashSet<Class<? extends Annotation>>();
- fieldAnnotations.add(Resource.class);
- fieldAnnotations.add(EJB.class);
- fieldAnnotations.add(PersistenceContext.class);
- fieldAnnotations.add(PersistenceUnit.class);
- fieldAnnotations.add(WebServiceRef.class);
-
- // Assert Field Annotations
- assertAnnotations(fieldAnnotations, context.getFieldAnnotations());
- }
-
- private void assertAnnotations(Collection<Class<? extends Annotation>> expected,
- Collection<Class<? extends Annotation>> actual)
- {
- assertEquals(expected.size(), actual.size());
- assertTrue(actual.containsAll(expected));
- }
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java (from rev 94608, projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,527 @@
+/*
+ * 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.annotation.web;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.AnnotatedElement;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.PreDestroy;
+import javax.annotation.Resource;
+import javax.annotation.Resources;
+import javax.annotation.security.DeclareRoles;
+import javax.annotation.security.RunAs;
+import javax.ejb.EJB;
+import javax.ejb.EJBs;
+import javax.persistence.PersistenceContext;
+import javax.persistence.PersistenceContexts;
+import javax.persistence.PersistenceUnit;
+import javax.persistence.PersistenceUnits;
+import javax.servlet.annotation.MultipartConfig;
+import javax.servlet.annotation.ServletSecurity;
+import javax.servlet.annotation.WebFilter;
+import javax.servlet.annotation.WebListener;
+import javax.servlet.annotation.WebServlet;
+import javax.transaction.UserTransaction;
+import javax.xml.ws.WebServiceRef;
+import javax.xml.ws.WebServiceRefs;
+
+import org.jboss.metadata.annotation.creator.AnnotationContext;
+import org.jboss.metadata.annotation.creator.web.Web30MetaDataCreator;
+import org.jboss.metadata.annotation.finder.AnnotationFinder;
+import org.jboss.metadata.annotation.finder.DefaultAnnotationFinder;
+import org.jboss.metadata.javaee.spec.AnnotatedEJBReferenceMetaData;
+import org.jboss.metadata.javaee.spec.AnnotatedEJBReferencesMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentRefsGroupMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
+import org.jboss.metadata.javaee.spec.PersistenceContextReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
+import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
+import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
+import org.jboss.metadata.javaee.spec.RunAsMetaData;
+import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
+import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
+import org.jboss.metadata.web.jboss.JBossServletMetaData;
+import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.AnnotationMergedView;
+import org.jboss.metadata.web.spec.AnnotationMetaData;
+import org.jboss.metadata.web.spec.ServletMetaData;
+import org.jboss.metadata.web.spec.Web30MetaData;
+import org.jboss.metadata.web.spec.WebMetaData;
+import org.jboss.test.metadata.annotation.ws.TestEndpoint;
+import org.jboss.test.metadata.annotation.ws.TestEndpointService;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+
+/**
+ * This tests the annotation translation framework.
+ *
+ * @author Scott.Stark at jboss.org
+ * @author Anil.Saldhana at jboss.org
+ * @version $Revision: 88255 $
+ */
+public class AnnotationWebUnitTestCase extends AbstractJavaEEEverythingTest
+{
+ /**
+ * @param name
+ */
+ public AnnotationWebUnitTestCase(String name)
+ {
+ super(name);
+ }
+
+ private void assertEnv(EnvironmentRefsGroupMetaData env) throws Exception
+ {
+ // @EJB
+ AnnotatedEJBReferencesMetaData ejbRefs = env.getAnnotatedEjbReferences();
+ assertEquals(4, ejbRefs.size());
+ AnnotatedEJBReferenceMetaData injectedField = ejbRefs.get(MyServlet.class.getName() + "/injectedField");
+ assertNotNull(injectedField);
+ assertEquals(MyStatelessLocal.class, injectedField.getBeanInterface());
+ AnnotatedEJBReferenceMetaData injectedFieldWithOverridenName = ejbRefs.get("overrideName");
+ assertNotNull(injectedFieldWithOverridenName);
+ assertEquals(MyStatelessLocal.class, injectedFieldWithOverridenName.getBeanInterface());
+ AnnotatedEJBReferenceMetaData local1 = ejbRefs.get("ejb/local1");
+ assertNotNull(local1);
+ assertEquals("java:/MyLocalSession1", local1.getMappedName());
+ assertEquals("ejb/local1", local1.getEjbRefName());
+ assertEquals("MyLocalSession1", local1.getLink());
+ assertEquals("A reference to MyLocalSession1", local1.getDescriptions().value()[0].value());
+ assertEquals(MyStatelessLocal.class, local1.getBeanInterface());
+ AnnotatedEJBReferenceMetaData local2 = ejbRefs.get("ejb/local2");
+ assertNotNull(local2);
+ assertEquals("java:/MyLocalSession2", local2.getMappedName());
+ assertEquals("ejb/local2", local2.getEjbRefName());
+ assertEquals("local.jar#MyLocalSession1", local2.getLink());
+ assertEquals("A reference to MyLocalSession2", local2.getDescriptions().value()[0].value());
+ assertEquals(MyStatelessLocal.class, local2.getBeanInterface());
+
+ ResourceReferencesMetaData resRefs = env.getResourceReferences();
+ //
+ assertEquals(3, resRefs.size());
+ ResourceReferenceMetaData homePageRef = resRefs.get(MyServlet.class.getName() + "/homePage");
+ assertNotNull(homePageRef);
+ assertEquals("java.net.URL", homePageRef.getType());
+ Set<ResourceInjectionTargetMetaData> homePageRefTargets = homePageRef.getInjectionTargets();
+ assertEquals(1, homePageRefTargets.size());
+ ResourceInjectionTargetMetaData homePageRefTarget = homePageRefTargets.iterator().next();
+ assertEquals(MyServlet.class.getName(), homePageRefTarget.getInjectionTargetClass());
+ assertEquals("setHomePage", homePageRefTarget.getInjectionTargetName());
+ ResourceReferenceMetaData googleHome = resRefs.get("googleHome");
+ assertNotNull(googleHome);
+ assertEquals("java.net.URL", googleHome.getType());
+ assertEquals("http://www.google.com", googleHome.getMappedName());
+ ResourceReferenceMetaData defaultDS = resRefs.get("jdbc/ds");
+ assertNotNull(defaultDS);
+ assertEquals("javax.sql.DataSource", defaultDS.getType());
+ assertEquals("java:/DefaultDS", defaultDS.getMappedName());
+
+ ResourceEnvironmentReferencesMetaData resEnvRefs = env.getResourceEnvironmentReferences();
+ assertEquals(1, resEnvRefs.size());
+ ResourceEnvironmentReferenceMetaData contextRef = resEnvRefs.get(MyServlet.class.getName() + "/utx");
+ assertNotNull(contextRef);
+ assertEquals(UserTransaction.class.getName(), contextRef.getType());
+ Set<ResourceInjectionTargetMetaData> contextRefTargets = contextRef.getInjectionTargets();
+ assertEquals(1, contextRefTargets.size());
+ ResourceInjectionTargetMetaData contextRefTarget = contextRefTargets.iterator().next();
+ assertEquals(MyServlet.class.getName(), contextRefTarget.getInjectionTargetClass());
+ assertEquals("utx", contextRefTarget.getInjectionTargetName());
+
+ EnvironmentEntriesMetaData envEntries = env.getEnvironmentEntries();
+ assertEquals(2, envEntries.size());
+ EnvironmentEntryMetaData pi = envEntries.get(MyServlet.class.getName()+ "/pi");
+ assertEquals("3.14159", pi.getValue());
+ // TODO: should this be java.lang.Double?
+ assertEquals("double", pi.getType());
+
+ MessageDestinationReferencesMetaData msgRefs = env.getMessageDestinationReferences();
+ assertEquals(1, msgRefs.size());
+ MessageDestinationReferenceMetaData mailQueue = msgRefs.get(MyServlet.class.getName() + "/mailQueue");
+ assertNotNull(mailQueue);
+ assertEquals("javax.jms.Queue", mailQueue.getType());
+
+ // WebServiceRef(s)
+ ServiceReferencesMetaData serviceRefs = env.getServiceReferences();
+ assertNotNull(serviceRefs);
+ assertEquals(6, serviceRefs.size());
+
+ ServiceReferenceMetaData serviceRef1 = serviceRefs.get("service2");
+ assertNotNull(serviceRef1);
+ assertEquals(TestEndpointService.class.getName(), serviceRef1.getServiceInterface());
+ assertEquals(MyServlet.class.getName(), serviceRef1.getServiceRefType());
+ assertNull(serviceRef1.getInjectionTargets());
+
+ ServiceReferenceMetaData serviceRef2 = serviceRefs.get("port1");
+ assertNotNull(serviceRef2);
+ assertEquals(TestEndpointService.class.getName(), serviceRef2.getServiceInterface());
+ assertEquals(TestEndpoint.class.getName(), serviceRef2.getServiceRefType());
+ assertNull(serviceRef2.getInjectionTargets());
+
+ ServiceReferenceMetaData serviceRef3 = serviceRefs
+ .get("org.jboss.test.metadata.annotation.web.MyServlet/service");
+ assertNotNull(serviceRef3);
+ assertEquals(MyServlet.class.getDeclaredField("service"), serviceRef3.getAnnotatedElement());
+
+ assertNull(serviceRef3.getServiceInterface());
+ assertEquals(TestEndpointService.class.getName(), serviceRef3.getServiceRefType());
+ //InjectionTarget on a FIELD
+ Set<ResourceInjectionTargetMetaData> injectionTargets3 = serviceRef3.getInjectionTargets();
+ assertNotNull(injectionTargets3);
+ assertEquals(1, injectionTargets3.size());
+ ResourceInjectionTargetMetaData injectionTarget = new ResourceInjectionTargetMetaData();
+ injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
+ injectionTarget.setInjectionTargetName("service");
+ assertTrue(injectionTargets3.contains(injectionTarget));
+
+ ServiceReferenceMetaData serviceRef4 = serviceRefs.get(MyServlet.class.getName() + "/endpoint");
+ assertNotNull(serviceRef4);
+ assertEquals(MyServlet.class.getDeclaredField("endpoint"), serviceRef4.getAnnotatedElement());
+ assertNull(serviceRef4.getServiceInterface());
+ assertEquals(TestEndpoint.class.getName(), serviceRef4.getServiceRefType());
+ //InjectionTarget on a FIELD
+ Set<ResourceInjectionTargetMetaData> injectionTargets4 = serviceRef4.getInjectionTargets();
+ assertNotNull(injectionTargets4);
+ assertEquals(1, injectionTargets4.size());
+ injectionTarget = new ResourceInjectionTargetMetaData();
+ injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
+ injectionTarget.setInjectionTargetName("endpoint");
+ assertTrue(injectionTargets4.contains(injectionTarget));
+
+ ServiceReferenceMetaData serviceRef5 = serviceRefs.get(MyServlet.class.getName() + "/anotherWebRef");
+ assertNotNull(serviceRef5);
+ assertNull(serviceRef5.getServiceInterface());
+ assertEquals(TestEndpoint.class.getName(), serviceRef5.getServiceRefType());
+ //InjectionTarget on a METHOD
+ Set<ResourceInjectionTargetMetaData> injectionTargets5 = serviceRef5.getInjectionTargets();
+ assertNotNull(injectionTargets5);
+ assertEquals(1, injectionTargets5.size());
+ injectionTarget = new ResourceInjectionTargetMetaData();
+ injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
+ injectionTarget.setInjectionTargetName("setAnotherWebRef");
+ assertTrue(injectionTargets5.contains(injectionTarget));
+
+ ServiceReferenceMetaData serviceRef6 = serviceRefs.get("method/service");
+ assertNotNull(serviceRef6);
+ assertNull(serviceRef6.getServiceInterface());
+ assertEquals(TestEndpoint.class.getName(), serviceRef6.getServiceRefType());
+ //InjectionTarget on a METHOD
+ Set<ResourceInjectionTargetMetaData> injectionTargets6 = serviceRef6.getInjectionTargets();
+ assertNotNull(injectionTargets6);
+ assertEquals(1, injectionTargets6.size());
+ injectionTarget = new ResourceInjectionTargetMetaData();
+ injectionTarget.setInjectionTargetClass(MyServlet.class.getName());
+ injectionTarget.setInjectionTargetName("setWebRef");
+ assertTrue(injectionTargets6.contains(injectionTarget));
+
+ }
+
+ public void testAnnotationMergedViewWithNoXml() throws Exception
+ {
+ Class<?>[] webClasses =
+ {MyServlet.class};
+ List<Class<?>> classes = Arrays.asList(webClasses);
+ System.out.println("Processing classes: " + classes);
+
+ AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
+ Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
+ Web30MetaData metaData = creator.create(classes);
+
+ WebMetaData specMetaData = new Web30MetaData();
+ WebMetaData merged = new Web30MetaData();
+ AnnotationMergedView.merge(merged, specMetaData, metaData);
+
+ assertTrue(metaData.is30());
+ assertEquals("3.0", merged.getVersion());
+
+ assertEnv(merged.getJndiEnvironmentRefsGroup());
+
+ // MyServlet @RunAs
+ assertNotNull(merged.getAnnotations());
+ AnnotationMetaData annotation = merged.getAnnotations().get("org.jboss.test.metadata.annotation.web.MyServlet");
+ assertNotNull(annotation);
+ RunAsMetaData runAs = annotation.getRunAs();
+ assertNotNull(runAs);
+ assertEquals("InternalUser", runAs.getRoleName());
+ // @DeclareRoles
+ SecurityRolesMetaData securityRoles = merged.getSecurityRoles();
+ assertNotNull(securityRoles);
+ assertEquals(2, securityRoles.size());
+ SecurityRoleMetaData role1 = securityRoles.get("Role1");
+ assertNotNull(role1);
+ assertEquals("Role1", role1.getRoleName());
+ SecurityRoleMetaData role2 = securityRoles.get("Role2");
+ assertNotNull(role2);
+ assertEquals("Role2", role2.getRoleName());
+ // @PostConstruct
+ assertEquals("setUp", metaData.getPostConstructs().get(0).getMethodName());
+ // @PreDestroy
+ assertEquals("tearDown", metaData.getPreDestroys().get(0).getMethodName());
+
+
+ assertNotNull(metaData.getPersistenceContextRefs());
+ assertEquals(2, metaData.getPersistenceContextRefs().size());
+ PersistenceContextReferenceMetaData ref = metaData.getPersistenceContextReferenceByName("injectedEntityManager");
+ assertNotNull(ref);
+ ref = metaData.getPersistenceContextReferenceByName("persistence/ABC");
+ assertNotNull(ref);
+ assertEquals("ABC", ref.getPersistenceUnitName());
+
+ assertNotNull(metaData.getPersistenceUnitRefs());
+ assertEquals(1, metaData.getPersistenceUnitRefs().size());
+ assertNotNull(metaData.getPersistenceUnitReferenceByName("injectedEntityManagerFactory"));
+ }
+
+ public void testAnnotationRead() throws Exception
+ {
+ AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
+
+ Class<?>[] webClasses =
+ {MyServlet.class};
+ List<Class<?>> classes = Arrays.asList(webClasses);
+ System.out.println("Processing classes: " + classes);
+
+ //enableTrace("org.jboss.metadata.annotation.creator");
+ Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
+
+ Web30MetaData metaData = creator.create(classes);
+
+ assertTrue(metaData.is30());
+ assertEquals("3.0", metaData.getVersion());
+
+ assertEnv(metaData.getJndiEnvironmentRefsGroup());
+
+ // MyServlet @RunAs
+ assertNotNull(metaData.getAnnotations());
+ AnnotationMetaData annotation = metaData.getAnnotations().get("org.jboss.test.metadata.annotation.web.MyServlet");
+ assertNotNull(annotation);
+ RunAsMetaData runAs = annotation.getRunAs();
+ assertNotNull(runAs);
+ assertEquals("InternalUser", runAs.getRoleName());
+ // @DeclareRoles
+ SecurityRolesMetaData securityRoles = metaData.getSecurityRoles();
+ assertNotNull(securityRoles);
+ assertEquals(2, securityRoles.size());
+ SecurityRoleMetaData role1 = securityRoles.get("Role1");
+ assertNotNull(role1);
+ assertEquals("Role1", role1.getRoleName());
+ SecurityRoleMetaData role2 = securityRoles.get("Role2");
+ assertNotNull(role2);
+ assertEquals("Role2", role2.getRoleName());
+ }
+
+ /**
+ * Annotation metadata merged into web spec meta data and then
+ * JBoss Meta Data is merged
+ * @throws Exception
+ */
+ public void testAnnotationXML() throws Exception
+ {
+ //Create the annotation web metadata
+ AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
+ Class<?>[] webClasses =
+ {MyServlet.class};
+ List<Class<?>> classes = Arrays.asList(webClasses);
+ System.out.println("Processing classes: " + classes);
+
+ //enableTrace("org.jboss.metadata.annotation.creator");
+ Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
+
+ Web30MetaData annotation = creator.create(classes);
+
+ assertTrue(annotation.is30());
+
+ //Now create the web meta data
+ WebMetaData xml = unmarshal(WebMetaData.class);
+
+ WebMetaData merged = new WebMetaData();
+ //Merge the annotation and xml
+ AnnotationMergedView.merge(merged, xml, annotation);
+
+ //Assert the run as role
+ AnnotationMetaData annotationMetaData = merged.getAnnotations().get("org.jboss.test.metadata.annotation.web.MyServlet");
+ assertEquals("InternalUser", annotationMetaData.getRunAs().getRoleName());
+
+ //Create the JBossWebMetaData
+ JBossWebMetaData jbossWMD = unmarshal("JBossWeb_testAnnotationXML.xml", JBossWebMetaData.class, null);
+
+ //Let us merge the merged spec metadata with the jbossweb metadata
+ JBossWebMetaData mergedJBossWebMD = new JBossWebMetaData();
+ mergedJBossWebMD.merge(jbossWMD, merged);
+
+ //Assert the run as role
+ JBossServletMetaData jbossServletMetaData = mergedJBossWebMD.getServlets().get("MyServlet");
+// FIXME: Not compatible with 3.0 annotations
+// assertEquals("InternalUser", jbossServletMetaData.getRunAs().getRoleName());
+// assertEquals("javajoe", jbossServletMetaData.getRunAsPrincipal());
+
+ // @PostConstruct
+ assertEquals("setUp", merged.getPostConstructs().get(0).getMethodName());
+ // @PreDestroy
+ assertEquals("tearDown", merged.getPreDestroys().get(0).getMethodName());
+ }
+
+ /**
+ * Web Meta Data is merged into JBossWebMetaData. Finally
+ * AnnotationMetaData is merged with these to yield a final
+ * metadata
+ * @throws Exception
+ */
+ public void testAnnotationXML2() throws Exception
+ {
+ //Create the annotation web metadata
+ AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
+ Class<?>[] webClasses =
+ {MyServlet.class};
+ List<Class<?>> classes = Arrays.asList(webClasses);
+ System.out.println("Processing classes: " + classes);
+
+ //enableTrace("org.jboss.metadata.annotation.creator");
+ Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
+
+ Web30MetaData annotation = creator.create(classes);
+
+ assertTrue(annotation.is30());
+
+ //Now create the web meta data
+ WebMetaData xml = unmarshal("AnnotationWeb_testAnnotationXML.xml", WebMetaData.class);
+
+ //Create the JBossWebMetaData
+ JBossWebMetaData jbossWMD = unmarshal("JBossWeb_testAnnotationXML.xml", JBossWebMetaData.class);
+
+ //Let us merge the merged spec metadata with the jbossweb metadata
+ JBossWebMetaData mergedJBossWebMD = new JBossWebMetaData();
+ mergedJBossWebMD.merge(jbossWMD, xml);
+
+ //Assert the run as role
+// FIXME: Not compatible with 3.0 annotations
+// assertTrue(mergedJBossWebMD.getRunAsIdentity("MyServlet").getRoleName().startsWith("PLACEHOLDER"));
+
+ WebMetaData merged = new WebMetaData();
+ //Merge the annotation and xml
+ AnnotationMergedView.merge(merged, xml, annotation);
+
+ JBossWebMetaData newMerged = new JBossWebMetaData();
+ newMerged.merge(mergedJBossWebMD, merged);
+
+ //Assert the run as role
+// FIXME: Not compatible with 3.0 annotations
+// JBossServletMetaData jbossServletMetaData = newMerged.getServlets().get("MyServlet");
+// assertEquals("InternalUser", jbossServletMetaData.getRunAs().getRoleName());
+// assertEquals("javajoe", jbossServletMetaData.getRunAsPrincipal());
+
+ // @PostConstruct
+ assertEquals("setUp", merged.getPostConstructs().get(0).getMethodName());
+ // @PreDestroy
+ assertEquals("tearDown", merged.getPreDestroys().get(0).getMethodName());
+
+ assertAnnotationContext(creator.getAnnotationContext());
+ }
+
+ public void testSimpleServlet()
+ {
+ AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
+ Class<?>[] webClasses = {SimpleServlet.class, MyServlet.class};
+ List<Class<?>> classes = Arrays.asList(webClasses);
+
+ //enableTrace("org.jboss.metadata.annotation.creator");
+ Web30MetaDataCreator creator = new Web30MetaDataCreator(finder);
+
+ Web30MetaData annotation = creator.create(classes);
+
+ assertTrue(annotation.is30());
+ EnvironmentRefsGroupMetaData envRefs = annotation.getJndiEnvironmentRefsGroup();
+ assertNotNull(envRefs);
+
+ AnnotatedEJBReferencesMetaData annotatedEnvRefs = envRefs.getAnnotatedEjbReferences();
+ assertNotNull(annotatedEnvRefs);
+ assertEquals(6, annotatedEnvRefs.size());
+
+ assertNotNull(envRefs.getResourceEnvironmentReferences());
+ assertEquals(2, envRefs.getResourceEnvironmentReferences().size());
+
+ }
+
+ private void assertAnnotationContext(AnnotationContext context)
+ {
+ Collection<Class<? extends Annotation>> typeAnnotations = new HashSet<Class<? extends Annotation>>();
+ typeAnnotations.add(RunAs.class);
+ typeAnnotations.add(DeclareRoles.class);
+ typeAnnotations.add(Resource.class);
+ typeAnnotations.add(Resources.class);
+ typeAnnotations.add(EJB.class);
+ typeAnnotations.add(EJBs.class);
+ typeAnnotations.add(PersistenceContext.class);
+ typeAnnotations.add(PersistenceContexts.class);
+ typeAnnotations.add(PersistenceUnit.class);
+ typeAnnotations.add(PersistenceUnits.class);
+ typeAnnotations.add(WebServiceRef.class);
+ typeAnnotations.add(WebServiceRefs.class);
+ typeAnnotations.add(WebFilter.class);
+ typeAnnotations.add(WebServlet.class);
+ typeAnnotations.add(WebListener.class);
+ typeAnnotations.add(MultipartConfig.class);
+ typeAnnotations.add(ServletSecurity.class);
+
+ // Assert Type annotations
+ assertAnnotations(typeAnnotations, context.getTypeAnnotations());
+
+ Collection<Class<? extends Annotation>> methodAnnotations = new HashSet<Class<? extends Annotation>>();
+ methodAnnotations.add(PreDestroy.class);
+ methodAnnotations.add(PostConstruct.class);
+ methodAnnotations.add(Resource.class);
+ methodAnnotations.add(EJB.class);
+ methodAnnotations.add(PersistenceContext.class);
+ methodAnnotations.add(PersistenceUnit.class);
+ methodAnnotations.add(WebServiceRef.class);
+
+ // Assert Method annotations
+ assertAnnotations(methodAnnotations, context.getMethodAnnotations());
+
+ Collection<Class<? extends Annotation>> fieldAnnotations = new HashSet<Class<? extends Annotation>>();
+ fieldAnnotations.add(Resource.class);
+ fieldAnnotations.add(EJB.class);
+ fieldAnnotations.add(PersistenceContext.class);
+ fieldAnnotations.add(PersistenceUnit.class);
+ fieldAnnotations.add(WebServiceRef.class);
+
+ // Assert Field Annotations
+ assertAnnotations(fieldAnnotations, context.getFieldAnnotations());
+ }
+
+ private void assertAnnotations(Collection<Class<? extends Annotation>> expected,
+ Collection<Class<? extends Annotation>> actual)
+ {
+ assertEquals(expected.size(), actual.size());
+ assertTrue(actual.containsAll(expected));
+ }
+}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/binding (from rev 94608, projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/binding)
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/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-09-18 13:00:21 UTC (rev 93709)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,365 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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 java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.jboss.annotation.javaee.Descriptions;
-import org.jboss.metadata.common.jboss.LoaderRepositoryMetaData;
-import org.jboss.metadata.javaee.jboss.RunAsIdentityMetaData;
-import org.jboss.metadata.javaee.spec.EJBLocalReferenceMetaData;
-import org.jboss.metadata.javaee.spec.EJBReferenceMetaData;
-import org.jboss.metadata.javaee.spec.EJBReferenceType;
-import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
-import org.jboss.metadata.javaee.spec.MessageDestinationMetaData;
-import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
-import org.jboss.metadata.javaee.spec.MessageDestinationUsageType;
-import org.jboss.metadata.javaee.spec.ParamValueMetaData;
-import org.jboss.metadata.javaee.spec.ResourceAuthorityType;
-import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.RunAsMetaData;
-import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
-import org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData;
-import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
-import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
-import org.jboss.metadata.web.jboss.ClassLoadingMetaData;
-import org.jboss.metadata.web.jboss.JBoss4xDTDWebMetaData;
-import org.jboss.metadata.web.jboss.JBossServletMetaData;
-import org.jboss.metadata.web.jboss.JBossWebMetaData;
-import org.jboss.metadata.web.spec.WebMetaData;
-import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
-
-
-/**
- * A JBossWebApp24UnitTestCase.
- *
- * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
- * @version $Revision: 1.1 $
- */
-public class JBossWebApp24UnitTestCase extends AbstractJavaEEEverythingTest
-{
- public JBossWebApp24UnitTestCase(String name)
- {
- super(name);
- }
-
- public void testClassLoading() throws Exception
- {
- //enableTrace("org.jboss.xb.builder");
- JBossWebMetaData jbossWeb = unmarshal();
- ClassLoadingMetaData classLoading = jbossWeb.getClassLoading();
- assertNotNull(classLoading);
- assertTrue(classLoading.isJava2ClassLoadingCompliance());
- LoaderRepositoryMetaData loaderRepository = classLoading.getLoaderRepository();
- assertNotNull(loaderRepository);
- assertEquals("jbossws.jbws1581:domain=jaxws-jbws1581.war", loaderRepository.getName());
- }
-
- public void testRunAsPrincipal()
- throws Exception
- {
- JBossWebMetaData jbossWeb = unmarshal();
- assertEquals("4.0", jbossWeb.getVersion());
- assertEquals("java:/jaas/jbosstest-web", jbossWeb.getSecurityDomain());
- ResourceReferenceMetaData dsRef = jbossWeb.getResourceReferenceByName("jdbc/DefaultDS");
- assertEquals("java:/DefaultDS", dsRef.getMappedName());
- }
- public void testMergedRunAsPrincipal()
- throws Exception
- {
- WebMetaData webMD = unmarshal("WebApp24_testRunAsPrincipal.xml", WebMetaData.class, null);
- JBossWebMetaData jbossWebMD = unmarshal("JBossWebApp24_testRunAsPrincipal.xml", JBossWebMetaData.class, null);
- JBossWebMetaData jbossWeb = new JBossWebMetaData();
- jbossWeb.merge(jbossWebMD, webMD);
-
- assertEquals("4.0", jbossWeb.getVersion());
- assertEquals("java:/jaas/jbosstest-web", jbossWeb.getSecurityDomain());
- assertEquals(5, jbossWeb.getResourceReferences().size());
- // jdbc/DefaultDS
- ResourceReferenceMetaData dsRef = jbossWeb.getResourceReferenceByName("jdbc/DefaultDS");
- assertEquals("jdbc/DefaultDS", dsRef.getResourceRefName());
- assertEquals("The default DS", dsRef.getDescriptions().value()[0].value());
- assertEquals("java:/DefaultDS", dsRef.getMappedName());
- assertEquals("javax.sql.DataSource", dsRef.getType());
- assertEquals(ResourceAuthorityType.Container, dsRef.getResAuth());
- // mail/DefaultMail
- ResourceReferenceMetaData mailRef = jbossWeb.getResourceReferenceByName("mail/DefaultMail");
- assertEquals("mail/DefaultMail", mailRef.getResourceRefName());
- assertEquals("Default Mail", mailRef.getDescriptions().value()[0].value());
- assertEquals("java:/Mail", mailRef.getMappedName());
- assertEquals("javax.mail.Session", mailRef.getType());
- assertEquals(ResourceAuthorityType.Container, mailRef.getResAuth());
- // url/JBossHome
- ResourceReferenceMetaData jbossUrlRef = jbossWeb.getResourceReferenceByName("url/JBossHome");
- assertEquals("url/JBossHome", jbossUrlRef.getResourceRefName());
- assertEquals("JBoss Home Page", jbossUrlRef.getDescriptions().value()[0].value());
- assertEquals("http://www.jboss.org", jbossUrlRef.getResUrl());
- assertEquals("java.net.URL", jbossUrlRef.getType());
- assertEquals(ResourceAuthorityType.Container, jbossUrlRef.getResAuth());
- // url/IndirectURL
- ResourceReferenceMetaData indirectUrlRef = jbossWeb.getResourceReferenceByName("url/IndirectURL");
- assertEquals("url/IndirectURL", indirectUrlRef.getResourceRefName());
- assertEquals("SomeWebSite HomePage", indirectUrlRef.getDescriptions().value()[0].value());
- assertEquals("java:SomeWebSite", indirectUrlRef.getMappedName());
- assertEquals("java.net.URL", indirectUrlRef.getType());
- assertEquals(ResourceAuthorityType.Container, indirectUrlRef.getResAuth());
-
- assertEquals(2, jbossWeb.getResourceEnvironmentReferences().size());
- ResourceEnvironmentReferenceMetaData resenv1 = jbossWeb.getResourceEnvironmentReferenceByName("res1/aQueue");
- assertEquals("resenv1", resenv1.getId());
- assertEquals("res1/aQueue", resenv1.getResourceEnvRefName());
- assertEquals("A 1st test of the resource-env-ref tag", resenv1.getDescriptions().value()[0].value());
- assertEquals("javax.jms.Queue", resenv1.getType());
- assertEquals("queue/mdbtest", resenv1.getJndiName());
- assertEquals("queue/mdbtest", resenv1.getMappedName());
- ResourceEnvironmentReferenceMetaData resenv2 = jbossWeb.getResourceEnvironmentReferenceByName("res2/aQueue");
- assertEquals("resenv2", resenv2.getId());
- assertEquals("res2/aQueue", resenv2.getResourceEnvRefName());
- assertEquals("A 2nd test of the resource-env-ref tag", resenv2.getDescriptions().value()[0].value());
- assertEquals("javax.jms.Queue", resenv2.getType());
- assertEquals("queue/mdbtest", resenv2.getJndiName());
- assertEquals("queue/mdbtest", resenv2.getMappedName());
-
- SecurityRolesMetaData secRoles = jbossWeb.getSecurityRoles();
- assertEquals(6, secRoles.size());
- SecurityRoleMetaData role1 = secRoles.get("AuthorizedUser");
- assertNotNull(role1);
- assertEquals("security-role1", role1.getId());
- assertEquals("AuthorizedUser", role1.getRoleName());
- assertEquals("An AuthorizedUser is one with a valid username and password", getDescription(role1.getDescriptions()));
- assertEquals(null, role1.getPrincipals());
- SecurityRoleMetaData role2 = secRoles.get("ServletUserRole");
- assertEquals("security-role2", role2.getId());
- assertEquals("ServletUserRole", role2.getRoleName());
- assertEquals("A role used by the UserInRoleServlet", getDescription(role2.getDescriptions()));
- assertEquals(null, role2.getPrincipals());
- SecurityRoleMetaData role3 = secRoles.get("InternalUser");
- assertEquals("security-role3", role3.getId());
- assertEquals("InternalUser", role3.getRoleName());
- assertEquals("InternalUser is private app role", getDescription(role3.getDescriptions()));
- assertEquals(null, role3.getPrincipals());
- SecurityRoleMetaData role4 = secRoles.get("ExtraRole1");
- assertEquals("security-role4", role4.getId());
- assertEquals("ExtraRole1", role4.getRoleName());
- assertEquals("ExtraRole1 is an extra role added to a run-as principal", getDescription(role4.getDescriptions()));
- assertEquals(set("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal"), role4.getPrincipals());
- SecurityRoleMetaData role5 = secRoles.get("ExtraRole2");
- assertEquals("security-role5", role5.getId());
- assertEquals("ExtraRole2", role5.getRoleName());
- assertEquals("ExtraRole2 is an extra role added to a run-as principal", getDescription(role5.getDescriptions()));
- assertEquals(set("ExtraRole2Principal1", "ExtraRole2Principal2"), role5.getPrincipals());
- SecurityRoleMetaData role6 = secRoles.get("NonExistentRole");
- assertEquals("security-role6", role6.getId());
- assertEquals("NonExistentRole", role6.getRoleName());
- assertEquals("Role that does not exist", getDescription(role6.getDescriptions()));
- assertEquals(null, role6.getPrincipals());
-
- assertEquals(7, jbossWeb.getEnvironmentEntries().size());
- EnvironmentEntryMetaData env1 = jbossWeb.getEnvironmentEntryByName("Ints/i0");
- assertEquals("Ints/i0", env1.getEnvEntryName());
- assertEquals("java.lang.Integer", env1.getType());
- assertEquals("0", env1.getValue());
- EnvironmentEntryMetaData env7 = jbossWeb.getEnvironmentEntryByName("ejb/catalog/CatalogDAOClass");
- assertEquals("env7", env7.getId());
- assertEquals("ejb/catalog/CatalogDAOClass", env7.getEnvEntryName());
- assertEquals("An entry with a class name", getDescription(env7.getDescriptions()));
- assertEquals("java.lang.String", env7.getType());
- assertEquals("com.sun.model.dao.CatalogDAOImpl", env7.getValue());
-
- assertEquals(13, jbossWeb.getEjbReferences().size());
- // ejb/bean0
- EJBReferenceMetaData ejb1 = jbossWeb.getEjbReferenceByName("ejb/bean0");
- assertEquals("ejb1", ejb1.getId());
- assertEquals("ejb/bean0", ejb1.getEjbRefName());
- assertEquals(EJBReferenceType.Session, ejb1.getEjbRefType());
- assertEquals("org.jboss.test.web.interfaces.StatelessSessionHome", ejb1.getHome());
- assertEquals("org.jboss.test.web.interfaces.StatelessSession", ejb1.getRemote());
- assertEquals("ENCBean0", ejb1.getLink());
- assertEquals(null, ejb1.getJndiName());
- // ejb/bean1
- EJBReferenceMetaData ejb4 = jbossWeb.getEjbReferenceByName("ejb/bean3");
- assertEquals("ejb4", ejb4.getId());
- assertEquals("ejb/bean3", ejb4.getEjbRefName());
- assertEquals(EJBReferenceType.Session, ejb4.getEjbRefType());
- assertEquals("org.jboss.test.web.interfaces.StatelessSessionHome", ejb4.getHome());
- assertEquals("org.jboss.test.web.interfaces.StatelessSession", ejb4.getRemote());
- assertEquals(null, ejb4.getLink());
- assertEquals("jbosstest/ejbs/UnsecuredEJB", ejb4.getJndiName());
- assertEquals("jbosstest/ejbs/UnsecuredEJB", ejb4.getMappedName());
- jbossWeb.getEjbReferenceByName("ejb/RelativeBean");
-
- assertEquals(8, jbossWeb.getEjbLocalReferences().size());
- EJBLocalReferenceMetaData local3 = jbossWeb.getEjbLocalReferenceByName("ejb/local/bean3");
- assertEquals("local3", local3.getId());
- assertEquals("ejb/local/bean3", local3.getEjbRefName());
- assertEquals(EJBReferenceType.Session, local3.getEjbRefType());
- assertEquals("org.jboss.test.web.interfaces.StatelessSessionLocalHome", local3.getLocalHome());
- assertEquals("org.jboss.test.web.interfaces.StatelessSessionLocal", local3.getLocal());
- assertEquals(null, local3.getLink());
- assertEquals("jbosstest/ejbs/local/ENCBean1", local3.getJndiName());
- assertEquals("jbosstest/ejbs/local/ENCBean1", local3.getMappedName());
- // ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget
- EJBLocalReferenceMetaData local8 = jbossWeb.getEjbLocalReferenceByName("ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget");
- assertEquals("local8", local8.getId());
- assertEquals("ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget", local8.getEjbRefName());
- assertEquals(EJBReferenceType.Session, local8.getEjbRefType());
- assertEquals("org.jboss.test.web.interfaces.RunAsTargetLocalHome", local8.getLocalHome());
- assertEquals("org.jboss.test.web.interfaces.RunAsTargetLocal", local8.getLocal());
- assertEquals("UnsecureRunAsServletWithPrincipalNameAndRolesTarget", local8.getLink());
- assertEquals(null, local8.getJndiName());
-
- // mdr/ConsumesLink
- assertEquals(3, jbossWeb.getMessageDestinationReferences().size());
- MessageDestinationReferenceMetaData mref1 = jbossWeb.getMessageDestinationReferenceByName("mdr/ConsumesLink");
- assertEquals("msgref1", mref1.getId());
- assertEquals("mdr/ConsumesLink", mref1.getMessageDestinationRefName());
- assertEquals("javax.jms.Queue", mref1.getType());
- assertEquals(MessageDestinationUsageType.Consumes, mref1.getMessageDestinationUsage());
- assertEquals("TestQueue", mref1.getLink());
- // mdr/ConsumesProducesJNDIName
- MessageDestinationReferenceMetaData mref3 = jbossWeb.getMessageDestinationReferenceByName("mdr/ConsumesProducesJNDIName");
- assertEquals("msgref3", mref3.getId());
- assertEquals("mdr/ConsumesProducesJNDIName", mref3.getMessageDestinationRefName());
- assertEquals("javax.jms.Queue", mref3.getType());
- assertEquals(MessageDestinationUsageType.ConsumesProduces, mref3.getMessageDestinationUsage());
- assertEquals(null, mref3.getLink());
- assertEquals("queue/A", mref3.getJndiName());
- assertEquals("queue/A", mref3.getMappedName());
-
- assertEquals(2, jbossWeb.getMessageDestinations().size());
- MessageDestinationMetaData msgdest1 = jbossWeb.getMessageDestination("TestQueue");
- assertEquals("msgdest1", msgdest1.getId());
- assertEquals("A TestQueue destination", msgdest1.getDescriptionGroup().getDescription());
- assertEquals("TestQueue", msgdest1.getMessageDestinationName());
- assertEquals("queue/testQueue", msgdest1.getJndiName());
- assertEquals("queue/testQueue", msgdest1.getMappedName());
- MessageDestinationMetaData msgdest2 = jbossWeb.getMessageDestination("TestTopic");
- assertEquals("msgdest2", msgdest2.getId());
- assertEquals("A TestTopic destination", msgdest2.getDescriptionGroup().getDescription());
- assertEquals("TestTopic", msgdest2.getMessageDestinationName());
- assertEquals("topic/testTopic", msgdest2.getJndiName());
- assertEquals("topic/testTopic", msgdest2.getMappedName());
-
- // servlets
- assertEquals(30, jbossWeb.getServlets().size());
- JBossServletMetaData servlet1 = jbossWeb.getServletByName("APIServlet");
- assertNotNull(servlet1);
- assertEquals("servlet1", servlet1.getId());
- assertEquals("org.jboss.test.web.servlets.APIServlet", servlet1.getServletClass());
- JBossServletMetaData servlet2 = jbossWeb.getServletByName("ClasspathServlet");
- assertNotNull(servlet2);
- assertEquals("servlet2", servlet2.getId());
- assertEquals("org.jboss.test.web.servlets.ClasspathServlet", servlet2.getServletClass());
- 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());
- List<ParamValueMetaData> s10params = servlet10.getInitParam();
- assertEquals(1, s10params.size());
- ParamValueMetaData s10p0 = s10params.get(0);
- assertEquals("failOnError", s10p0.getParamName());
- assertEquals("false", s10p0.getParamValue());
- // servlet19
- JBossServletMetaData servlet19 = jbossWeb.getServletByName("UnsecureRunAsServletWithPrincipalNameAndRoles");
- assertNotNull(servlet19);
- assertEquals("servlet19", servlet19.getId());
- assertEquals("UnsecureRunAsServletWithPrincipalNameAndRoles", servlet19.getServletName());
- assertEquals("org.jboss.test.web.servlets.UnsecureRunAsServlet", servlet19.getServletClass());
- List<ParamValueMetaData> s19params = servlet19.getInitParam();
- assertEquals(1, s19params.size());
- ParamValueMetaData s19p0 = s19params.get(0);
- assertEquals("ejbName", s19p0.getParamName());
- assertEquals("ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget", s19p0.getParamValue());
- RunAsMetaData s19RunAs = servlet19.getRunAs();
- assertEquals("Assume an InternalUser role to access a private EJB", getDescription(s19RunAs.getDescriptions()));
- assertEquals("InternalUser", s19RunAs.getRoleName());
- assertEquals("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal", servlet19.getRunAsPrincipal());
- RunAsIdentityMetaData s19RunAsID = jbossWeb.getRunAsIdentity("UnsecureRunAsServletWithPrincipalNameAndRoles");
- assertEquals("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal", s19RunAsID.getPrincipalName());
- Set<String> s19RunAsPrincipalRoles = jbossWeb.getSecurityRoles().getSecurityRoleNamesByPrincipal("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal");
- assertEquals(set("ExtraRole1"), s19RunAsPrincipalRoles);
- assertEquals(set("ExtraRole1", "InternalUser"), s19RunAsID.getRunAsRoles());
- assertEquals(true, s19RunAsID.doesUserHaveRole("ExtraRole1"));
- assertEquals(true, s19RunAsID.doesUserHaveRole("InternalUser"));
- // servlet20
- JBossServletMetaData servlet20 = jbossWeb.getServletByName("UnsecureRunAsJsp");
- assertNotNull(servlet20);
- assertEquals("servlet20", servlet20.getId());
- assertEquals("UnsecureRunAsJsp", servlet20.getServletName());
- assertEquals(null, servlet20.getServletClass());
- assertEquals("/runAs.jsp", servlet20.getJspFile());
- RunAsMetaData s20RunAs = servlet20.getRunAs();
- assertEquals("Assume an InternalUser role to access a private EJB", getDescription(s19RunAs.getDescriptions()));
- assertEquals("InternalUser", s20RunAs.getRoleName());
- assertEquals(null, servlet20.getRunAsPrincipal());
- RunAsIdentityMetaData s20RunAsID = jbossWeb.getRunAsIdentity("UnsecureRunAsJsp");
- assertEquals("anonymous", s20RunAsID.getPrincipalName());
- assertEquals(set("InternalUser"), s20RunAsID.getRunAsRoles());
- assertEquals(true, s20RunAsID.doesUserHaveRole("InternalUser"));
- // servlet27
- JBossServletMetaData servlet27 = jbossWeb.getServletByName("UserInRoleServlet");
- assertEquals("servlet27", servlet27.getId());
- assertEquals("UserInRoleServlet", servlet27.getServletName());
- assertEquals("org.jboss.test.web.servlets.UserInRoleServlet", servlet27.getServletClass());
- List<ParamValueMetaData> s27params = servlet27.getInitParam();
- assertEquals(2, s27params.size());
- ParamValueMetaData s27p0 = s27params.get(0);
- assertEquals("expectedUserRoles", s27p0.getParamName());
- assertEquals("AuthorizedUser,ServletUser", s27p0.getParamValue());
- ParamValueMetaData s27p1 = s27params.get(1);
- assertEquals("unexpectedUserRoles", s27p1.getParamName());
- assertEquals("Anonymous", s27p1.getParamValue());
- SecurityRoleRefsMetaData s27RoleRefs = servlet27.getSecurityRoleRefs();
- assertEquals(1, s27RoleRefs.size());
- SecurityRoleRefMetaData s27ServletUser = s27RoleRefs.get("ServletUser");
- assertEquals("ServletUser", s27ServletUser.getRoleName());
- assertEquals("ServletUserRole", s27ServletUser.getRoleLink());
- }
-
- protected JBossWebMetaData unmarshal() throws Exception
- {
- return unmarshal(JBoss4xDTDWebMetaData.class);
- }
-
- protected String getDescription(Descriptions descriptions)
- {
- String desc = null;
- if(descriptions != null)
- desc = descriptions.value()[0].value();
- return desc;
- }
-
- protected Set<String> set(String...strings)
- {
- HashSet<String> set = new HashSet<String>();
- for(String s : strings)
- set.add(s);
- return set;
- }
-}
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java (from rev 94608, projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,366 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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 java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.jboss.annotation.javaee.Descriptions;
+import org.jboss.metadata.common.jboss.LoaderRepositoryMetaData;
+import org.jboss.metadata.javaee.jboss.RunAsIdentityMetaData;
+import org.jboss.metadata.javaee.spec.EJBLocalReferenceMetaData;
+import org.jboss.metadata.javaee.spec.EJBReferenceMetaData;
+import org.jboss.metadata.javaee.spec.EJBReferenceType;
+import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationUsageType;
+import org.jboss.metadata.javaee.spec.ParamValueMetaData;
+import org.jboss.metadata.javaee.spec.ResourceAuthorityType;
+import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
+import org.jboss.metadata.javaee.spec.RunAsMetaData;
+import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
+import org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData;
+import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
+import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
+import org.jboss.metadata.web.jboss.ClassLoadingMetaData;
+import org.jboss.metadata.web.jboss.JBoss4xDTDWebMetaData;
+import org.jboss.metadata.web.jboss.JBossServletMetaData;
+import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.WebMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+
+
+/**
+ * A JBossWebApp24UnitTestCase.
+ *
+ * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
+ * @version $Revision: 1.1 $
+ */
+public class JBossWebApp24UnitTestCase extends AbstractJavaEEEverythingTest
+{
+ public JBossWebApp24UnitTestCase(String name)
+ {
+ super(name);
+ }
+
+ public void testClassLoading() throws Exception
+ {
+ //enableTrace("org.jboss.xb.builder");
+ JBossWebMetaData jbossWeb = unmarshal();
+ ClassLoadingMetaData classLoading = jbossWeb.getClassLoading();
+ assertNotNull(classLoading);
+ assertTrue(classLoading.isJava2ClassLoadingCompliance());
+ LoaderRepositoryMetaData loaderRepository = classLoading.getLoaderRepository();
+ assertNotNull(loaderRepository);
+ assertEquals("jbossws.jbws1581:domain=jaxws-jbws1581.war", loaderRepository.getName());
+ }
+
+ public void testRunAsPrincipal()
+ throws Exception
+ {
+ JBossWebMetaData jbossWeb = unmarshal();
+ assertEquals("4.0", jbossWeb.getVersion());
+ assertEquals("java:/jaas/jbosstest-web", jbossWeb.getSecurityDomain());
+ ResourceReferenceMetaData dsRef = jbossWeb.getResourceReferenceByName("jdbc/DefaultDS");
+ assertEquals("java:/DefaultDS", dsRef.getMappedName());
+ }
+ public void testMergedRunAsPrincipal()
+ throws Exception
+ {
+ WebMetaData webMD = unmarshal("WebApp24_testRunAsPrincipal.xml", WebMetaData.class, null);
+ JBossWebMetaData jbossWebMD = unmarshal("JBossWebApp24_testRunAsPrincipal.xml", JBossWebMetaData.class, null);
+ JBossWebMetaData jbossWeb = new JBossWebMetaData();
+ jbossWeb.merge(jbossWebMD, webMD);
+ jbossWeb.resolveRunAs();
+
+ assertEquals("4.0", jbossWeb.getVersion());
+ assertEquals("java:/jaas/jbosstest-web", jbossWeb.getSecurityDomain());
+ assertEquals(5, jbossWeb.getResourceReferences().size());
+ // jdbc/DefaultDS
+ ResourceReferenceMetaData dsRef = jbossWeb.getResourceReferenceByName("jdbc/DefaultDS");
+ assertEquals("jdbc/DefaultDS", dsRef.getResourceRefName());
+ assertEquals("The default DS", dsRef.getDescriptions().value()[0].value());
+ assertEquals("java:/DefaultDS", dsRef.getMappedName());
+ assertEquals("javax.sql.DataSource", dsRef.getType());
+ assertEquals(ResourceAuthorityType.Container, dsRef.getResAuth());
+ // mail/DefaultMail
+ ResourceReferenceMetaData mailRef = jbossWeb.getResourceReferenceByName("mail/DefaultMail");
+ assertEquals("mail/DefaultMail", mailRef.getResourceRefName());
+ assertEquals("Default Mail", mailRef.getDescriptions().value()[0].value());
+ assertEquals("java:/Mail", mailRef.getMappedName());
+ assertEquals("javax.mail.Session", mailRef.getType());
+ assertEquals(ResourceAuthorityType.Container, mailRef.getResAuth());
+ // url/JBossHome
+ ResourceReferenceMetaData jbossUrlRef = jbossWeb.getResourceReferenceByName("url/JBossHome");
+ assertEquals("url/JBossHome", jbossUrlRef.getResourceRefName());
+ assertEquals("JBoss Home Page", jbossUrlRef.getDescriptions().value()[0].value());
+ assertEquals("http://www.jboss.org", jbossUrlRef.getResUrl());
+ assertEquals("java.net.URL", jbossUrlRef.getType());
+ assertEquals(ResourceAuthorityType.Container, jbossUrlRef.getResAuth());
+ // url/IndirectURL
+ ResourceReferenceMetaData indirectUrlRef = jbossWeb.getResourceReferenceByName("url/IndirectURL");
+ assertEquals("url/IndirectURL", indirectUrlRef.getResourceRefName());
+ assertEquals("SomeWebSite HomePage", indirectUrlRef.getDescriptions().value()[0].value());
+ assertEquals("java:SomeWebSite", indirectUrlRef.getMappedName());
+ assertEquals("java.net.URL", indirectUrlRef.getType());
+ assertEquals(ResourceAuthorityType.Container, indirectUrlRef.getResAuth());
+
+ assertEquals(2, jbossWeb.getResourceEnvironmentReferences().size());
+ ResourceEnvironmentReferenceMetaData resenv1 = jbossWeb.getResourceEnvironmentReferenceByName("res1/aQueue");
+ assertEquals("resenv1", resenv1.getId());
+ assertEquals("res1/aQueue", resenv1.getResourceEnvRefName());
+ assertEquals("A 1st test of the resource-env-ref tag", resenv1.getDescriptions().value()[0].value());
+ assertEquals("javax.jms.Queue", resenv1.getType());
+ assertEquals("queue/mdbtest", resenv1.getJndiName());
+ assertEquals("queue/mdbtest", resenv1.getMappedName());
+ ResourceEnvironmentReferenceMetaData resenv2 = jbossWeb.getResourceEnvironmentReferenceByName("res2/aQueue");
+ assertEquals("resenv2", resenv2.getId());
+ assertEquals("res2/aQueue", resenv2.getResourceEnvRefName());
+ assertEquals("A 2nd test of the resource-env-ref tag", resenv2.getDescriptions().value()[0].value());
+ assertEquals("javax.jms.Queue", resenv2.getType());
+ assertEquals("queue/mdbtest", resenv2.getJndiName());
+ assertEquals("queue/mdbtest", resenv2.getMappedName());
+
+ SecurityRolesMetaData secRoles = jbossWeb.getSecurityRoles();
+ assertEquals(6, secRoles.size());
+ SecurityRoleMetaData role1 = secRoles.get("AuthorizedUser");
+ assertNotNull(role1);
+ assertEquals("security-role1", role1.getId());
+ assertEquals("AuthorizedUser", role1.getRoleName());
+ assertEquals("An AuthorizedUser is one with a valid username and password", getDescription(role1.getDescriptions()));
+ assertEquals(null, role1.getPrincipals());
+ SecurityRoleMetaData role2 = secRoles.get("ServletUserRole");
+ assertEquals("security-role2", role2.getId());
+ assertEquals("ServletUserRole", role2.getRoleName());
+ assertEquals("A role used by the UserInRoleServlet", getDescription(role2.getDescriptions()));
+ assertEquals(null, role2.getPrincipals());
+ SecurityRoleMetaData role3 = secRoles.get("InternalUser");
+ assertEquals("security-role3", role3.getId());
+ assertEquals("InternalUser", role3.getRoleName());
+ assertEquals("InternalUser is private app role", getDescription(role3.getDescriptions()));
+ assertEquals(null, role3.getPrincipals());
+ SecurityRoleMetaData role4 = secRoles.get("ExtraRole1");
+ assertEquals("security-role4", role4.getId());
+ assertEquals("ExtraRole1", role4.getRoleName());
+ assertEquals("ExtraRole1 is an extra role added to a run-as principal", getDescription(role4.getDescriptions()));
+ assertEquals(set("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal"), role4.getPrincipals());
+ SecurityRoleMetaData role5 = secRoles.get("ExtraRole2");
+ assertEquals("security-role5", role5.getId());
+ assertEquals("ExtraRole2", role5.getRoleName());
+ assertEquals("ExtraRole2 is an extra role added to a run-as principal", getDescription(role5.getDescriptions()));
+ assertEquals(set("ExtraRole2Principal1", "ExtraRole2Principal2"), role5.getPrincipals());
+ SecurityRoleMetaData role6 = secRoles.get("NonExistentRole");
+ assertEquals("security-role6", role6.getId());
+ assertEquals("NonExistentRole", role6.getRoleName());
+ assertEquals("Role that does not exist", getDescription(role6.getDescriptions()));
+ assertEquals(null, role6.getPrincipals());
+
+ assertEquals(7, jbossWeb.getEnvironmentEntries().size());
+ EnvironmentEntryMetaData env1 = jbossWeb.getEnvironmentEntryByName("Ints/i0");
+ assertEquals("Ints/i0", env1.getEnvEntryName());
+ assertEquals("java.lang.Integer", env1.getType());
+ assertEquals("0", env1.getValue());
+ EnvironmentEntryMetaData env7 = jbossWeb.getEnvironmentEntryByName("ejb/catalog/CatalogDAOClass");
+ assertEquals("env7", env7.getId());
+ assertEquals("ejb/catalog/CatalogDAOClass", env7.getEnvEntryName());
+ assertEquals("An entry with a class name", getDescription(env7.getDescriptions()));
+ assertEquals("java.lang.String", env7.getType());
+ assertEquals("com.sun.model.dao.CatalogDAOImpl", env7.getValue());
+
+ assertEquals(13, jbossWeb.getEjbReferences().size());
+ // ejb/bean0
+ EJBReferenceMetaData ejb1 = jbossWeb.getEjbReferenceByName("ejb/bean0");
+ assertEquals("ejb1", ejb1.getId());
+ assertEquals("ejb/bean0", ejb1.getEjbRefName());
+ assertEquals(EJBReferenceType.Session, ejb1.getEjbRefType());
+ assertEquals("org.jboss.test.web.interfaces.StatelessSessionHome", ejb1.getHome());
+ assertEquals("org.jboss.test.web.interfaces.StatelessSession", ejb1.getRemote());
+ assertEquals("ENCBean0", ejb1.getLink());
+ assertEquals(null, ejb1.getJndiName());
+ // ejb/bean1
+ EJBReferenceMetaData ejb4 = jbossWeb.getEjbReferenceByName("ejb/bean3");
+ assertEquals("ejb4", ejb4.getId());
+ assertEquals("ejb/bean3", ejb4.getEjbRefName());
+ assertEquals(EJBReferenceType.Session, ejb4.getEjbRefType());
+ assertEquals("org.jboss.test.web.interfaces.StatelessSessionHome", ejb4.getHome());
+ assertEquals("org.jboss.test.web.interfaces.StatelessSession", ejb4.getRemote());
+ assertEquals(null, ejb4.getLink());
+ assertEquals("jbosstest/ejbs/UnsecuredEJB", ejb4.getJndiName());
+ assertEquals("jbosstest/ejbs/UnsecuredEJB", ejb4.getMappedName());
+ jbossWeb.getEjbReferenceByName("ejb/RelativeBean");
+
+ assertEquals(8, jbossWeb.getEjbLocalReferences().size());
+ EJBLocalReferenceMetaData local3 = jbossWeb.getEjbLocalReferenceByName("ejb/local/bean3");
+ assertEquals("local3", local3.getId());
+ assertEquals("ejb/local/bean3", local3.getEjbRefName());
+ assertEquals(EJBReferenceType.Session, local3.getEjbRefType());
+ assertEquals("org.jboss.test.web.interfaces.StatelessSessionLocalHome", local3.getLocalHome());
+ assertEquals("org.jboss.test.web.interfaces.StatelessSessionLocal", local3.getLocal());
+ assertEquals(null, local3.getLink());
+ assertEquals("jbosstest/ejbs/local/ENCBean1", local3.getJndiName());
+ assertEquals("jbosstest/ejbs/local/ENCBean1", local3.getMappedName());
+ // ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget
+ EJBLocalReferenceMetaData local8 = jbossWeb.getEjbLocalReferenceByName("ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget");
+ assertEquals("local8", local8.getId());
+ assertEquals("ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget", local8.getEjbRefName());
+ assertEquals(EJBReferenceType.Session, local8.getEjbRefType());
+ assertEquals("org.jboss.test.web.interfaces.RunAsTargetLocalHome", local8.getLocalHome());
+ assertEquals("org.jboss.test.web.interfaces.RunAsTargetLocal", local8.getLocal());
+ assertEquals("UnsecureRunAsServletWithPrincipalNameAndRolesTarget", local8.getLink());
+ assertEquals(null, local8.getJndiName());
+
+ // mdr/ConsumesLink
+ assertEquals(3, jbossWeb.getMessageDestinationReferences().size());
+ MessageDestinationReferenceMetaData mref1 = jbossWeb.getMessageDestinationReferenceByName("mdr/ConsumesLink");
+ assertEquals("msgref1", mref1.getId());
+ assertEquals("mdr/ConsumesLink", mref1.getMessageDestinationRefName());
+ assertEquals("javax.jms.Queue", mref1.getType());
+ assertEquals(MessageDestinationUsageType.Consumes, mref1.getMessageDestinationUsage());
+ assertEquals("TestQueue", mref1.getLink());
+ // mdr/ConsumesProducesJNDIName
+ MessageDestinationReferenceMetaData mref3 = jbossWeb.getMessageDestinationReferenceByName("mdr/ConsumesProducesJNDIName");
+ assertEquals("msgref3", mref3.getId());
+ assertEquals("mdr/ConsumesProducesJNDIName", mref3.getMessageDestinationRefName());
+ assertEquals("javax.jms.Queue", mref3.getType());
+ assertEquals(MessageDestinationUsageType.ConsumesProduces, mref3.getMessageDestinationUsage());
+ assertEquals(null, mref3.getLink());
+ assertEquals("queue/A", mref3.getJndiName());
+ assertEquals("queue/A", mref3.getMappedName());
+
+ assertEquals(2, jbossWeb.getMessageDestinations().size());
+ MessageDestinationMetaData msgdest1 = jbossWeb.getMessageDestination("TestQueue");
+ assertEquals("msgdest1", msgdest1.getId());
+ assertEquals("A TestQueue destination", msgdest1.getDescriptionGroup().getDescription());
+ assertEquals("TestQueue", msgdest1.getMessageDestinationName());
+ assertEquals("queue/testQueue", msgdest1.getJndiName());
+ assertEquals("queue/testQueue", msgdest1.getMappedName());
+ MessageDestinationMetaData msgdest2 = jbossWeb.getMessageDestination("TestTopic");
+ assertEquals("msgdest2", msgdest2.getId());
+ assertEquals("A TestTopic destination", msgdest2.getDescriptionGroup().getDescription());
+ assertEquals("TestTopic", msgdest2.getMessageDestinationName());
+ assertEquals("topic/testTopic", msgdest2.getJndiName());
+ assertEquals("topic/testTopic", msgdest2.getMappedName());
+
+ // servlets
+ assertEquals(30, jbossWeb.getServlets().size());
+ JBossServletMetaData servlet1 = jbossWeb.getServletByName("APIServlet");
+ assertNotNull(servlet1);
+ assertEquals("servlet1", servlet1.getId());
+ assertEquals("org.jboss.test.web.servlets.APIServlet", servlet1.getServletClass());
+ JBossServletMetaData servlet2 = jbossWeb.getServletByName("ClasspathServlet");
+ assertNotNull(servlet2);
+ assertEquals("servlet2", servlet2.getId());
+ assertEquals("org.jboss.test.web.servlets.ClasspathServlet", servlet2.getServletClass());
+ 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());
+ List<ParamValueMetaData> s10params = servlet10.getInitParam();
+ assertEquals(1, s10params.size());
+ ParamValueMetaData s10p0 = s10params.get(0);
+ assertEquals("failOnError", s10p0.getParamName());
+ assertEquals("false", s10p0.getParamValue());
+ // servlet19
+ JBossServletMetaData servlet19 = jbossWeb.getServletByName("UnsecureRunAsServletWithPrincipalNameAndRoles");
+ assertNotNull(servlet19);
+ assertEquals("servlet19", servlet19.getId());
+ assertEquals("UnsecureRunAsServletWithPrincipalNameAndRoles", servlet19.getServletName());
+ assertEquals("org.jboss.test.web.servlets.UnsecureRunAsServlet", servlet19.getServletClass());
+ List<ParamValueMetaData> s19params = servlet19.getInitParam();
+ assertEquals(1, s19params.size());
+ ParamValueMetaData s19p0 = s19params.get(0);
+ assertEquals("ejbName", s19p0.getParamName());
+ assertEquals("ejb/UnsecureRunAsServletWithPrincipalNameAndRolesTarget", s19p0.getParamValue());
+ RunAsMetaData s19RunAs = servlet19.getRunAs();
+ assertEquals("Assume an InternalUser role to access a private EJB", getDescription(s19RunAs.getDescriptions()));
+ assertEquals("InternalUser", s19RunAs.getRoleName());
+ assertEquals("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal", servlet19.getRunAsPrincipal());
+ RunAsIdentityMetaData s19RunAsID = jbossWeb.getRunAsIdentity("UnsecureRunAsServletWithPrincipalNameAndRoles");
+ assertEquals("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal", s19RunAsID.getPrincipalName());
+ Set<String> s19RunAsPrincipalRoles = jbossWeb.getSecurityRoles().getSecurityRoleNamesByPrincipal("UnsecureRunAsServletWithPrincipalNameAndRolesPrincipal");
+ assertEquals(set("ExtraRole1"), s19RunAsPrincipalRoles);
+ assertEquals(set("ExtraRole1", "InternalUser"), s19RunAsID.getRunAsRoles());
+ assertEquals(true, s19RunAsID.doesUserHaveRole("ExtraRole1"));
+ assertEquals(true, s19RunAsID.doesUserHaveRole("InternalUser"));
+ // servlet20
+ JBossServletMetaData servlet20 = jbossWeb.getServletByName("UnsecureRunAsJsp");
+ assertNotNull(servlet20);
+ assertEquals("servlet20", servlet20.getId());
+ assertEquals("UnsecureRunAsJsp", servlet20.getServletName());
+ assertEquals(null, servlet20.getServletClass());
+ assertEquals("/runAs.jsp", servlet20.getJspFile());
+ RunAsMetaData s20RunAs = servlet20.getRunAs();
+ assertEquals("Assume an InternalUser role to access a private EJB", getDescription(s19RunAs.getDescriptions()));
+ assertEquals("InternalUser", s20RunAs.getRoleName());
+ assertEquals(null, servlet20.getRunAsPrincipal());
+ RunAsIdentityMetaData s20RunAsID = jbossWeb.getRunAsIdentity("UnsecureRunAsJsp");
+ assertEquals("anonymous", s20RunAsID.getPrincipalName());
+ assertEquals(set("InternalUser"), s20RunAsID.getRunAsRoles());
+ assertEquals(true, s20RunAsID.doesUserHaveRole("InternalUser"));
+ // servlet27
+ JBossServletMetaData servlet27 = jbossWeb.getServletByName("UserInRoleServlet");
+ assertEquals("servlet27", servlet27.getId());
+ assertEquals("UserInRoleServlet", servlet27.getServletName());
+ assertEquals("org.jboss.test.web.servlets.UserInRoleServlet", servlet27.getServletClass());
+ List<ParamValueMetaData> s27params = servlet27.getInitParam();
+ assertEquals(2, s27params.size());
+ ParamValueMetaData s27p0 = s27params.get(0);
+ assertEquals("expectedUserRoles", s27p0.getParamName());
+ assertEquals("AuthorizedUser,ServletUser", s27p0.getParamValue());
+ ParamValueMetaData s27p1 = s27params.get(1);
+ assertEquals("unexpectedUserRoles", s27p1.getParamName());
+ assertEquals("Anonymous", s27p1.getParamValue());
+ SecurityRoleRefsMetaData s27RoleRefs = servlet27.getSecurityRoleRefs();
+ assertEquals(1, s27RoleRefs.size());
+ SecurityRoleRefMetaData s27ServletUser = s27RoleRefs.get("ServletUser");
+ assertEquals("ServletUser", s27ServletUser.getRoleName());
+ assertEquals("ServletUserRole", s27ServletUser.getRoleLink());
+ }
+
+ protected JBossWebMetaData unmarshal() throws Exception
+ {
+ return unmarshal(JBoss4xDTDWebMetaData.class);
+ }
+
+ protected String getDescription(Descriptions descriptions)
+ {
+ String desc = null;
+ if(descriptions != null)
+ desc = descriptions.value()[0].value();
+ return desc;
+ }
+
+ protected Set<String> set(String...strings)
+ {
+ HashSet<String> set = new HashSet<String>();
+ for(String s : strings)
+ set.add(s);
+ return set;
+ }
+}
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml
===================================================================
--- projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml 2009-09-18 13:00:21 UTC (rev 93709)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,12 +0,0 @@
- <!DOCTYPE jboss-web PUBLIC
- "-//JBoss//DTD Web Application 5.0//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd">
-
-<jboss-web>
- <security-domain>java:/jaas/test</security-domain>
- <context-root>something</context-root>
- <servlet>
- <servlet-name>MyServlet</servlet-name>
- <run-as-principal>javajoe</run-as-principal>
- </servlet>
-</jboss-web>
\ No newline at end of file
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml (from rev 94608, projects/metadata/web/trunk/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/org/jboss/test/metadata/annotation/web/JBossWeb_testAnnotationXML.xml 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,16 @@
+<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-web_6_0.xsd"
+ version="6.0">
+ <security-domain>java:/jaas/test</security-domain>
+ <context-root>something</context-root>
+ <annotation>
+ <class-name>org.jboss.test.metadata.annotation.web.MyServlet</class-name>
+ <run-as>
+ <role-name>javajoe</role-name>
+ </run-as>
+ <multipart-config>
+ <location>javajoe</location>
+ </multipart-config>
+ </annotation>
+</jboss-web>
\ No newline at end of file
Deleted: projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties
===================================================================
--- projects/metadata/web/trunk/src/test/resources/schema2class.properties 2009-09-18 13:00:21 UTC (rev 93709)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties 2009-10-22 14:55:28 UTC (rev 95416)
@@ -1,15 +0,0 @@
-# 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
-web-app_3_0.xsd org.jboss.metadata.web.spec.Web30MetaData
-web-fragment_3_0.xsd org.jboss.metadata.web.spec.WebFragment30MetaData
-web-jsptaglibrary_1_1.dtd org.jboss.metadata.web.spec.Tld11MetaData
-web-jsptaglibrary_1_2.dtd org.jboss.metadata.web.spec.Tld12MetaData
-web-jsptaglibrary_2_0.xsd org.jboss.metadata.web.spec.Tld20MetaData
-web-jsptaglibrary_2_1.xsd org.jboss.metadata.web.spec.Tld21MetaData
-jboss-web org.jboss.metadata.web.jboss.JBoss50DTDWebMetaData
-jboss-web_4_0.dtd org.jboss.metadata.web.jboss.JBoss4xDTDWebMetaData
-jboss-web_4_2.dtd org.jboss.metadata.web.jboss.JBoss4xDTDWebMetaData
-jboss-web_5_0.dtd org.jboss.metadata.web.jboss.JBoss50DTDWebMetaData
Copied: projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties (from rev 94608, projects/metadata/web/trunk/src/test/resources/schema2class.properties)
===================================================================
--- projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties (rev 0)
+++ projects/metadata/web/tags/2.0.0.Alpha6/src/test/resources/schema2class.properties 2009-10-22 14:55:28 UTC (rev 95416)
@@ -0,0 +1,16 @@
+# 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
+web-app_3_0.xsd org.jboss.metadata.web.spec.Web30MetaData
+web-fragment_3_0.xsd org.jboss.metadata.web.spec.WebFragment30MetaData
+web-jsptaglibrary_1_1.dtd org.jboss.metadata.web.spec.Tld11MetaData
+web-jsptaglibrary_1_2.dtd org.jboss.metadata.web.spec.Tld12MetaData
+web-jsptaglibrary_2_0.xsd org.jboss.metadata.web.spec.Tld20MetaData
+web-jsptaglibrary_2_1.xsd org.jboss.metadata.web.spec.Tld21MetaData
+jboss-web org.jboss.metadata.web.jboss.JBoss50DTDWebMetaData
+jboss-web_4_0.dtd org.jboss.metadata.web.jboss.JBoss4xDTDWebMetaData
+jboss-web_4_2.dtd org.jboss.metadata.web.jboss.JBoss4xDTDWebMetaData
+jboss-web_5_0.dtd org.jboss.metadata.web.jboss.JBoss50DTDWebMetaData
+jboss-web_6_0.xsd org.jboss.metadata.web.jboss.JBoss60WebMetaData
More information about the jboss-cvs-commits
mailing list