JBossWS SVN: r4602 - in projects/jaxbintros: src/main/etc and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-21 04:34:41 -0400 (Fri, 21 Sep 2007)
New Revision: 4602
Modified:
projects/jaxbintros/ant-import/build-thirdparty.xml
projects/jaxbintros/src/main/etc/component-info.xml
Log:
Remove dependency on jbossws-native
Modified: projects/jaxbintros/ant-import/build-thirdparty.xml
===================================================================
--- projects/jaxbintros/ant-import/build-thirdparty.xml 2007-09-21 08:28:29 UTC (rev 4601)
+++ projects/jaxbintros/ant-import/build-thirdparty.xml 2007-09-21 08:34:41 UTC (rev 4602)
@@ -36,8 +36,7 @@
<target name="thirdparty-get" depends="thirdparty-init" if="force.thirdparty" description="Gets the thirdparty libraries">
<mkdir dir="${thirdparty.dir}"/>
- <get src="${jboss.repository}/jboss/jbossws-spi/${jbossws-spi}/lib/jbossws-spi.jar" dest="${thirdparty.dir}/jbossws-spi.jar" usetimestamp="true" verbose="true"/>
- <get src="${jboss.repository}/jboss/jbossws-native42/${jbossws-native}/lib/jbossws-native42.sar" dest="${thirdparty.dir}/jbossws-native42.sar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/jboss/jbossws-spi/${jbossws-spi}/lib/jbossws-spi.jar" dest="${thirdparty.dir}/jbossws-spi.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/apache-log4j/${apache-log4j}/lib/log4j.jar" dest="${thirdparty.dir}/log4j.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/apache-logging/${apache-logging}/lib/commons-logging.jar" dest="${thirdparty.dir}/commons-logging.jar" usetimestamp="true" verbose="true"/>
@@ -54,8 +53,7 @@
<echo>${thirdparty.dir}</echo>
<!-- The compile classpath for jaxbintro -->
- <path id="jaxbintro.integration.classpath">
- <pathelement location="${thirdparty.dir}/jbossws-core.jar"/>
+ <path id="jaxbintro.integration.classpath">
<pathelement location="${thirdparty.dir}/jbossws-spi.jar"/>
<pathelement location="${thirdparty.dir}/jaxb-api.jar"/>
<pathelement location="${thirdparty.dir}/jaxb-impl.jar"/>
Modified: projects/jaxbintros/src/main/etc/component-info.xml
===================================================================
--- projects/jaxbintros/src/main/etc/component-info.xml 2007-09-21 08:28:29 UTC (rev 4601)
+++ projects/jaxbintros/src/main/etc/component-info.xml 2007-09-21 08:34:41 UTC (rev 4602)
@@ -1,27 +1,24 @@
-<project name="jboss/jbossws-jboss42">
-
- <component id="jboss/jbossws-jboss42"
- description="JBossWS container integration layer"
- version="@repository.id@"
- licenseType="lgpl">
-
- <artifact id="jbossws-jboss42.jar"/>
- <artifact id="jbossws-jboss42-src.zip"/>
-
- <import componentref="jboss/jbossws-common">
- <compatible version="@jbossws-common@"/>
+<project name="jboss/jaxbintros">
+
+ <component id="jboss/jaxbintros" description="JAXB introduction" version="@repository.id@" licenseType="lgpl">
+
+ <artifact id="jboss-jaxb-intros.jar"/>
+
+ <import componentref="jboss/jbossws-native42">
+ <compatible version="@jbossws-native@"/>
</import>
- <import componentref="jboss/jbossws-framework">
- <compatible version="@jbossws-framework@"/>
- </import>
+
<import componentref="jboss/jbossws-spi">
<compatible version="@jbossws-spi@"/>
</import>
-
+
+ <import componentref="sun-jaxb">
+ <compatible version="@sun-jaxb@"/>
+ </import>
+
<export>
- <include input="jbossws-jboss42.jar"/>
</export>
-
+
</component>
-
-</project>
+
+</project>
\ No newline at end of file
17 years, 4 months
JBossWS SVN: r4601 - in projects: jaxbintros and 13 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-21 04:28:29 -0400 (Fri, 21 Sep 2007)
New Revision: 4601
Added:
projects/jaxbintros/
projects/jaxbintros/ant-import/
projects/jaxbintros/ant-import/build-release.xml
projects/jaxbintros/ant-import/build-setup.xml
projects/jaxbintros/ant-import/build-thirdparty.xml
projects/jaxbintros/ant.properties
projects/jaxbintros/ant.properties.example
projects/jaxbintros/build.xml
projects/jaxbintros/src/
projects/jaxbintros/src/main/
projects/jaxbintros/src/main/etc/
projects/jaxbintros/src/main/etc/component-info.xml
projects/jaxbintros/src/main/etc/default.mf
projects/jaxbintros/src/main/java/
projects/jaxbintros/src/main/java/org/
projects/jaxbintros/src/main/java/org/jboss/
projects/jaxbintros/src/main/java/org/jboss/jaxb/
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/ConfigurationException.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsAnnotationReader.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsConfigParser.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassIntroConfig.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassMemberIntroConfig.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/FieldIntroConfig.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/JaxbIntros.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/MethodIntroConfig.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ObjectFactory.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAccessorTypeIntro.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAttributeIntro.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlElementIntro.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlRootElementIntro.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlTypeIntro.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/package-info.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/ClassValue.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAccessorTypeHandler.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAttributeHandler.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlElementHandler.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlRootElementHandler.java
projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlTypeHandler.java
projects/jaxbintros/src/main/resources/
projects/jaxbintros/src/main/resources/jboss-jaxb-intro.jar/
projects/jaxbintros/src/main/resources/jboss-jaxb-intro.jar/META-INF/
projects/jaxbintros/version.properties
projects/jaxbintros/version.properties.md5
Log:
first cut
Added: projects/jaxbintros/ant-import/build-release.xml
===================================================================
--- projects/jaxbintros/ant-import/build-release.xml (rev 0)
+++ projects/jaxbintros/ant-import/build-release.xml 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ====================================================================== -->
+<!-- -->
+<!-- JBoss, the OpenSource J2EE webOS -->
+<!-- -->
+<!-- Distributable under LGPL license. -->
+<!-- See terms of license at http://www.gnu.org. -->
+<!-- -->
+<!-- ====================================================================== -->
+
+<!-- $Id$ -->
+
+<project>
+
+ <!-- Release to jboss.local.repository -->
+ <target name="release" depends="jars"
+ description="Release to jboss.local.repository">
+
+ <!-- jboss/jbossws-jboss42 -->
+ <property name="jboss.repository.dir" value="${jboss.local.repository}/jboss"/>
+ <mkdir dir="${jboss.repository.dir}/jbossws-jboss42/${repository.id}/lib"/>
+ <copy todir="${jboss.repository.dir}/jbossws-jboss42/${repository.id}/lib" overwrite="true">
+ <fileset dir="${jbws42.dir}/output/lib">
+ <include name="jbossws-jboss42.jar"/>
+ <include name="jbossws-jboss42-src.zip"/>
+ <include name="jbossws-jboss42-resources.zip"/>
+ </fileset>
+ </copy>
+ <copy tofile="${jboss.repository.dir}/jbossws-jboss42/${repository.id}/component-info.xml" file="${jbws42.etc.dir}/component-info.xml" filtering="true" overwrite="true">
+ <filterset>
+ <filtersfile file="${jbws42.dir}/version.properties"/>
+ </filterset>
+ </copy>
+
+ </target>
+
+</project>
Property changes on: projects/jaxbintros/ant-import/build-release.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/ant-import/build-setup.xml
===================================================================
--- projects/jaxbintros/ant-import/build-setup.xml (rev 0)
+++ projects/jaxbintros/ant-import/build-setup.xml 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ====================================================================== -->
+<!-- -->
+<!-- JBoss, the OpenSource J2EE webOS -->
+<!-- -->
+<!-- Distributable under LGPL license. -->
+<!-- See terms of license at http://www.gnu.org. -->
+<!-- -->
+<!-- ====================================================================== -->
+
+<!-- $Id$ -->
+
+<project>
+
+ <!-- ================================================================== -->
+ <!-- Setup -->
+ <!-- ================================================================== -->
+
+ <!-- JDK Detection --><property name="jaxbintro.dir" value="${basedir}"/>
+ <available classname="java.lang.Enum" property="HAVE_JDK_1.5"/>
+ <available classname="java.io.Console" property="HAVE_JDK_1.6"/>
+
+ <fail message="JDK1.5 or above is required" unless="HAVE_JDK_1.5"/>
+
+ <!-- ================================================================== -->
+ <!-- Initialization -->
+ <!-- ================================================================== -->
+
+ <target name="prepare">
+ <tstamp>
+ <format property="build.id" pattern="yyyyMMddHHmm"/>
+ </tstamp>
+ </target>
+
+</project>
\ No newline at end of file
Property changes on: projects/jaxbintros/ant-import/build-setup.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/ant-import/build-thirdparty.xml
===================================================================
--- projects/jaxbintros/ant-import/build-thirdparty.xml (rev 0)
+++ projects/jaxbintros/ant-import/build-thirdparty.xml 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ====================================================================== -->
+<!-- -->
+<!-- JBoss, the OpenSource J2EE webOS -->
+<!-- -->
+<!-- Distributable under LGPL license. -->
+<!-- See terms of license at http://www.gnu.org. -->
+<!-- -->
+<!-- ====================================================================== -->
+
+<!-- $Id$ -->
+
+<project>
+
+ <!-- ========= -->
+ <!-- Libraries -->
+ <!-- ========= -->
+
+ <target name="thirdparty-init" depends="prepare">
+
+ <property name="thirdparty.dir" value="${jaxbintro.dir}/thirdparty"/>
+ <checksum file="${jaxbintro.dir}/version.properties" fileext=".md5" verifyproperty="checksum.ok"/>
+ <condition property="force.thirdparty">
+ <or>
+ <not>
+ <available file="${thirdparty.dir}" type="dir"/>
+ </not>
+ <isfalse value="${checksum.ok}"/>
+ <isset property="force.thirdparty.get"/>
+ </or>
+ </condition>
+ <echo message="checksum.ok = ${checksum.ok}"/>
+ </target>
+
+ <target name="thirdparty-get" depends="thirdparty-init" if="force.thirdparty" description="Gets the thirdparty libraries">
+
+ <mkdir dir="${thirdparty.dir}"/>
+ <get src="${jboss.repository}/jboss/jbossws-spi/${jbossws-spi}/lib/jbossws-spi.jar" dest="${thirdparty.dir}/jbossws-spi.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/jboss/jbossws-native42/${jbossws-native}/lib/jbossws-native42.sar" dest="${thirdparty.dir}/jbossws-native42.sar" usetimestamp="true" verbose="true"/>
+
+ <get src="${jboss.repository}/apache-log4j/${apache-log4j}/lib/log4j.jar" dest="${thirdparty.dir}/log4j.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/apache-logging/${apache-logging}/lib/commons-logging.jar" dest="${thirdparty.dir}/commons-logging.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/junit/${junit}/lib/junit.jar" dest="${thirdparty.dir}/junit.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/sun-jaf/${sun-jaf}/lib/activation.jar" dest="${thirdparty.dir}/activation.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/sun-jaxb/${sun-jaxb}/lib/jaxb-api.jar" dest="${thirdparty.dir}/jaxb-api.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/sun-jaxb/${sun-jaxb}/lib/jaxb-impl.jar" dest="${thirdparty.dir}/jaxb-impl.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/stax-api/${stax-api}/lib/stax-api.jar" dest="${thirdparty.dir}/stax-api.jar" usetimestamp="true" verbose="true"/>
+ <checksum file="${jaxbintro.dir}/version.properties" fileext=".md5"/>
+ </target>
+
+ <target name="thirdparty-classpath" depends="thirdparty-get">
+
+ <echo>${thirdparty.dir}</echo>
+
+ <!-- The compile classpath for jaxbintro -->
+ <path id="jaxbintro.integration.classpath">
+ <pathelement location="${thirdparty.dir}/jbossws-core.jar"/>
+ <pathelement location="${thirdparty.dir}/jbossws-spi.jar"/>
+ <pathelement location="${thirdparty.dir}/jaxb-api.jar"/>
+ <pathelement location="${thirdparty.dir}/jaxb-impl.jar"/>
+ <pathelement location="${thirdparty.dir}/activation.jar"/>
+ <pathelement location="${thirdparty.dir}/commons-logging.jar"/>
+ <pathelement location="${thirdparty.dir}/log4j.jar"/>
+ <pathelement location="${thirdparty.dir}/stax-api.jar"/>
+ </path>
+
+ </target>
+
+</project>
Property changes on: projects/jaxbintros/ant-import/build-thirdparty.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/ant.properties
===================================================================
--- projects/jaxbintros/ant.properties (rev 0)
+++ projects/jaxbintros/ant.properties 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,20 @@
+#
+# A sample ant properties file
+#
+# $Id: ant.properties.example 3995 2007-07-26 08:52:45Z thomas.diesler(a)jboss.com $
+
+# JBoss Repository
+#jboss.repository=file:/home/tdiesler/svn/jboss.local.repository
+jboss.repository=http://repository.jboss.org
+
+# JBossWS Release
+jboss.local.repository=/home/tdiesler/svn/jboss.local.repository
+
+# Force thirdparty HTTP get
+#force.thirdparty.get=true
+
+# Java Compiler options
+javac.debug=yes
+javac.deprecation=no
+javac.fail.onerror=yes
+javac.verbose=no
Added: projects/jaxbintros/ant.properties.example
===================================================================
--- projects/jaxbintros/ant.properties.example (rev 0)
+++ projects/jaxbintros/ant.properties.example 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,26 @@
+#
+# A sample ant properties file
+#
+# $Id: ant.properties.example 3995 2007-07-26 08:52:45Z thomas.diesler(a)jboss.com $
+
+# JBoss Home
+#jboss42.home=/home/tdiesler/svn/jbossas/tags/JBoss_4_2_1_GA/build/output/jboss-4.2.1.GA
+
+# The JBoss settings
+jboss.server.instance=default
+
+# JBoss Repository
+#jboss.repository=file:/home/tdiesler/svn/jboss.local.repository
+jboss.repository=http://repository.jboss.org
+
+# JBossWS Release
+jboss.local.repository=/home/tdiesler/svn/jboss.local.repository
+
+# Force thirdparty HTTP get
+#force.thirdparty.get=true
+
+# Java Compiler options
+javac.debug=yes
+javac.deprecation=no
+javac.fail.onerror=yes
+javac.verbose=no
Added: projects/jaxbintros/build.xml
===================================================================
--- projects/jaxbintros/build.xml (rev 0)
+++ projects/jaxbintros/build.xml 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ====================================================================== -->
+<!-- -->
+<!-- JBoss, the OpenSource J2EE webOS -->
+<!-- -->
+<!-- Distributable under LGPL license. -->
+<!-- See terms of license at http://www.gnu.org. -->
+<!-- -->
+<!-- ====================================================================== -->
+
+<!-- $Id$ -->
+
+<project default="main" basedir="." name="JBossWS-JBoss42">
+
+ <import file="${basedir}/ant-import/build-setup.xml"/>
+ <import file="${basedir}/ant-import/build-release.xml"/>
+ <import file="${basedir}/ant-import/build-thirdparty.xml"/>
+
+ <property file="${basedir}/ant.properties"/>
+ <property file="${basedir}/version.properties"/>
+
+
+ <!-- ================================================================== -->
+ <!-- Setup -->
+ <!-- ================================================================== -->
+
+ <property name="jaxbintro.dir" value="${basedir}"/>
+ <property name="jaxbintro.src.dir" value="${jaxbintro.dir}/src/main"/>
+ <property name="jaxbintro.etc.dir" value="${jaxbintro.src.dir}/etc"/>
+ <property name="jaxbintro.java.dir" value="${jaxbintro.src.dir}/java"/>
+ <property name="jaxbintro.resources.dir" value="${jaxbintro.src.dir}/resources"/>
+ <property name="jaxbintro.output.dir" value="${jaxbintro.dir}/output"/>
+ <property name="jaxbintro.output.apidocs.dir" value="${jaxbintro.output.dir}/apidocs"/>
+ <property name="jaxbintro.output.classes.dir" value="${jaxbintro.output.dir}/classes"/>
+ <property name="jaxbintro.output.etc.dir" value="${jaxbintro.output.dir}/etc"/>
+ <property name="jaxbintro.output.lib.dir" value="${jaxbintro.output.dir}/lib"/>
+
+ <!-- ================================================================== -->
+ <!-- Initialization -->
+ <!-- ================================================================== -->
+
+ <target name="init" depends="prepare,thirdparty-get">
+
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Compile -->
+ <!-- ================================================================== -->
+
+ <!--
+ | Compile everything.
+ |
+ | This target should depend on other compile-* targets for each
+ | different type of compile that needs to be performed, short of
+ | documentation compiles.
+ -->
+
+ <target name="compile" depends="init,compile-classes,compile-etc" description="Compile all source files."/>
+
+ <!-- Compile integration java sources -->
+ <target name="compile-classes" depends="init, thirdparty-classpath">
+ <mkdir dir="${jaxbintro.output.classes.dir}"/>
+
+ <javac srcdir="${jaxbintro.java.dir}" sourcepath="" destdir="${jaxbintro.output.classes.dir}"
+ encoding="utf-8" debug="${javac.debug}" verbose="${javac.verbose}"
+ deprecation="${javac.deprecation}" failonerror="${javac.fail.onerror}">
+ <include name="org/jboss/jaxb/**"/>
+ <classpath refid="jaxbintro.integration.classpath"/>
+ </javac>
+ </target>
+
+ <!-- Compile etc files (manifests and such) -->
+ <target name="compile-etc" depends="init">
+ <mkdir dir="${jaxbintro.output.etc.dir}"/>
+ <copy todir="${jaxbintro.output.etc.dir}" filtering="yes" overwrite="true">
+ <fileset dir="${jaxbintro.etc.dir}">
+ <include name="default.mf"/>
+ </fileset>
+ <filterset>
+ <filter token="java.vm.version" value="${java.vm.version}"/>
+ <filter token="java.vm.vendor" value="${java.vm.vendor}"/>
+ <filter token="build.id" value="${build.id}"/>
+ <filter token="implementation.version" value="jbossws-${version.id}"/>
+ <filtersfile file="${jaxbintro.dir}/version.properties"/>
+ </filterset>
+ </copy>
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Archives -->
+ <!-- ================================================================== -->
+
+ <!--
+ | Build all jar files.
+ -->
+ <target name="jars" depends="compile,module-jars" description="Builds all jar files.">
+ </target>
+
+ <!--
+ | Build all jar files.
+ -->
+ <target name="module-jars" depends="init">
+
+ <!-- Build jbossws-jboss42.jar -->
+ <mkdir dir="${jaxbintro.output.lib.dir}"/>
+ <jar jarfile="${jaxbintro.output.lib.dir}/jboss-jaxb-intro.jar" manifest="${jaxbintro.output.etc.dir}/default.mf">
+ <fileset dir="${jaxbintro.output.classes.dir}">
+ <include name="org/jboss/jaxb/**"/>
+ </fileset>
+ <metainf dir="${jaxbintro.resources.dir}/jboss-jaxb-intro.jar/META-INF"/>
+ </jar>
+
+ <!-- Build jbossws-jboss42-src.zip -->
+ <zip zipfile="${jaxbintro.output.lib.dir}/jboss-jaxb-intro-src.zip" >
+ <fileset dir="${jaxbintro.java.dir}"/>
+ </zip>
+
+ </target>
+
+ <!-- Generate the JavaDoc -->
+ <target name="javadoc" depends="init" description="Generate the Javadoc">
+
+ <mkdir dir="${jaxbintro.output.apidocs.dir}"/>
+ <javadoc destdir="${jaxbintro.output.apidocs.dir}" author="true" version="true" use="true" windowtitle="JBossWS API">
+ <classpath>
+ <path refid="jaxbintro.integration.classpath"/>
+ </classpath>
+ <packageset dir="${jaxbintro.java.dir}" defaultexcludes="yes">
+ <include name="org/jboss/jaxb/**"/>
+ </packageset>
+ <doctitle><![CDATA[<h1>JBoss Web Service Framework - JAXB intros</h1>]]></doctitle>
+ <tag name="todo" scope="all" description="To do:"/>
+ </javadoc>
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Miscellaneous -->
+ <!-- ================================================================== -->
+
+ <target name="clean" depends="prepare" description="Cleans up most generated files.">
+ <delete dir="${jaxbintro.output.dir}"/>
+ </target>
+
+ <target name="clobber" depends="clean" description="Cleans up all generated files.">
+ <delete dir="${jaxbintro.dir}/thirdparty"/>
+ </target>
+
+ <target name="main" description="Executes the default target (most)." depends="most"/>
+
+ <target name="most" description="Builds almost everything." depends="jars"/>
+
+ <target name="all" description="Create a distribution zip file" depends="main">
+ </target>
+
+</project>
Property changes on: projects/jaxbintros/build.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/etc/component-info.xml
===================================================================
--- projects/jaxbintros/src/main/etc/component-info.xml (rev 0)
+++ projects/jaxbintros/src/main/etc/component-info.xml 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,27 @@
+<project name="jboss/jbossws-jboss42">
+
+ <component id="jboss/jbossws-jboss42"
+ description="JBossWS container integration layer"
+ version="@repository.id@"
+ licenseType="lgpl">
+
+ <artifact id="jbossws-jboss42.jar"/>
+ <artifact id="jbossws-jboss42-src.zip"/>
+
+ <import componentref="jboss/jbossws-common">
+ <compatible version="@jbossws-common@"/>
+ </import>
+ <import componentref="jboss/jbossws-framework">
+ <compatible version="@jbossws-framework@"/>
+ </import>
+ <import componentref="jboss/jbossws-spi">
+ <compatible version="@jbossws-spi@"/>
+ </import>
+
+ <export>
+ <include input="jbossws-jboss42.jar"/>
+ </export>
+
+ </component>
+
+</project>
Property changes on: projects/jaxbintros/src/main/etc/component-info.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/etc/default.mf
===================================================================
--- projects/jaxbintros/src/main/etc/default.mf (rev 0)
+++ projects/jaxbintros/src/main/etc/default.mf 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,10 @@
+Manifest-Version: 1.2
+Created-By: @java.vm.version@ (@java.vm.vendor@)
+Specification-Title: @specification.title@
+Specification-Version: @specification.version@
+Specification-Vendor: @specification.vendor@
+Implementation-Title: @implementation.title@
+Implementation-URL: @implementation.url@
+Implementation-Version: @implementation.version@ (build=(a)build.id@)
+Implementation-Vendor: @implementation.vendor@
+Implementation-Vendor-Id: @implementation.vendor.id@
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/ConfigurationException.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/ConfigurationException.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/ConfigurationException.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,36 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros;
+
+import javax.xml.bind.JAXBException;
+
+/**
+ * JAXB Introductions configuration error.
+ *
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public class ConfigurationException extends RuntimeException {
+ public ConfigurationException(String message) {
+ super(message);
+ }
+ public ConfigurationException(String message, Throwable cause) {
+ super(message, cause);
+ }
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/ConfigurationException.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsAnnotationReader.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsAnnotationReader.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsAnnotationReader.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,370 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros;
+
+import com.sun.xml.bind.v2.model.annotation.*;
+
+import java.lang.reflect.*;
+import java.lang.annotation.Annotation;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.regex.Pattern;
+
+import org.jboss.jaxb.intros.configmodel.*;
+import org.jboss.jaxb.intros.handlers.*;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+
+/**
+ * JAXB Annotation Reader for the JAXB RI context interface.
+ * <p/>
+ * Used for introduction of annotations on bean classes which are not annotated
+ * for JAXB. Allows us to use JAXB (and hence JBossWS 2.x+) with unannotated
+ * interfaces.
+ *
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public class IntroductionsAnnotationReader extends AbstractInlineAnnotationReaderImpl<Type,Class,Field,Method> implements RuntimeAnnotationReader {
+
+ private static final Log logger = LogFactory.getLog(IntroductionsAnnotationReader.class);
+ private RuntimeAnnotationReader baseReader = new RuntimeInlineAnnotationReader();
+ private JaxbIntros introductions;
+
+ public IntroductionsAnnotationReader(JaxbIntros introductions) {
+ if(introductions == null) {
+ throw new IllegalArgumentException("arg 'introductions' is null.");
+ }
+ this.introductions = introductions;
+ }
+
+ public <A extends Annotation> A getFieldAnnotation(Class<A> annotation, Field field, Locatable srcPos) {
+ Annotation proxy = getProxy(annotation, field);
+
+ if(proxy != null) {
+ return (A) proxy;
+ }
+
+ return LocatableAnnotation.create(field.getAnnotation(annotation),srcPos);
+ }
+
+ public boolean hasFieldAnnotation(Class<? extends Annotation> annotationType, Field field) {
+ FieldIntroConfig fieldIntroConfig = getFieldIntroConfig(field);
+
+ if(fieldIntroConfig != null) {
+ return isMemberAnnotationIntroAvailable(annotationType, fieldIntroConfig);
+ }
+
+ return field.isAnnotationPresent(annotationType);
+ }
+
+ public Annotation[] getAllFieldAnnotations(Field field, Locatable srcPos) {
+ return getAllAnnotations(field, srcPos);
+ }
+
+ public <A extends Annotation> A getMethodAnnotation(Class<A> annotation, Method method, Locatable srcPos) {
+ Annotation proxy = getProxy(annotation, method);
+
+ if(proxy != null) {
+ return (A) proxy;
+ }
+
+ return LocatableAnnotation.create(method.getAnnotation(annotation),srcPos);
+ }
+
+ public boolean hasMethodAnnotation(Class<? extends Annotation> annotation, Method method) {
+ MethodIntroConfig methodAnnotations = getMethodIntroConfig(method);
+
+ if(methodAnnotations != null) {
+ return isMemberAnnotationIntroAvailable(annotation, methodAnnotations);
+ }
+
+ return method.isAnnotationPresent(annotation);
+ }
+
+ public Annotation[] getAllMethodAnnotations(Method method, Locatable srcPos) {
+ return getAllAnnotations(method, srcPos);
+ }
+
+ public <A extends Annotation> A getMethodParameterAnnotation(Class<A> annotation, Method method, int paramIndex, Locatable srcPos) {
+ return baseReader.getMethodParameterAnnotation(annotation, method, paramIndex, srcPos);
+ }
+
+ public <A extends Annotation> A getClassAnnotation(Class<A> annotation, Class clazz, Locatable srcPos) {
+ Annotation proxy = getProxy(annotation, clazz);
+
+ if(proxy != null) {
+ return (A) proxy;
+ }
+
+ return LocatableAnnotation.create(((Class<?>)clazz).getAnnotation(annotation),srcPos);
+ }
+
+ public boolean hasClassAnnotation(Class clazz, Class<? extends Annotation> annotationType) {
+ ClassIntroConfig classAnnotations = getClassIntroConfig(clazz);
+
+ if(classAnnotations != null) {
+ return isClassAnnotationIntroAvailable(annotationType, classAnnotations);
+ }
+
+ return clazz.isAnnotationPresent(annotationType);
+ }
+
+ public <A extends Annotation> A getPackageAnnotation(Class<A> a, Class clazz, Locatable srcPos) {
+ return baseReader.getPackageAnnotation(a, clazz, srcPos);
+ }
+
+ public Class getClassValue(Annotation a, String name) {
+ if(a instanceof ClassValue) {
+ return ((ClassValue)a).getClassValue(a, name);
+ }
+ return (Class) baseReader.getClassValue(a, name);
+ }
+
+ public Class[] getClassArrayValue(Annotation a, String name) {
+ if(a instanceof ClassValue) {
+ return ((ClassValue)a).getClassArrayValue(a, name);
+ }
+ return (Class[]) baseReader.getClassArrayValue(a, name);
+ }
+
+ protected String fullName(Method m) {
+ return m.getDeclaringClass().getName()+'#'+m.getName();
+ }
+
+ private ClassIntroConfig getClassIntroConfig(Class clazz) {
+ String className = clazz.getName();
+ ClassIntroConfig globalIntro = null;
+
+ for(ClassIntroConfig classIntro : introductions.getClazz()) {
+ if(classIntro.getName().equals(className)) {
+ return classIntro;
+ } else if(globalIntro == null && isRegexMatch(className, classIntro.getName())) {
+ globalIntro = classIntro;
+ }
+ }
+
+ return globalIntro;
+ }
+
+ private FieldIntroConfig getFieldIntroConfig(Field field) {
+ ClassIntroConfig classIntroConfig = getClassIntroConfig(field.getDeclaringClass());
+
+ if(classIntroConfig != null) {
+ String fieldName = field.getName();
+
+ for(FieldIntroConfig fieldIntro : classIntroConfig.getField()) {
+ if(fieldIntro.getName().equals(fieldName)) {
+ return fieldIntro;
+ } else if(isRegexMatch(fieldName, fieldIntro.getName())) {
+ return fieldIntro;
+ }
+ }
+ }
+
+ return null;
+ }
+
+ private MethodIntroConfig getMethodIntroConfig(Method method) {
+ ClassIntroConfig classIntroConfig = getClassIntroConfig(method.getDeclaringClass());
+
+ if(classIntroConfig != null) {
+ String methodName = method.getName();
+
+ for(MethodIntroConfig methodIntro : classIntroConfig.getMethod()) {
+ if(methodIntro.getName().equals(methodName)) {
+ return methodIntro;
+ } else if(isRegexMatch(methodName, methodIntro.getName())) {
+ return methodIntro;
+ }
+ }
+ }
+
+ return null;
+ }
+
+ private static Map<String, Pattern> patternCache = new HashMap<String, Pattern>();
+ private boolean isRegexMatch(String string, String regex) {
+ Pattern pattern = patternCache.get(regex);
+
+ if(pattern == null) {
+ try {
+ pattern = Pattern.compile(regex);
+ } catch(Exception e) {
+ logger.warn("Error compiling '" + regex + "' as a regular expression: " + e.getMessage());
+ return false;
+ }
+ patternCache.put(regex, pattern);
+ }
+
+ return pattern.matcher(string).matches();
+ }
+
+ private Annotation getMemberAnnotationProxy(Class annotation, ClassMemberIntroConfig memberIntroConfig) {
+ Annotation proxy = null;
+
+ if(annotation == javax.xml.bind.annotation.XmlAttribute.class) {
+ XmlAttributeIntro xmlAttributeIntro = memberIntroConfig.getXmlAttribute();
+ if(xmlAttributeIntro != null) {
+ proxy = XmlAttributeHandler.createProxy(xmlAttributeIntro);
+ }
+ } else if(annotation == javax.xml.bind.annotation.XmlElement.class) {
+ XmlElementIntro xmlElementIntro = memberIntroConfig.getXmlElement();
+ if(xmlElementIntro != null) {
+ proxy = XmlElementHandler.createProxy(xmlElementIntro);
+ }
+ }
+
+ return proxy;
+ }
+
+ private Annotation getClassAnnotationProxy(Class annotation, ClassIntroConfig classIntroConfig) {
+ Annotation proxy = null;
+
+ if(annotation == javax.xml.bind.annotation.XmlAccessorType.class) {
+ XmlAccessorTypeIntro xmlAccessorTypeIntro = classIntroConfig.getXmlAccessorType();
+ if(xmlAccessorTypeIntro != null) {
+ proxy = XmlAccessorTypeHandler.createProxy(xmlAccessorTypeIntro);
+ }
+ } else if(annotation == javax.xml.bind.annotation.XmlType.class) {
+ XmlTypeIntro xmlTypeIntro = classIntroConfig.getXmlType();
+ if(xmlTypeIntro != null) {
+ proxy = XmlTypeHandler.createProxy(xmlTypeIntro);
+ }
+ } else if(annotation == javax.xml.bind.annotation.XmlRootElement.class) {
+ XmlRootElementIntro xmlRootElementIntro = classIntroConfig.getXmlRootElement();
+ if(xmlRootElementIntro != null) {
+ proxy = XmlRootElementHandler.createProxy(xmlRootElementIntro);
+ }
+ }
+
+ return proxy;
+ }
+
+ private boolean isMemberAnnotationIntroAvailable(Class<? extends Annotation> annotation, ClassMemberIntroConfig memberIntroConfig) {
+ if(annotation == javax.xml.bind.annotation.XmlAttribute.class) {
+ return (memberIntroConfig.getXmlAttribute() != null);
+ } else if(annotation == javax.xml.bind.annotation.XmlElement.class) {
+ return (memberIntroConfig.getXmlElement() != null);
+ }
+
+ return false;
+ }
+
+ private boolean isClassAnnotationIntroAvailable(Class<? extends Annotation> annotation, ClassIntroConfig classIntroConfig) {
+ if(annotation == javax.xml.bind.annotation.XmlType.class) {
+ return (classIntroConfig.getXmlType() != null);
+ } else if(annotation == javax.xml.bind.annotation.XmlAccessorType.class) {
+ return (classIntroConfig.getXmlAccessorType() != null);
+ } else if(annotation == javax.xml.bind.annotation.XmlRootElement.class) {
+ return (classIntroConfig.getXmlRootElement() != null);
+ }
+
+ return false;
+ }
+
+ private Annotation[] getAllAnnotations(Member member, Locatable srcPos) {
+ Annotation[] r = ((AnnotatedElement)member).getAnnotations();
+ List<Annotation> annotations = new ArrayList<Annotation>();
+
+ for( int i = 0; i < r.length; i++ ) {
+ Class<? extends Object> annType = r[i].getClass();
+ if(annType == XmlAttribute.class || annType == XmlElement.class) {
+ // We'll handle these explicitly (below)!!
+ continue;
+ }
+ annotations.add(LocatableAnnotation.create(r[i], srcPos));
+ }
+
+ // Now we explicitly handle the supported Introduction annotations...
+ ClassMemberIntroConfig memberIntroConfig = null;
+ if(member instanceof Field) {
+ memberIntroConfig = getFieldIntroConfig((Field)member);
+ } else if(member instanceof Method) {
+ memberIntroConfig = getMethodIntroConfig((Method)member);
+ }
+ if(memberIntroConfig != null) {
+ addMemberAnnotation(XmlAttribute.class, memberIntroConfig, annotations, member, srcPos);
+ addMemberAnnotation(XmlElement.class, memberIntroConfig, annotations, member, srcPos);
+ }
+
+ r = annotations.toArray(new Annotation[annotations.size()]);
+
+ return r;
+ }
+
+ private void addMemberAnnotation(Class annotationType, ClassMemberIntroConfig memberIntroConfig, List<Annotation> annotations, Member member, Locatable srcPos) {
+ Annotation annotation = getMemberAnnotationProxy(annotationType, memberIntroConfig);
+ if(annotation != null) {
+ annotations.add(annotation);
+ } else {
+ annotation = ((AnnotatedElement)member).getAnnotation(annotationType);
+ if(annotation != null) {
+ annotations.add(LocatableAnnotation.create(annotation, srcPos));
+ }
+ }
+ }
+
+ private Annotation getProxy(Class annotation, Field field) {
+ FieldIntroConfig fieldIntroConfig = getFieldIntroConfig(field);
+
+ if(fieldIntroConfig != null) {
+ Annotation proxy = getMemberAnnotationProxy(annotation, fieldIntroConfig);
+ if(proxy != null) {
+ return proxy;
+ }
+ }
+
+ return null;
+ }
+
+ private Annotation getProxy(Class annotation, Method method) {
+ MethodIntroConfig methodIntroConfig = getMethodIntroConfig(method);
+
+ if(methodIntroConfig != null) {
+ Annotation proxy = getMemberAnnotationProxy(annotation, methodIntroConfig);
+ if(proxy != null) {
+ return proxy;
+ }
+ }
+
+ return null;
+ }
+
+ private Annotation getProxy(Class annotation, Class clazz) {
+ ClassIntroConfig classIntroConfig = getClassIntroConfig(clazz);
+
+ if(classIntroConfig != null) {
+ Annotation proxy = getClassAnnotationProxy(annotation, classIntroConfig);
+ if(proxy != null) {
+ return proxy;
+ }
+ }
+
+ return null;
+ }
+
+
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsAnnotationReader.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsConfigParser.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsConfigParser.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsConfigParser.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros;
+
+import org.jboss.jaxb.intros.configmodel.JaxbIntros;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Unmarshaller;
+import java.io.InputStream;
+
+/**
+ * Configuration Parser for a JBossESB JAXB Annotations Introduction Configuration.
+ *
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public abstract class IntroductionsConfigParser {
+
+ /**
+ * Parse a JAXB Annotations Introduction Configuration stream.
+ *
+ * @param config The configuration stream.
+ * @return The configuration model.
+ * @throws ConfigurationException Bad configuration.
+ */
+ public static JaxbIntros parseConfig(InputStream config) throws ConfigurationException {
+ try {
+ JAXBContext jaxbContext = JAXBContext.newInstance(JaxbIntros.class);
+ Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
+
+ return (JaxbIntros) unmarshaller.unmarshal(config);
+ } catch (JAXBException e) {
+ throw new ConfigurationException("Bad JAXB Annotations Introduction Configuration.", e);
+ }
+ }
+}
\ No newline at end of file
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/IntroductionsConfigParser.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassIntroConfig.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassIntroConfig.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassIntroConfig.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,223 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for Class complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="Class">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}XmlAccessorType" minOccurs="0"/>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}XmlType" minOccurs="0"/>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}XmlRootElement" minOccurs="0"/>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}Field" maxOccurs="unbounded" minOccurs="0"/>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}Method" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "Class", propOrder = {
+ "xmlAccessorType",
+ "xmlType",
+ "xmlRootElement",
+ "field",
+ "method"
+})
+public class ClassIntroConfig {
+
+ @XmlElement(name = "XmlAccessorType")
+ protected XmlAccessorTypeIntro xmlAccessorType;
+ @XmlElement(name = "XmlType")
+ protected XmlTypeIntro xmlType;
+ @XmlElement(name = "XmlRootElement")
+ protected XmlRootElementIntro xmlRootElement;
+ @XmlElement(name = "Field")
+ protected List<FieldIntroConfig> field;
+ @XmlElement(name = "Method")
+ protected List<MethodIntroConfig> method;
+ @XmlAttribute(required = true)
+ @XmlSchemaType(name = "anySimpleType")
+ protected String name;
+
+ /**
+ * Gets the value of the xmlAccessorType property.
+ *
+ * @return
+ * possible object is
+ * {@link XmlAccessorTypeIntro }
+ *
+ */
+ public XmlAccessorTypeIntro getXmlAccessorType() {
+ return xmlAccessorType;
+ }
+
+ /**
+ * Sets the value of the xmlAccessorType property.
+ *
+ * @param value
+ * allowed object is
+ * {@link XmlAccessorTypeIntro }
+ *
+ */
+ public void setXmlAccessorType(XmlAccessorTypeIntro value) {
+ this.xmlAccessorType = value;
+ }
+
+ /**
+ * Gets the value of the xmlType property.
+ *
+ * @return
+ * possible object is
+ * {@link XmlTypeIntro }
+ *
+ */
+ public XmlTypeIntro getXmlType() {
+ return xmlType;
+ }
+
+ /**
+ * Sets the value of the xmlType property.
+ *
+ * @param value
+ * allowed object is
+ * {@link XmlTypeIntro }
+ *
+ */
+ public void setXmlType(XmlTypeIntro value) {
+ this.xmlType = value;
+ }
+
+ /**
+ * Gets the value of the xmlRootElement property.
+ *
+ * @return
+ * possible object is
+ * {@link XmlRootElementIntro }
+ *
+ */
+ public XmlRootElementIntro getXmlRootElement() {
+ return xmlRootElement;
+ }
+
+ /**
+ * Sets the value of the xmlRootElement property.
+ *
+ * @param value
+ * allowed object is
+ * {@link XmlRootElementIntro }
+ *
+ */
+ public void setXmlRootElement(XmlRootElementIntro value) {
+ this.xmlRootElement = value;
+ }
+
+ /**
+ * Gets the value of the field property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the field property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getField().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link FieldIntroConfig }
+ *
+ *
+ */
+ public List<FieldIntroConfig> getField() {
+ if (field == null) {
+ field = new ArrayList<FieldIntroConfig>();
+ }
+ return this.field;
+ }
+
+ /**
+ * Gets the value of the method property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the method property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getMethod().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link MethodIntroConfig }
+ *
+ *
+ */
+ public List<MethodIntroConfig> getMethod() {
+ if (method == null) {
+ method = new ArrayList<MethodIntroConfig>();
+ }
+ return this.method;
+ }
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassIntroConfig.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassMemberIntroConfig.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassMemberIntroConfig.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassMemberIntroConfig.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,134 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlSeeAlso;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Java Class Member (Field, Method Constructor) JAXB Annotation Introductions configuration base type.
+ *
+ * <p>Java class for class-member-intro-config complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="class-member-intro-config">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}XmlElement" minOccurs="0"/>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}XmlAttribute" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "class-member-intro-config", propOrder = {
+ "xmlElement",
+ "xmlAttribute"
+})
+@XmlSeeAlso({
+ MethodIntroConfig.class,
+ FieldIntroConfig.class
+})
+public class ClassMemberIntroConfig {
+
+ @XmlElement(name = "XmlElement")
+ protected XmlElementIntro xmlElement;
+ @XmlElement(name = "XmlAttribute")
+ protected XmlAttributeIntro xmlAttribute;
+ @XmlAttribute(required = true)
+ @XmlSchemaType(name = "anySimpleType")
+ protected String name;
+
+ /**
+ * Gets the value of the xmlElement property.
+ *
+ * @return
+ * possible object is
+ * {@link XmlElementIntro }
+ *
+ */
+ public XmlElementIntro getXmlElement() {
+ return xmlElement;
+ }
+
+ /**
+ * Sets the value of the xmlElement property.
+ *
+ * @param value
+ * allowed object is
+ * {@link XmlElementIntro }
+ *
+ */
+ public void setXmlElement(XmlElementIntro value) {
+ this.xmlElement = value;
+ }
+
+ /**
+ * Gets the value of the xmlAttribute property.
+ *
+ * @return
+ * possible object is
+ * {@link XmlAttributeIntro }
+ *
+ */
+ public XmlAttributeIntro getXmlAttribute() {
+ return xmlAttribute;
+ }
+
+ /**
+ * Sets the value of the xmlAttribute property.
+ *
+ * @param value
+ * allowed object is
+ * {@link XmlAttributeIntro }
+ *
+ */
+ public void setXmlAttribute(XmlAttributeIntro value) {
+ this.xmlAttribute = value;
+ }
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ClassMemberIntroConfig.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/FieldIntroConfig.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/FieldIntroConfig.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/FieldIntroConfig.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,39 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for Field complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="Field">
+ * <complexContent>
+ * <extension base="{http://www.jboss.org/xsd/jaxb/intros}class-member-intro-config">
+ * </extension>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "Field")
+public class FieldIntroConfig
+ extends ClassMemberIntroConfig
+{
+
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/FieldIntroConfig.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/JaxbIntros.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/JaxbIntros.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/JaxbIntros.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,108 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{http://www.jboss.org/xsd/jaxb/intros}Class" maxOccurs="unbounded"/>
+ * </sequence>
+ * <attribute name="default-namespace" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "clazz"
+})
+@XmlRootElement(name = "jaxb-intros")
+public class JaxbIntros {
+
+ @XmlElement(name = "Class", required = true)
+ protected List<ClassIntroConfig> clazz;
+ @XmlAttribute(name = "default-namespace")
+ @XmlSchemaType(name = "anySimpleType")
+ protected String defaultNamespace;
+
+ /**
+ * Gets the value of the clazz property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the clazz property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getClazz().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link ClassIntroConfig }
+ *
+ *
+ */
+ public List<ClassIntroConfig> getClazz() {
+ if (clazz == null) {
+ clazz = new ArrayList<ClassIntroConfig>();
+ }
+ return this.clazz;
+ }
+
+ /**
+ * Gets the value of the defaultNamespace property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getDefaultNamespace() {
+ return defaultNamespace;
+ }
+
+ /**
+ * Sets the value of the defaultNamespace property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setDefaultNamespace(String value) {
+ this.defaultNamespace = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/JaxbIntros.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/MethodIntroConfig.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/MethodIntroConfig.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/MethodIntroConfig.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,39 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for Method complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="Method">
+ * <complexContent>
+ * <extension base="{http://www.jboss.org/xsd/jaxb/intros}class-member-intro-config">
+ * </extension>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "Method")
+public class MethodIntroConfig
+ extends ClassMemberIntroConfig
+{
+
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/MethodIntroConfig.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ObjectFactory.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ObjectFactory.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ObjectFactory.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,212 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.namespace.QName;
+
+
+/**
+ * This object contains factory methods for each
+ * Java content interface and Java element interface
+ * generated in the org.jboss.jaxb.intros.configmodel package.
+ * <p>An ObjectFactory allows you to programatically
+ * construct new instances of the Java representation
+ * for XML content. The Java representation of XML
+ * content can consist of schema derived interfaces
+ * and classes representing the binding of schema
+ * type definitions, element declarations and model
+ * groups. Factory methods for each of these are
+ * provided in this class.
+ *
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+ private final static QName _XmlElement_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "XmlElement");
+ private final static QName _XmlRootElement_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "XmlRootElement");
+ private final static QName _Class_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "Class");
+ private final static QName _XmlType_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "XmlType");
+ private final static QName _XmlAttribute_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "XmlAttribute");
+ private final static QName _Method_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "Method");
+ private final static QName _Field_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "Field");
+ private final static QName _XmlAccessorType_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "XmlAccessorType");
+ private final static QName _ClassMemberIntroConfig_QNAME = new QName("http://www.jboss.org/xsd/jaxb/intros", "class-member-intro-config");
+
+ /**
+ * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.jboss.jaxb.intros.configmodel
+ *
+ */
+ public ObjectFactory() {
+ }
+
+ /**
+ * Create an instance of {@link ClassIntroConfig }
+ *
+ */
+ public ClassIntroConfig createClassIntroConfig() {
+ return new ClassIntroConfig();
+ }
+
+ /**
+ * Create an instance of {@link FieldIntroConfig }
+ *
+ */
+ public FieldIntroConfig createFieldIntroConfig() {
+ return new FieldIntroConfig();
+ }
+
+ /**
+ * Create an instance of {@link XmlAttributeIntro }
+ *
+ */
+ public XmlAttributeIntro createXmlAttributeIntro() {
+ return new XmlAttributeIntro();
+ }
+
+ /**
+ * Create an instance of {@link JaxbIntros }
+ *
+ */
+ public JaxbIntros createJaxbIntros() {
+ return new JaxbIntros();
+ }
+
+ /**
+ * Create an instance of {@link XmlRootElementIntro }
+ *
+ */
+ public XmlRootElementIntro createXmlRootElementIntro() {
+ return new XmlRootElementIntro();
+ }
+
+ /**
+ * Create an instance of {@link XmlElementIntro }
+ *
+ */
+ public XmlElementIntro createXmlElementIntro() {
+ return new XmlElementIntro();
+ }
+
+ /**
+ * Create an instance of {@link MethodIntroConfig }
+ *
+ */
+ public MethodIntroConfig createMethodIntroConfig() {
+ return new MethodIntroConfig();
+ }
+
+ /**
+ * Create an instance of {@link ClassMemberIntroConfig }
+ *
+ */
+ public ClassMemberIntroConfig createClassMemberIntroConfig() {
+ return new ClassMemberIntroConfig();
+ }
+
+ /**
+ * Create an instance of {@link XmlTypeIntro }
+ *
+ */
+ public XmlTypeIntro createXmlTypeIntro() {
+ return new XmlTypeIntro();
+ }
+
+ /**
+ * Create an instance of {@link XmlAccessorTypeIntro }
+ *
+ */
+ public XmlAccessorTypeIntro createXmlAccessorTypeIntro() {
+ return new XmlAccessorTypeIntro();
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XmlElementIntro }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "XmlElement")
+ public JAXBElement<XmlElementIntro> createXmlElement(XmlElementIntro value) {
+ return new JAXBElement<XmlElementIntro>(_XmlElement_QNAME, XmlElementIntro.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XmlRootElementIntro }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "XmlRootElement")
+ public JAXBElement<XmlRootElementIntro> createXmlRootElement(XmlRootElementIntro value) {
+ return new JAXBElement<XmlRootElementIntro>(_XmlRootElement_QNAME, XmlRootElementIntro.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link ClassIntroConfig }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "Class")
+ public JAXBElement<ClassIntroConfig> createClass(ClassIntroConfig value) {
+ return new JAXBElement<ClassIntroConfig>(_Class_QNAME, ClassIntroConfig.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XmlTypeIntro }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "XmlType")
+ public JAXBElement<XmlTypeIntro> createXmlType(XmlTypeIntro value) {
+ return new JAXBElement<XmlTypeIntro>(_XmlType_QNAME, XmlTypeIntro.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XmlAttributeIntro }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "XmlAttribute")
+ public JAXBElement<XmlAttributeIntro> createXmlAttribute(XmlAttributeIntro value) {
+ return new JAXBElement<XmlAttributeIntro>(_XmlAttribute_QNAME, XmlAttributeIntro.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link MethodIntroConfig }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "Method", substitutionHeadNamespace = "http://www.jboss.org/xsd/jaxb/intros", substitutionHeadName = "class-member-intro-config")
+ public JAXBElement<MethodIntroConfig> createMethod(MethodIntroConfig value) {
+ return new JAXBElement<MethodIntroConfig>(_Method_QNAME, MethodIntroConfig.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link FieldIntroConfig }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "Field", substitutionHeadNamespace = "http://www.jboss.org/xsd/jaxb/intros", substitutionHeadName = "class-member-intro-config")
+ public JAXBElement<FieldIntroConfig> createField(FieldIntroConfig value) {
+ return new JAXBElement<FieldIntroConfig>(_Field_QNAME, FieldIntroConfig.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XmlAccessorTypeIntro }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "XmlAccessorType")
+ public JAXBElement<XmlAccessorTypeIntro> createXmlAccessorType(XmlAccessorTypeIntro value) {
+ return new JAXBElement<XmlAccessorTypeIntro>(_XmlAccessorType_QNAME, XmlAccessorTypeIntro.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://www.jboss.org/xsd/jaxb/intros", name = "class-member-intro-config")
+ public JAXBElement<Object> createClassMemberIntroConfig(Object value) {
+ return new JAXBElement<Object>(_ClassMemberIntroConfig_QNAME, Object.class, null, value);
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/ObjectFactory.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAccessorTypeIntro.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAccessorTypeIntro.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAccessorTypeIntro.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,81 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+
+/**
+ * <p>Java class for XmlAccessorType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="XmlAccessorType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="value" default="NONE">
+ * <simpleType>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}NMTOKEN">
+ * <enumeration value="PROPERTY"/>
+ * <enumeration value="FIELD"/>
+ * <enumeration value="PUBLIC_MEMBER"/>
+ * <enumeration value="NONE"/>
+ * </restriction>
+ * </simpleType>
+ * </attribute>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "XmlAccessorType")
+public class XmlAccessorTypeIntro {
+
+ @XmlAttribute
+ @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+ protected String value;
+
+ /**
+ * Gets the value of the value property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValue() {
+ if (value == null) {
+ return "NONE";
+ } else {
+ return value;
+ }
+ }
+
+ /**
+ * Sets the value of the value property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAccessorTypeIntro.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAttributeIntro.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAttributeIntro.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAttributeIntro.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,134 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for XmlAttribute complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="XmlAttribute">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * <attribute name="required" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ * <attribute name="namespace" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "XmlAttribute")
+public class XmlAttributeIntro {
+
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String name;
+ @XmlAttribute
+ protected Boolean required;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String namespace;
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ if (name == null) {
+ return "##default";
+ } else {
+ return name;
+ }
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Gets the value of the required property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public boolean isRequired() {
+ if (required == null) {
+ return false;
+ } else {
+ return required;
+ }
+ }
+
+ /**
+ * Sets the value of the required property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setRequired(Boolean value) {
+ this.required = value;
+ }
+
+ /**
+ * Gets the value of the namespace property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getNamespace() {
+ if (namespace == null) {
+ return "##default";
+ } else {
+ return namespace;
+ }
+ }
+
+ /**
+ * Sets the value of the namespace property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setNamespace(String value) {
+ this.namespace = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlAttributeIntro.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlElementIntro.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlElementIntro.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlElementIntro.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,221 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for XmlElement complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="XmlElement">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * <attribute name="nillable" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ * <attribute name="required" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ * <attribute name="namespace" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * <attribute name="defaultValue" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
+ * <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "XmlElement")
+public class XmlElementIntro {
+
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String name;
+ @XmlAttribute
+ protected Boolean nillable;
+ @XmlAttribute
+ protected Boolean required;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String namespace;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String defaultValue;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String type;
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ if (name == null) {
+ return "##default";
+ } else {
+ return name;
+ }
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Gets the value of the nillable property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public boolean isNillable() {
+ if (nillable == null) {
+ return false;
+ } else {
+ return nillable;
+ }
+ }
+
+ /**
+ * Sets the value of the nillable property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setNillable(Boolean value) {
+ this.nillable = value;
+ }
+
+ /**
+ * Gets the value of the required property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public boolean isRequired() {
+ if (required == null) {
+ return false;
+ } else {
+ return required;
+ }
+ }
+
+ /**
+ * Sets the value of the required property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setRequired(Boolean value) {
+ this.required = value;
+ }
+
+ /**
+ * Gets the value of the namespace property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getNamespace() {
+ if (namespace == null) {
+ return "##default";
+ } else {
+ return namespace;
+ }
+ }
+
+ /**
+ * Sets the value of the namespace property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setNamespace(String value) {
+ this.namespace = value;
+ }
+
+ /**
+ * Gets the value of the defaultValue property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getDefaultValue() {
+ return defaultValue;
+ }
+
+ /**
+ * Sets the value of the defaultValue property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setDefaultValue(String value) {
+ this.defaultValue = value;
+ }
+
+ /**
+ * Gets the value of the type property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * Sets the value of the type property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setType(String value) {
+ this.type = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlElementIntro.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlRootElementIntro.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlRootElementIntro.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlRootElementIntro.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,103 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for XmlRootElement complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="XmlRootElement">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="namespace" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "XmlRootElement")
+public class XmlRootElementIntro {
+
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String namespace;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String name;
+
+ /**
+ * Gets the value of the namespace property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getNamespace() {
+ if (namespace == null) {
+ return "##default";
+ } else {
+ return namespace;
+ }
+ }
+
+ /**
+ * Sets the value of the namespace property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setNamespace(String value) {
+ this.namespace = value;
+ }
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ if (name == null) {
+ return "##default";
+ } else {
+ return name;
+ }
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlRootElementIntro.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlTypeIntro.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlTypeIntro.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlTypeIntro.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,195 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+
+package org.jboss.jaxb.intros.configmodel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for XmlType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="XmlType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * <attribute name="propOrder" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="" />
+ * <attribute name="namespace" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="##default" />
+ * <attribute name="factoryClass" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
+ * <attribute name="factoryMethod" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" default="" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "XmlType")
+public class XmlTypeIntro {
+
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String name;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String propOrder;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String namespace;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String factoryClass;
+ @XmlAttribute
+ @XmlSchemaType(name = "anySimpleType")
+ protected String factoryMethod;
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ if (name == null) {
+ return "##default";
+ } else {
+ return name;
+ }
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Gets the value of the propOrder property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getPropOrder() {
+ if (propOrder == null) {
+ return "";
+ } else {
+ return propOrder;
+ }
+ }
+
+ /**
+ * Sets the value of the propOrder property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setPropOrder(String value) {
+ this.propOrder = value;
+ }
+
+ /**
+ * Gets the value of the namespace property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getNamespace() {
+ if (namespace == null) {
+ return "##default";
+ } else {
+ return namespace;
+ }
+ }
+
+ /**
+ * Sets the value of the namespace property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setNamespace(String value) {
+ this.namespace = value;
+ }
+
+ /**
+ * Gets the value of the factoryClass property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFactoryClass() {
+ return factoryClass;
+ }
+
+ /**
+ * Sets the value of the factoryClass property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFactoryClass(String value) {
+ this.factoryClass = value;
+ }
+
+ /**
+ * Gets the value of the factoryMethod property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFactoryMethod() {
+ if (factoryMethod == null) {
+ return "";
+ } else {
+ return factoryMethod;
+ }
+ }
+
+ /**
+ * Sets the value of the factoryMethod property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFactoryMethod(String value) {
+ this.factoryMethod = value;
+ }
+
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/XmlTypeIntro.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/package-info.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/package-info.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/package-info.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,9 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.4-b02-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2007.08.21 at 10:20:40 PM GMT
+//
+
+(a)javax.xml.bind.annotation.XmlSchema(namespace = "http://www.jboss.org/xsd/jaxb/intros", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
+package org.jboss.jaxb.intros.configmodel;
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/configmodel/package-info.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/ClassValue.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/ClassValue.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/ClassValue.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros.handlers;
+
+import java.lang.annotation.Annotation;
+
+/**
+ * Annotation Class Value interface.
+ * <p/>
+ * See same methods on the {@link com.sun.xml.bind.v2.model.annotation.AnnotationReader} interface.
+ * We want to proxy these calls back to the annotation handlers.
+ *
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public interface ClassValue {
+
+ Class getClassValue( Annotation a, String name );
+
+ Class[] getClassArrayValue( Annotation a, String name );
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/ClassValue.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAccessorTypeHandler.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAccessorTypeHandler.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAccessorTypeHandler.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,74 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros.handlers;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.jboss.jaxb.intros.configmodel.XmlAccessorTypeIntro;
+
+/**
+ * @author <a href="mailto:chris@swaton.org">chris(a)swaton.org</a>
+ */
+public class XmlAccessorTypeHandler implements InvocationHandler {
+
+ private static final Log logger = LogFactory.getLog(XmlAccessorTypeHandler.class);
+ private XmlAccessorTypeIntro xmlAccessorTypeIntro;
+
+ private XmlAccessorTypeHandler(XmlAccessorTypeIntro xmlAccessorTypeIntro) {
+ this.xmlAccessorTypeIntro = xmlAccessorTypeIntro;
+ }
+
+ public static Annotation createProxy(XmlAccessorTypeIntro xmlAccessorTypeIntro) {
+ return (Annotation) Proxy.newProxyInstance(XmlAccessorType.class.getClassLoader(),
+ new Class[] { XmlAccessorType.class, ClassValue.class },
+ new XmlAccessorTypeHandler(xmlAccessorTypeIntro));
+ }
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ /*
+ <xsd:complexType>
+ <xsd:attribute name="value" use="optional" default="NONE">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="PROPERTY"/>
+ <xsd:enumeration value="FIELD"/>
+ <xsd:enumeration value="PUBLIC_MEMBER"/>
+ <xsd:enumeration value="NONE"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ */
+
+ String methodName = method.getName();
+ if(methodName.equals("value")) {
+ return XmlAccessType.valueOf(xmlAccessorTypeIntro.getValue());
+ }
+ return null;
+ }
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAccessorTypeHandler.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAttributeHandler.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAttributeHandler.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAttributeHandler.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,70 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros.handlers;
+
+import org.jboss.jaxb.intros.configmodel.XmlAttributeIntro;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+import java.lang.annotation.Annotation;
+
+/**
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public class XmlAttributeHandler implements InvocationHandler {
+
+ private XmlAttributeIntro xmlAttributeIntro;
+
+ public XmlAttributeHandler(XmlAttributeIntro xmlAttributeIntro) {
+ this.xmlAttributeIntro = xmlAttributeIntro;
+ }
+
+ public static Annotation createProxy(XmlAttributeIntro xmlAttributeIntro) {
+ return (Annotation) Proxy.newProxyInstance(XmlAttribute.class.getClassLoader(),
+ new Class[] { XmlAttribute.class },
+ new XmlAttributeHandler(xmlAttributeIntro));
+ }
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ /*
+ <xsd:complexType>
+ <xsd:attribute name="name" use="optional" default="##default"/>
+ <xsd:attribute name="required" type="xsd:boolean" use="optional" default="false"/>
+ <xsd:attribute name="namespace" use="optional" default="##default"/>
+ </xsd:complexType>
+ */
+
+ String methodName = method.getName();
+
+ if(methodName.equals("namespace")) {
+ return xmlAttributeIntro.getNamespace();
+ } else if(methodName.equals("name")) {
+ return xmlAttributeIntro.getName();
+ } else if(methodName.equals("required")) {
+ return xmlAttributeIntro.isRequired();
+ } else if(methodName.equals("annotationType")) {
+ return XmlAttribute.class;
+ }
+
+ return null;
+ }
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlAttributeHandler.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlElementHandler.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlElementHandler.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlElementHandler.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,91 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros.handlers;
+
+import org.jboss.jaxb.intros.configmodel.XmlElementIntro;
+import org.jboss.jaxb.intros.ConfigurationException;
+
+import javax.xml.bind.annotation.XmlElement;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+import java.lang.annotation.Annotation;
+
+/**
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public class XmlElementHandler implements InvocationHandler {
+
+ private XmlElementIntro xmlElementIntro;
+
+ private XmlElementHandler(XmlElementIntro xmlElementIntro) {
+ this.xmlElementIntro = xmlElementIntro;
+ }
+
+ public static Annotation createProxy(XmlElementIntro xmlElementIntro) {
+ return (Annotation) Proxy.newProxyInstance(XmlElement.class.getClassLoader(),
+ new Class[] { XmlElement.class, ClassValue.class },
+ new XmlElementHandler(xmlElementIntro));
+ }
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ /*
+ <xsd:complexType>
+ <xsd:attribute name="name" use="optional" default="##default"/>
+ <xsd:attribute name="nillable" type="xsd:boolean" use="optional" default="false"/>
+ <xsd:attribute name="required" type="xsd:boolean" use="optional" default="false"/>
+ <xsd:attribute name="namespace" use="optional" default="##default"/>
+ <xsd:attribute name="defaultValue" use="optional"/>
+ <xsd:attribute name="type" use="optional"/>
+ </xsd:complexType>
+ */
+ String methodName = method.getName();
+
+ if(methodName.equals("getClassValue")) {
+ methodName = (String)args[1];
+ }
+
+ if(methodName.equals("namespace")) {
+ return xmlElementIntro.getNamespace();
+ } else if(methodName.equals("name")) {
+ return xmlElementIntro.getName();
+ } else if(methodName.equals("nillable")) {
+ return xmlElementIntro.isNillable();
+ } else if(methodName.equals("required")) {
+ return xmlElementIntro.isRequired();
+ } else if(methodName.equals("defaultValue")) {
+ String defaultVal = xmlElementIntro.getDefaultValue();
+ return (defaultVal != null?defaultVal:"\u0000");
+ } else if(methodName.equals("type")) {
+ if(xmlElementIntro.getType() != null) {
+ try {
+ return Class.forName(xmlElementIntro.getType());
+ } catch(ClassNotFoundException e) {
+ throw new ConfigurationException("Bad 'XmlElement.type' config value '" + xmlElementIntro.getType() + "' in JAXB Annotation Introduction config. Class not found.");
+ }
+ }
+ return XmlElement.DEFAULT.class;
+ } else if(methodName.equals("annotationType")) {
+ return XmlElement.class;
+ }
+
+ return null;
+ }
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlElementHandler.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlRootElementHandler.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlRootElementHandler.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlRootElementHandler.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,67 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros.handlers;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.jboss.jaxb.intros.configmodel.XmlRootElementIntro;
+
+/**
+ * @author <a href="mailto:chris@swaton.org">chris(a)swaton.org</a>
+ */
+public class XmlRootElementHandler implements InvocationHandler {
+
+ private static final Log logger = LogFactory.getLog(XmlRootElementHandler.class);
+ private XmlRootElementIntro xmlRootElementIntro;
+
+ private XmlRootElementHandler(XmlRootElementIntro xmlRootElementIntro) {
+ this.xmlRootElementIntro = xmlRootElementIntro;
+ }
+
+ public static Annotation createProxy(XmlRootElementIntro xmlRootElementIntro) {
+ return (Annotation) Proxy.newProxyInstance(XmlRootElement.class.getClassLoader(),
+ new Class[] { XmlRootElement.class, ClassValue.class },
+ new XmlRootElementHandler(xmlRootElementIntro));
+ }
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ /*
+ <xsd:complexType>
+ <xsd:attribute name="namespace" use="optional" default="##default"/>
+ <xsd:attribute name="name" use="optional" default="##default"/>
+ </xsd:complexType>
+ */
+
+ String methodName = method.getName();
+ if(methodName.equals("namespace")) {
+ return xmlRootElementIntro.getNamespace();
+ } else if(methodName.equals("name")) {
+ return xmlRootElementIntro.getName();
+ }
+ return null;
+ }
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlRootElementHandler.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlTypeHandler.java
===================================================================
--- projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlTypeHandler.java (rev 0)
+++ projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlTypeHandler.java 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,92 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.jaxb.intros.handlers;
+
+import org.jboss.jaxb.intros.configmodel.XmlTypeIntro;
+import org.jboss.jaxb.intros.ConfigurationException;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import javax.xml.bind.annotation.XmlType;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+import java.lang.annotation.Annotation;
+
+/**
+ * @author <a href="mailto:tom.fennelly@jboss.com">tom.fennelly(a)jboss.com</a>
+ */
+public class XmlTypeHandler implements InvocationHandler {
+
+ private static final Log logger = LogFactory.getLog(XmlTypeHandler.class);
+ private XmlTypeIntro xmlTypeIntro;
+
+ private XmlTypeHandler(XmlTypeIntro xmlTypeIntro) {
+ this.xmlTypeIntro = xmlTypeIntro;
+ }
+
+ public static Annotation createProxy(XmlTypeIntro xmlTypeIntro) {
+ return (Annotation) Proxy.newProxyInstance(XmlType.class.getClassLoader(),
+ new Class[] { XmlType.class, ClassValue.class },
+ new XmlTypeHandler(xmlTypeIntro));
+ }
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ /*
+ <xsd:complexType>
+ <xsd:attribute name="name" use="optional" default="##default"/>
+ <xsd:attribute name="propOrder" use="optional" default=""/>
+ <xsd:attribute name="namespace" use="optional" default="##default"/>
+ <xsd:attribute name="factoryClass" use="optional"/>
+ <xsd:attribute name="factoryMethod" use="optional" default=""/>
+ </xsd:complexType>
+ */
+ String methodName = method.getName();
+
+ if(methodName.equals("getClassValue")) {
+ methodName = (String)args[1];
+ }
+
+ if(methodName.equals("namespace")) {
+ return xmlTypeIntro.getNamespace();
+ } else if(methodName.equals("name")) {
+ return xmlTypeIntro.getName();
+ } else if(methodName.equals("propOrder")) {
+ try {
+ return xmlTypeIntro.getPropOrder().split(",");
+ } catch(Exception e) {
+ logger.warn("Bad 'XmlType.propOrder' config value '" + xmlTypeIntro.getPropOrder() + "' in JAXB Annotation Introduction config. Must be a CSV String.");
+ }
+ } else if(methodName.equals("factoryClass")) {
+ if(xmlTypeIntro.getFactoryClass() != null) {
+ try {
+ return Class.forName(xmlTypeIntro.getFactoryClass());
+ } catch(ClassNotFoundException e) {
+ throw new ConfigurationException("Bad 'XmlType.factoryClass' config value '" + xmlTypeIntro.getFactoryClass() + "' in JAXB Annotation Introduction config. Class not found.");
+ }
+ }
+ return XmlType.DEFAULT.class;
+ } else if(methodName.equals("factoryMethod")) {
+ return xmlTypeIntro.getFactoryMethod();
+ }
+
+ return null;
+ }
+}
Property changes on: projects/jaxbintros/src/main/java/org/jboss/jaxb/intros/handlers/XmlTypeHandler.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jaxbintros/version.properties
===================================================================
--- projects/jaxbintros/version.properties (rev 0)
+++ projects/jaxbintros/version.properties 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1,26 @@
+
+# $Id: version.properties 3956 2007-07-19 18:03:54Z thomas.diesler(a)jboss.com $
+
+specification.title=JBossWS
+specification.vendor=JBoss (http://www.jboss.org)
+specification.version=jbossws-2.0
+
+version.id=1.0.0.beta2
+repository.id=1.0.0.beta2
+
+implementation.title=JBoss Web Services - Integration JBoss42
+implementation.url=http://www.jboss.org/products/jbossws
+implementation.vendor=JBoss Inc.
+implementation.vendor.id=http://www.jboss.org
+
+# Thirdparty library versions
+jbossws-spi=1.0.0.GA
+jbossws-native=2.0.1.GA
+
+# Thirdparty library versions
+apache-log4j=1.2.8
+apache-logging=1.1.0.jboss
+junit=3.8.1
+sun-jaf=1.1
+stax-api=1.0
+sun-jaxb=2.1.4
Added: projects/jaxbintros/version.properties.md5
===================================================================
--- projects/jaxbintros/version.properties.md5 (rev 0)
+++ projects/jaxbintros/version.properties.md5 2007-09-21 08:28:29 UTC (rev 4601)
@@ -0,0 +1 @@
+7b89bc87858574270101d221d8a58c88
\ No newline at end of file
17 years, 4 months
JBossWS SVN: r4600 - framework/tags.
by jbossws-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2007-09-20 04:34:20 -0400 (Thu, 20 Sep 2007)
New Revision: 4600
Removed:
framework/tags/jbossws-framework-2.0.1.SP1/
Log:
Remove jbossws-framework-2.0.1.SP1
17 years, 4 months
JBossWS SVN: r4599 - in stack/native/tags/jbossws-native-2.0.1.SP1: src and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2007-09-20 04:33:19 -0400 (Thu, 20 Sep 2007)
New Revision: 4599
Modified:
stack/native/tags/jbossws-native-2.0.1.SP1/src/
stack/native/tags/jbossws-native-2.0.1.SP1/version.properties
Log:
Use jbossws-framework-2.0.1.GA
Property changes on: stack/native/tags/jbossws-native-2.0.1.SP1/src
___________________________________________________________________
Name: svn:externals
- test-framework https://svn.jboss.org/repos/jbossws/framework/tags/jbossws-framework-2.0....
+ test-framework https://svn.jboss.org/repos/jbossws/framework/tags/jbossws-framework-2.0....
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/version.properties
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/version.properties 2007-09-20 08:30:15 UTC (rev 4598)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/version.properties 2007-09-20 08:33:19 UTC (rev 4599)
@@ -26,7 +26,7 @@
# Dependend integration projects
jbossws-spi=1.0.0.GA
jbossws-common=1.0.0.GA
-jbossws-framework=2.0.1.SP1
+jbossws-framework=2.0.1.GA
jbossws-jboss40=2.0.1.GA
jbossws-jboss42=2.0.1.GA
jbossws-jboss50=2.0.1.GA
17 years, 4 months
JBossWS SVN: r4598 - in stack/native/tags/jbossws-native-2.0.1.SP1: src and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2007-09-20 04:30:15 -0400 (Thu, 20 Sep 2007)
New Revision: 4598
Modified:
stack/native/tags/jbossws-native-2.0.1.SP1/src/
stack/native/tags/jbossws-native-2.0.1.SP1/version.properties
Log:
Use jbossws-framework-2.0.1.SP1
Property changes on: stack/native/tags/jbossws-native-2.0.1.SP1/src
___________________________________________________________________
Name: svn:externals
- test-framework https://svn.jboss.org/repos/jbossws/framework/tags/jbossws-framework-2.0....
+ test-framework https://svn.jboss.org/repos/jbossws/framework/tags/jbossws-framework-2.0....
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/version.properties
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/version.properties 2007-09-20 08:25:00 UTC (rev 4597)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/version.properties 2007-09-20 08:30:15 UTC (rev 4598)
@@ -26,7 +26,7 @@
# Dependend integration projects
jbossws-spi=1.0.0.GA
jbossws-common=1.0.0.GA
-jbossws-framework=2.0.1.GA
+jbossws-framework=2.0.1.SP1
jbossws-jboss40=2.0.1.GA
jbossws-jboss42=2.0.1.GA
jbossws-jboss50=2.0.1.GA
17 years, 4 months
JBossWS SVN: r4597 - in framework/tags: jbossws-framework-2.0.1.SP1 and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2007-09-20 04:25:00 -0400 (Thu, 20 Sep 2007)
New Revision: 4597
Added:
framework/tags/jbossws-framework-2.0.1.SP1/
Modified:
framework/tags/jbossws-framework-2.0.1.SP1/version.properties
Log:
Add jbossws-framework-2.0.1.SP1
Copied: framework/tags/jbossws-framework-2.0.1.SP1 (from rev 4406, framework/tags/jbossws-framework-2.0.1.GA)
Modified: framework/tags/jbossws-framework-2.0.1.SP1/version.properties
===================================================================
--- framework/tags/jbossws-framework-2.0.1.GA/version.properties 2007-08-17 14:10:22 UTC (rev 4406)
+++ framework/tags/jbossws-framework-2.0.1.SP1/version.properties 2007-09-20 08:25:00 UTC (rev 4597)
@@ -5,8 +5,8 @@
specification.vendor=JBoss (http://www.jboss.org)
specification.version=jbossws-2.0
-version.id=2.0.1.GA
-repository.id=2.0.1.GA
+version.id=2.0.1.SP1
+repository.id=2.0.1.SP1
implementation.title=JBoss Web Services - Framework
implementation.url=http://www.jboss.org/products/jbossws
17 years, 4 months
JBossWS SVN: r4596 - in stack/native/tags/jbossws-native-2.0.1.SP1: ant-import and 9 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-19 15:55:00 -0400 (Wed, 19 Sep 2007)
New Revision: 4596
Added:
stack/native/tags/jbossws-native-2.0.1.SP1/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl
Removed:
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/
stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl
Modified:
stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-jars-jaxws.xml
stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-testsuite.xml
stack/native/tags/jbossws-native-2.0.1.SP1/ant-import/build-thirdparty.xml
stack/native/tags/jbossws-native-2.0.1.SP1/build.xml
stack/native/tags/jbossws-native-2.0.1.SP1/src/main/resources/jbossws-native-config.xml
stack/native/tags/jbossws-native-2.0.1.SP1/version.properties
Log:
svn merge -r4590:4594 https://svn.jboss.org/repos/jbossws/stack/native/trunk
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/ant-import/build-thirdparty.xml
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/ant-import/build-thirdparty.xml 2007-09-19 19:25:10 UTC (rev 4595)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/ant-import/build-thirdparty.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -90,6 +90,7 @@
<get src="${jboss.repository}/jboss/jboss-vfs/${jboss-vfs}/lib/jboss-vfs-sources.jar" dest="${thirdparty.dir}/jboss-vfs-sources.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/jbossxb/${jboss-jbossxb-jboss42}/lib/jboss-xml-binding.jar" dest="${thirdparty.dir}/jboss-xml-binding.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/jbossxb/${jboss-jbossxb-jboss42}/lib/jboss-xml-binding-sources.jar" dest="${thirdparty.dir}/jboss-xml-binding-sources.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/jboss/jaxbintros/${jaxbintros}/lib/jboss-jaxb-intros.jar" dest="${thirdparty.dir}/jboss-jaxb-intros.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/microcontainer/${jboss-microcontainer}/lib/jboss-container.jar" dest="${thirdparty.dir}/jboss-container.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/microcontainer/${jboss-microcontainer}/lib/jboss-dependency.jar" dest="${thirdparty.dir}/jboss-dependency.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/microcontainer/${jboss-microcontainer}/lib/jboss-deployers.jar" dest="${thirdparty.dir}/jboss-deployers.jar" usetimestamp="true" verbose="true"/>
@@ -167,6 +168,7 @@
<pathelement location="${thirdparty.dir}/xalan.jar"/>
<pathelement location="${thirdparty.dir}/xmlsec.jar"/>
<pathelement location="${thirdparty.dir}/xercesImpl.jar"/>
+ <pathelement location="${thirdparty.dir}/jboss-jaxb-intros.jar"/>
</path>
</target>
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-jars-jaxws.xml
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-jars-jaxws.xml 2007-09-19 19:25:10 UTC (rev 4595)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-jars-jaxws.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -119,7 +119,19 @@
</classes>
</war>
- <!-- jaxws-jbws771 -->
+ <!-- jaxws-jaxbintros -->
+ <war warfile="${tests.output.dir}/libs/jaxws-jaxbintros.war" webxml="${tests.output.dir}/resources/jaxws/jaxbintros/WEB-INF/web.xml">
+ <classes dir="${tests.output.dir}/classes">
+ <include name="org/jboss/test/ws/jaxws/jaxbintros/**/*.class"/>
+ </classes>
+
+ <webinf dir="${tests.output.dir}/resources/jaxws/jaxbintros/WEB-INF">
+ <include name="*.xml"/>
+ <include name="**/*.wsdl"/>
+ </webinf>
+ </war>
+
+ <!-- jaxws-jbws771 -->
<jar destfile="${tests.output.dir}/libs/jaxws-jbws771.jar">
<fileset dir="${tests.output.dir}/classes">
<include name="org/jboss/test/ws/jaxws/jbws771/*.class"/>
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-testsuite.xml
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-testsuite.xml 2007-09-19 19:25:10 UTC (rev 4595)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/ant-import-tests/build-testsuite.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -46,6 +46,7 @@
<pathelement location="${core.dir}/thirdparty/wsdl4j.jar"/>
<pathelement location="${core.dir}/thirdparty/wstx.jar"/>
<pathelement location="${core.dir}/thirdparty/xmlunit.jar"/>
+ <pathelement location="${core.dir}/thirdparty/jboss-jaxb-intros.jar"/>
</path>
<!-- The jBPM BPEL classpath -->
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/build.xml
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/build.xml 2007-09-19 19:25:10 UTC (rev 4595)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/build.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -233,6 +233,7 @@
<include name="wsdl4j.jar"/>
<include name="xmlsec.jar"/>
<include name="wstx.jar"/>
+ <include name="jboss-jaxb-intros.jar"/>
</fileset>
<metainf dir="${core.dir}/src/main/resources/standard-config">
<include name="standard-*-config.xml"/>
@@ -281,6 +282,7 @@
<include name="wsdl4j.jar"/>
<include name="xmlsec.jar"/>
<include name="wstx.jar"/>
+ <include name="jboss-jaxb-intros.jar"/>
</fileset>
<fileset dir="${core.output.lib.dir}/jbossws-native42">
<include name="jbossws.beans/**"/>
@@ -328,6 +330,7 @@
<include name="wsdl4j.jar"/>
<include name="xmlsec.jar"/>
<include name="wstx.jar"/>
+ <include name="jboss-jaxb-intros.jar"/>
</fileset>
<fileset dir="${core.output.lib.dir}/jbossws-native40">
<include name="jbossws.beans/**"/>
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java (from rev 4594, stack/native/trunk/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,96 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.wsf.stack.jbws;
+
+import com.sun.xml.bind.api.JAXBRIContext;
+import org.jboss.jaxb.intros.IntroductionsAnnotationReader;
+import org.jboss.jaxb.intros.IntroductionsConfigParser;
+import org.jboss.jaxb.intros.configmodel.JaxbIntros;
+import org.jboss.logging.Logger;
+import org.jboss.ws.core.jaxws.JAXBBindingCustomization;
+import org.jboss.wsf.spi.binding.BindingCustomization;
+import org.jboss.wsf.spi.deployment.Deployment;
+import org.jboss.wsf.spi.deployment.DeploymentAspect;
+import org.jboss.wsf.spi.deployment.Endpoint;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public class JAXBIntroDeploymentAspect extends DeploymentAspect
+{
+ private static Logger logger = Logger.getLogger(JAXBIntroDeploymentAspect.class);
+
+ public void create(Deployment deployment)
+ {
+
+ InputStream introsConfigStream = null;
+
+ try { // META-INF first
+ ClassLoader classLoader = deployment.getRuntimeClassLoader();
+ introsConfigStream = classLoader.getResource("META-INF/jaxb-intros.xml").openStream();
+ } catch (Exception e) {}
+
+ if(null == introsConfigStream)
+ {
+ try { // WEB-INF second
+
+ ClassLoader classLoader = deployment.getRuntimeClassLoader();
+ introsConfigStream = classLoader.getResource("WEB-INF/jaxb-intros.xml").openStream();
+ } catch (Exception e) {
+ return;
+ }
+ }
+
+ try {
+ if(introsConfigStream != null) {
+ JaxbIntros jaxbIntros = IntroductionsConfigParser.parseConfig(introsConfigStream);
+ IntroductionsAnnotationReader annotationReader = new IntroductionsAnnotationReader(jaxbIntros);
+ String defaultNamespace = jaxbIntros.getDefaultNamespace();
+ BindingCustomization jaxbCustomizations = new JAXBBindingCustomization();
+
+ jaxbCustomizations.put(JAXBRIContext.ANNOTATION_READER, annotationReader);
+ if(defaultNamespace != null) {
+ jaxbCustomizations.put(JAXBRIContext.DEFAULT_NAMESPACE_REMAP, defaultNamespace);
+ }
+
+ // ServerEndpointMetaData#getBindingCustomization becomes the consumer later on
+ for(Endpoint endpoint : deployment.getService().getEndpoints())
+ {
+ endpoint.addAttachment(BindingCustomization.class, jaxbCustomizations);
+ }
+
+ }
+ } finally {
+ if(introsConfigStream != null) {
+ try {
+ introsConfigStream.close();
+ } catch (IOException e) {
+ logger.error("[" + deployment.getService().getContextRoot() + "] Error closing JAXB Introductions Configurations stream ", e);
+ }
+ }
+ }
+ }
+}
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/src/main/resources/jbossws-native-config.xml
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/main/resources/jbossws-native-config.xml 2007-09-19 19:25:10 UTC (rev 4595)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/main/resources/jbossws-native-config.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -73,8 +73,12 @@
<property name="requires">RuntimeLoader, ContainerMetaData, URLPattern, VFSRoot</property>
<property name="provides">UnifiedMetaDataModel</property>
</bean>
-
- <!-- Deployment aspect installers -->
+
+ <bean name="WSJAXBIntroDeploymentAspect" class="org.jboss.wsf.stack.jbws.JAXBIntroDeploymentAspect">
+ <property name="requires">UnifiedMetaDataModel, RuntimeLoader</property>
+ </bean>
+
+ <!-- Deployment aspect installers -->
<!-- Phase 1 -->
<bean name="WSNativeDeploymentAspectInstallerPreJSE" class="org.jboss.wsf.framework.deployment.DeploymentAspectInstaller">
<property name="manager"><inject bean="WSDeploymentAspectManagerPreJSE"/></property>
@@ -98,6 +102,7 @@
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
<inject bean="WSNativeEagerInitializeDeploymentAspect"/>
+ <inject bean="WSJAXBIntroDeploymentAspect"/>
</set>
</property>
<depends>WSDeploymentAspectInstallerPostJSE</depends>
@@ -115,6 +120,7 @@
<inject bean="WSNativePublishContractDeploymentAspect"/>
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
+ <inject bean="WSJAXBIntroDeploymentAspect"/>
</set>
</property>
<depends>WSDeploymentAspectInstallerEJB</depends>
@@ -132,6 +138,7 @@
<inject bean="WSNativePublishContractDeploymentAspect"/>
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
+ <inject bean="WSJAXBIntroDeploymentAspect"/>
</set>
</property>
<depends>WSDeploymentAspectInstallerEndpointAPI</depends>
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros (from rev 4594, stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros)
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,116 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
-
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.namespace.QName;
-
-/**
- * <p>Java class for UserType complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType name="UserType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="string" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * <element name="qname" type="{http://www.w3.org/2001/XMLSchema}QName"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
-@XmlRootElement(namespace = "http://org.jboss.ws/provider", name = "user")
-(a)XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "UserType", propOrder = { "string", "qname" })
-public class AnnotatedUserType
-{
-
- @XmlAttribute(required = true)
- protected String string;
- @XmlElement(required = true)
- protected QName qname;
-
- /**
- * Gets the value of the string property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getString()
- {
- return string;
- }
-
- /**
- * Sets the value of the string property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setString(String value)
- {
- this.string = value;
- }
-
- /**
- * Gets the value of the qname property.
- *
- * @return
- * possible object is
- * {@link javax.xml.namespace.QName }
- *
- */
- public QName getQname()
- {
- return qname;
- }
-
- /**
- * Sets the value of the qname property.
- *
- * @param value
- * allowed object is
- * {@link javax.xml.namespace.QName }
- *
- */
- public void setQname(QName value)
- {
- this.qname = value;
- }
-
-}
-
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java (from rev 4594, stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,116 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.namespace.QName;
+
+/**
+ * <p>Java class for UserType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="UserType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="string" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="qname" type="{http://www.w3.org/2001/XMLSchema}QName"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlRootElement(namespace = "http://org.jboss.ws/provider", name = "user")
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "UserType", propOrder = { "string", "qname" })
+public class AnnotatedUserType
+{
+
+ @XmlAttribute(required = true)
+ protected String string;
+ @XmlElement(required = true)
+ protected QName qname;
+
+ /**
+ * Gets the value of the string property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getString()
+ {
+ return string;
+ }
+
+ /**
+ * Sets the value of the string property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setString(String value)
+ {
+ this.string = value;
+ }
+
+ /**
+ * Gets the value of the qname property.
+ *
+ * @return
+ * possible object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public QName getQname()
+ {
+ return qname;
+ }
+
+ /**
+ * Sets the value of the qname property.
+ *
+ * @param value
+ * allowed object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public void setQname(QName value)
+ {
+ this.qname = value;
+ }
+
+}
+
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,77 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
-
-import com.sun.xml.bind.api.JAXBRIContext;
-import junit.framework.TestCase;
-import org.jboss.jaxb.intros.IntroductionsAnnotationReader;
-import org.jboss.jaxb.intros.IntroductionsConfigParser;
-import org.jboss.jaxb.intros.configmodel.JaxbIntros;
-
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBElement;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.transform.stream.StreamSource;
-import java.io.ByteArrayInputStream;
-import java.io.FileInputStream;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * @author Heiko.Braun(a)jboss.com
- * @version $Revision$
- */
-public class AnnotationReaderTestCase extends TestCase
-{
- public void testUnmarshal() throws Exception
- {
- String reqString =
- " <ns1:user xmlns:ns1='http://org.jboss.ws/provider' string='Kermit'>" +
- " <qname>The Frog</qname>" +
- " </ns1:user>";
-
- JaxbIntros config = IntroductionsConfigParser.parseConfig(
- new FileInputStream("resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml")
- );
-
- IntroductionsAnnotationReader reader = new IntroductionsAnnotationReader(config);
- Map<String, Object> jaxbConfig = new HashMap<String, Object>();
-
- jaxbConfig.put(JAXBRIContext.DEFAULT_NAMESPACE_REMAP, "http://org.jboss.ws/provider");
- jaxbConfig.put(JAXBRIContext.ANNOTATION_READER, reader);
-
- JAXBContext jaxbContext = JAXBContext.newInstance(new Class[] {UserType.class}, jaxbConfig);
- Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
-
- JAXBElement jbe = unmarshaller.unmarshal(
- new StreamSource(
- new ByteArrayInputStream(reqString.getBytes())
-
- ), UserType.class
- );
-
- UserType ut = (UserType)jbe.getValue();
- assertEquals("Kermit", ut.getString());
- assertEquals("The Frog", ut.getQname().getLocalPart());
-
- }
-}
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java (from rev 4594, stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,77 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import com.sun.xml.bind.api.JAXBRIContext;
+import junit.framework.TestCase;
+import org.jboss.jaxb.intros.IntroductionsAnnotationReader;
+import org.jboss.jaxb.intros.IntroductionsConfigParser;
+import org.jboss.jaxb.intros.configmodel.JaxbIntros;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.transform.stream.StreamSource;
+import java.io.ByteArrayInputStream;
+import java.io.FileInputStream;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public class AnnotationReaderTestCase extends TestCase
+{
+ public void testUnmarshal() throws Exception
+ {
+ String reqString =
+ " <ns1:user xmlns:ns1='http://org.jboss.ws/provider' string='Kermit'>" +
+ " <qname>The Frog</qname>" +
+ " </ns1:user>";
+
+ JaxbIntros config = IntroductionsConfigParser.parseConfig(
+ new FileInputStream("resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml")
+ );
+
+ IntroductionsAnnotationReader reader = new IntroductionsAnnotationReader(config);
+ Map<String, Object> jaxbConfig = new HashMap<String, Object>();
+
+ jaxbConfig.put(JAXBRIContext.DEFAULT_NAMESPACE_REMAP, "http://org.jboss.ws/provider");
+ jaxbConfig.put(JAXBRIContext.ANNOTATION_READER, reader);
+
+ JAXBContext jaxbContext = JAXBContext.newInstance(new Class[] {UserType.class}, jaxbConfig);
+ Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
+
+ JAXBElement jbe = unmarshaller.unmarshal(
+ new StreamSource(
+ new ByteArrayInputStream(reqString.getBytes())
+
+ ), UserType.class
+ );
+
+ UserType ut = (UserType)jbe.getValue();
+ assertEquals("Kermit", ut.getString());
+ assertEquals("The Frog", ut.getQname().getLocalPart());
+
+ }
+}
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,93 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
-
-import junit.framework.Test;
-import org.jboss.wsf.common.DOMUtils;
-import org.jboss.wsf.test.JBossWSTest;
-import org.jboss.wsf.test.JBossWSTestSetup;
-import org.w3c.dom.Element;
-
-import javax.xml.bind.JAXBContext;
-import javax.xml.namespace.QName;
-import javax.xml.soap.MessageFactory;
-import javax.xml.soap.SOAPConnection;
-import javax.xml.soap.SOAPConnectionFactory;
-import javax.xml.soap.SOAPEnvelope;
-import javax.xml.soap.SOAPMessage;
-import javax.xml.transform.dom.DOMSource;
-import java.io.ByteArrayInputStream;
-import java.net.URL;
-
-/**
- * Test the JAXBIntroduction features.
- *
- * jaxb-intros.xml can reside under META-INF or WEB-INF and should be
- * picked up by JAXBIntroduction deployment aspect.
- *
- * On the server side the default JAXBContextFactory takes it into consideration.
- * The client side is still missing this feature.
- *
- * @author heiko.braun(a)jboss.com
- */
-public class JAXBIntroTestCase extends JBossWSTest
-{
- public static Test suite()
- {
- return new JBossWSTestSetup(JAXBIntroTestCase.class, "jaxws-jaxbintros.war");
- }
-
- public void testWSDLAccess() throws Exception
- {
- URL wsdlURL = new URL("http://" + getServerHost() + ":8080/jaxws-jaxbintros/ProviderEndpoint?wsdl");
- Element wsdl = DOMUtils.parse(wsdlURL.openStream());
- assertNotNull(wsdl);
- }
-
- public void testProviderMessage() throws Exception
- {
- String reqString =
- "<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>" +
- " <env:Header/>" +
- " <env:Body>" +
- " <ns1:user xmlns:ns1='http://org.jboss.ws/provider' string='Kermit'>" +
- " <qname>The Frog</qname>" +
- " </ns1:user>" +
- " </env:Body>" +
- "</env:Envelope>";
-
- MessageFactory msgFactory = MessageFactory.newInstance();
- SOAPConnection con = SOAPConnectionFactory.newInstance().createConnection();
- SOAPMessage reqMsg = msgFactory.createMessage(null, new ByteArrayInputStream(reqString.getBytes()));
-
- URL epURL = new URL("http://" + getServerHost() + ":8080/jaxws-jaxbintros/ProviderEndpoint");
- SOAPMessage resMsg = con.call(reqMsg, epURL);
- SOAPEnvelope resEnv = resMsg.getSOAPPart().getEnvelope();
-
- Element child = (Element)resEnv.getBody().getChildElements().next();
- JAXBContext jc = JAXBContext.newInstance(new Class[]{AnnotatedUserType.class});
- AnnotatedUserType user = (AnnotatedUserType)jc.createUnmarshaller().unmarshal(new DOMSource(child));
-
- assertEquals("Kermit", user.getString());
- assertEquals(new QName("The Frog"), user.getQname());
- }
-}
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java (from rev 4594, stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,93 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import junit.framework.Test;
+import org.jboss.wsf.common.DOMUtils;
+import org.jboss.wsf.test.JBossWSTest;
+import org.jboss.wsf.test.JBossWSTestSetup;
+import org.w3c.dom.Element;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.namespace.QName;
+import javax.xml.soap.MessageFactory;
+import javax.xml.soap.SOAPConnection;
+import javax.xml.soap.SOAPConnectionFactory;
+import javax.xml.soap.SOAPEnvelope;
+import javax.xml.soap.SOAPMessage;
+import javax.xml.transform.dom.DOMSource;
+import java.io.ByteArrayInputStream;
+import java.net.URL;
+
+/**
+ * Test the JAXBIntroduction features.
+ *
+ * jaxb-intros.xml can reside under META-INF or WEB-INF and should be
+ * picked up by JAXBIntroduction deployment aspect.
+ *
+ * On the server side the default JAXBContextFactory takes it into consideration.
+ * The client side is still missing this feature.
+ *
+ * @author heiko.braun(a)jboss.com
+ */
+public class JAXBIntroTestCase extends JBossWSTest
+{
+ public static Test suite()
+ {
+ return new JBossWSTestSetup(JAXBIntroTestCase.class, "jaxws-jaxbintros.war");
+ }
+
+ public void testWSDLAccess() throws Exception
+ {
+ URL wsdlURL = new URL("http://" + getServerHost() + ":8080/jaxws-jaxbintros/ProviderEndpoint?wsdl");
+ Element wsdl = DOMUtils.parse(wsdlURL.openStream());
+ assertNotNull(wsdl);
+ }
+
+ public void testProviderMessage() throws Exception
+ {
+ String reqString =
+ "<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>" +
+ " <env:Header/>" +
+ " <env:Body>" +
+ " <ns1:user xmlns:ns1='http://org.jboss.ws/provider' string='Kermit'>" +
+ " <qname>The Frog</qname>" +
+ " </ns1:user>" +
+ " </env:Body>" +
+ "</env:Envelope>";
+
+ MessageFactory msgFactory = MessageFactory.newInstance();
+ SOAPConnection con = SOAPConnectionFactory.newInstance().createConnection();
+ SOAPMessage reqMsg = msgFactory.createMessage(null, new ByteArrayInputStream(reqString.getBytes()));
+
+ URL epURL = new URL("http://" + getServerHost() + ":8080/jaxws-jaxbintros/ProviderEndpoint");
+ SOAPMessage resMsg = con.call(reqMsg, epURL);
+ SOAPEnvelope resEnv = resMsg.getSOAPPart().getEnvelope();
+
+ Element child = (Element)resEnv.getBody().getChildElements().next();
+ JAXBContext jc = JAXBContext.newInstance(new Class[]{AnnotatedUserType.class});
+ AnnotatedUserType user = (AnnotatedUserType)jc.createUnmarshaller().unmarshal(new DOMSource(child));
+
+ assertEquals("Kermit", user.getString());
+ assertEquals(new QName("The Frog"), user.getQname());
+ }
+}
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,80 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
-
-import org.jboss.logging.Logger;
-import org.jboss.ws.core.jaxws.JAXBContextFactory;
-import org.jboss.wsf.common.DOMWriter;
-
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBElement;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.util.JAXBSource;
-import javax.xml.transform.Source;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.ws.Provider;
-import javax.xml.ws.Service;
-import javax.xml.ws.ServiceMode;
-import javax.xml.ws.WebServiceException;
-import javax.xml.ws.WebServiceProvider;
-
-/**
- * Test the JAXBBindingCustomization that rely on JAXBIntrodcutions
- *
- * @author heiko.braun(a)jboss.com
- */
-@WebServiceProvider(serviceName = "ProviderService", portName = "ProviderPort", targetNamespace = "http://org.jboss.ws/provider", wsdlLocation = "WEB-INF/wsdl/Provider.wsdl")
-@ServiceMode(value = Service.Mode.PAYLOAD)
-public class ProviderBeanJAXB implements Provider<Source>
-{
- // provide logging
- private static Logger log = Logger.getLogger(ProviderBeanJAXB.class);
-
- public Source invoke(Source request)
- {
- try
- {
- DOMSource dsource = (DOMSource)request;
- String payload = DOMWriter.printNode(dsource.getNode(), true);
-
- System.out.println("Payload: \n" + payload);
-
- // defaults to CustomizableJAXBContextFactory, which takes BindingCustomizations into consideration
- JAXBContext jc = JAXBContextFactory.newInstance().createContext(new Class[] { UserType.class });
- Unmarshaller unmarshaller = jc.createUnmarshaller();
- JAXBElement jbe = unmarshaller.unmarshal(request, UserType.class);
- UserType user = (UserType)jbe.getValue();
-
- log.info("[string=" + user.getString() + ",qname=" + user.getQname() + "]");
-
- return new JAXBSource(jc, user);
- }
- catch (RuntimeException rte)
- {
- throw rte;
- }
- catch (Exception e)
- {
- throw new WebServiceException(e);
- }
- }
-}
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java (from rev 4594, stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,80 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import org.jboss.logging.Logger;
+import org.jboss.ws.core.jaxws.JAXBContextFactory;
+import org.jboss.wsf.common.DOMWriter;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.bind.util.JAXBSource;
+import javax.xml.transform.Source;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.ws.Provider;
+import javax.xml.ws.Service;
+import javax.xml.ws.ServiceMode;
+import javax.xml.ws.WebServiceException;
+import javax.xml.ws.WebServiceProvider;
+
+/**
+ * Test the JAXBBindingCustomization that rely on JAXBIntrodcutions
+ *
+ * @author heiko.braun(a)jboss.com
+ */
+@WebServiceProvider(serviceName = "ProviderService", portName = "ProviderPort", targetNamespace = "http://org.jboss.ws/provider", wsdlLocation = "WEB-INF/wsdl/Provider.wsdl")
+@ServiceMode(value = Service.Mode.PAYLOAD)
+public class ProviderBeanJAXB implements Provider<Source>
+{
+ // provide logging
+ private static Logger log = Logger.getLogger(ProviderBeanJAXB.class);
+
+ public Source invoke(Source request)
+ {
+ try
+ {
+ DOMSource dsource = (DOMSource)request;
+ String payload = DOMWriter.printNode(dsource.getNode(), true);
+
+ System.out.println("Payload: \n" + payload);
+
+ // defaults to CustomizableJAXBContextFactory, which takes BindingCustomizations into consideration
+ JAXBContext jc = JAXBContextFactory.newInstance().createContext(new Class[] { UserType.class });
+ Unmarshaller unmarshaller = jc.createUnmarshaller();
+ JAXBElement jbe = unmarshaller.unmarshal(request, UserType.class);
+ UserType user = (UserType)jbe.getValue();
+
+ log.info("[string=" + user.getString() + ",qname=" + user.getQname() + "]");
+
+ return new JAXBSource(jc, user);
+ }
+ catch (RuntimeException rte)
+ {
+ throw rte;
+ }
+ catch (Exception e)
+ {
+ throw new WebServiceException(e);
+ }
+ }
+}
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,104 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
-
-import javax.xml.namespace.QName;
-
-/**
- * <p>Java class for UserType complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType name="UserType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="string" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * <element name="qname" type="{http://www.w3.org/2001/XMLSchema}QName"/>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
-public class UserType
-{
- protected String string;
-
- protected QName qname;
-
- /**
- * Gets the value of the string property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getString()
- {
- return string;
- }
-
- /**
- * Sets the value of the string property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setString(String value)
- {
- this.string = value;
- }
-
- /**
- * Gets the value of the qname property.
- *
- * @return
- * possible object is
- * {@link javax.xml.namespace.QName }
- *
- */
- public QName getQname()
- {
- return qname;
- }
-
- /**
- * Sets the value of the qname property.
- *
- * @param value
- * allowed object is
- * {@link javax.xml.namespace.QName }
- *
- */
- public void setQname(QName value)
- {
- this.qname = value;
- }
-
-}
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java (from rev 4594, stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,104 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import javax.xml.namespace.QName;
+
+/**
+ * <p>Java class for UserType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="UserType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="string" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="qname" type="{http://www.w3.org/2001/XMLSchema}QName"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+public class UserType
+{
+ protected String string;
+
+ protected QName qname;
+
+ /**
+ * Gets the value of the string property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getString()
+ {
+ return string;
+ }
+
+ /**
+ * Sets the value of the string property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setString(String value)
+ {
+ this.string = value;
+ }
+
+ /**
+ * Gets the value of the qname property.
+ *
+ * @return
+ * possible object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public QName getQname()
+ {
+ return qname;
+ }
+
+ /**
+ * Sets the value of the qname property.
+ *
+ * @param value
+ * allowed object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public void setQname(QName value)
+ {
+ this.qname = value;
+ }
+
+}
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros)
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF)
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,43 +0,0 @@
-<?xml version='1.0'?>
-<definitions name='ProviderService' targetNamespace='http://org.jboss.ws/provider' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/provider' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
- <types>
- <xs:schema targetNamespace='http://org.jboss.ws/provider' xmlns:tns='http://org.jboss.ws/provider' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
- <xs:element name='user' type='tns:UserType'/>
- <xs:complexType name='UserType'>
- <xs:sequence>
- <xs:element name='string' type='xs:string'/>
- <xs:element name='qname' type='xs:QName'/>
- </xs:sequence>
- </xs:complexType>
- </xs:schema>
- </types>
- <message name='echo'>
- <part element='tns:user' name='user'/>
- </message>
- <message name='echoResponse'>
- <part element='tns:user' name='user'/>
- </message>
- <portType name='Provider'>
- <operation name='echo'>
- <input message='tns:echo'/>
- <output message='tns:echoResponse'/>
- </operation>
- </portType>
- <binding name='ProviderBinding' type='tns:Provider'>
- <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
- <operation name='echo'>
- <soap:operation soapAction=''/>
- <input>
- <soap:body use='literal'/>
- </input>
- <output>
- <soap:body use='literal'/>
- </output>
- </operation>
- </binding>
- <service name='ProviderService'>
- <port binding='tns:ProviderBinding' name='ProviderPort'>
- <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
- </port>
- </service>
-</definitions>
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,43 @@
+<?xml version='1.0'?>
+<definitions name='ProviderService' targetNamespace='http://org.jboss.ws/provider' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/provider' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
+ <types>
+ <xs:schema targetNamespace='http://org.jboss.ws/provider' xmlns:tns='http://org.jboss.ws/provider' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
+ <xs:element name='user' type='tns:UserType'/>
+ <xs:complexType name='UserType'>
+ <xs:sequence>
+ <xs:element name='string' type='xs:string'/>
+ <xs:element name='qname' type='xs:QName'/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ </types>
+ <message name='echo'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <message name='echoResponse'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <portType name='Provider'>
+ <operation name='echo'>
+ <input message='tns:echo'/>
+ <output message='tns:echoResponse'/>
+ </operation>
+ </portType>
+ <binding name='ProviderBinding' type='tns:Provider'>
+ <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
+ <operation name='echo'>
+ <soap:operation soapAction=''/>
+ <input>
+ <soap:body use='literal'/>
+ </input>
+ <output>
+ <soap:body use='literal'/>
+ </output>
+ </operation>
+ </binding>
+ <service name='ProviderService'>
+ <port binding='tns:ProviderBinding' name='ProviderPort'>
+ <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
+ </port>
+ </service>
+</definitions>
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,33 +0,0 @@
-<?xml version = "1.0" encoding = "UTF-8"?>
-<jaxb-intros xmlns="http://www.jboss.org/xsd/jaxb/intros" default-namespace="http://org.jboss.ws/provider">
-
- <!--
- The XSD for the schema can be found at:
- http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/extras/jaxbintr...
- Register it against the http://www.jboss.org/xsd/jaxb/intros namespace in your IDE and away you go :-)
- -->
-
- <!--
- Note: how the "name" attributes on class, field and method configs can be regular expressions.
- -->
-
- <!--
-@XmlRootElement(namespace = "http://org.jboss.ws/provider", name = "user")
-(a)XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "UserType", propOrder = { "string", "qname" })
-public class UserType {}
- -->
-
- <!--
- The type namespaces on the customerOrder are different from the rest of the message...
- -->
- <Class name="org.jboss.test.ws.jaxws.jaxbintros.UserType">
- <XmlAccessorType value="FIELD"/>
- <XmlRootElement name="user" namespace="http://org.jboss.ws/provider"/>
-
- <Field name="string">
- <XmlAttribute />
- </Field>
- </Class>
-
-</jaxb-intros>
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,33 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jaxb-intros xmlns="http://www.jboss.org/xsd/jaxb/intros" default-namespace="http://org.jboss.ws/provider">
+
+ <!--
+ The XSD for the schema can be found at:
+ http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/extras/jaxbintr...
+ Register it against the http://www.jboss.org/xsd/jaxb/intros namespace in your IDE and away you go :-)
+ -->
+
+ <!--
+ Note: how the "name" attributes on class, field and method configs can be regular expressions.
+ -->
+
+ <!--
+@XmlRootElement(namespace = "http://org.jboss.ws/provider", name = "user")
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "UserType", propOrder = { "string", "qname" })
+public class UserType {}
+ -->
+
+ <!--
+ The type namespaces on the customerOrder are different from the rest of the message...
+ -->
+ <Class name="org.jboss.test.ws.jaxws.jaxbintros.UserType">
+ <XmlAccessorType value="FIELD"/>
+ <XmlRootElement name="user" namespace="http://org.jboss.ws/provider"/>
+
+ <Field name="string">
+ <XmlAttribute />
+ </Field>
+ </Class>
+
+</jaxb-intros>
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <servlet>
- <servlet-name>ProviderEndpoint</servlet-name>
- <servlet-class>org.jboss.test.ws.jaxws.jaxbintros.ProviderBeanJAXB</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>ProviderEndpoint</servlet-name>
- <url-pattern>/ProviderEndpoint</url-pattern>
- </servlet-mapping>
-
-</web-app>
-
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+ version="2.4">
+
+ <servlet>
+ <servlet-name>ProviderEndpoint</servlet-name>
+ <servlet-class>org.jboss.test.ws.jaxws.jaxbintros.ProviderBeanJAXB</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>ProviderEndpoint</servlet-name>
+ <url-pattern>/ProviderEndpoint</url-pattern>
+ </servlet-mapping>
+
+</web-app>
+
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl)
Deleted: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl 2007-09-19 19:19:52 UTC (rev 4594)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl 2007-09-19 19:55:00 UTC (rev 4596)
@@ -1,43 +0,0 @@
-<?xml version='1.0'?>
-<definitions name='ProviderService' targetNamespace='http://org.jboss.ws/provider' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/provider' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
- <types>
- <xs:schema targetNamespace='http://org.jboss.ws/provider' xmlns:tns='http://org.jboss.ws/provider' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
- <xs:element name='user' type='tns:UserType'/>
- <xs:complexType name='UserType'>
- <xs:sequence>
- <xs:element name='string' type='xs:string'/>
- <xs:element name='qname' type='xs:QName'/>
- </xs:sequence>
- </xs:complexType>
- </xs:schema>
- </types>
- <message name='echo'>
- <part element='tns:user' name='user'/>
- </message>
- <message name='echoResponse'>
- <part element='tns:user' name='user'/>
- </message>
- <portType name='Provider'>
- <operation name='echo'>
- <input message='tns:echo'/>
- <output message='tns:echoResponse'/>
- </operation>
- </portType>
- <binding name='ProviderBinding' type='tns:Provider'>
- <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
- <operation name='echo'>
- <soap:operation soapAction=''/>
- <input>
- <soap:body use='literal'/>
- </input>
- <output>
- <soap:body use='literal'/>
- </output>
- </operation>
- </binding>
- <service name='ProviderService'>
- <port binding='tns:ProviderBinding' name='ProviderPort'>
- <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
- </port>
- </service>
-</definitions>
Copied: stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl (from rev 4594, stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl)
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl (rev 0)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl 2007-09-19 19:55:00 UTC (rev 4596)
@@ -0,0 +1,43 @@
+<?xml version='1.0'?>
+<definitions name='ProviderService' targetNamespace='http://org.jboss.ws/provider' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/provider' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
+ <types>
+ <xs:schema targetNamespace='http://org.jboss.ws/provider' xmlns:tns='http://org.jboss.ws/provider' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
+ <xs:element name='user' type='tns:UserType'/>
+ <xs:complexType name='UserType'>
+ <xs:sequence>
+ <xs:element name='string' type='xs:string'/>
+ <xs:element name='qname' type='xs:QName'/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ </types>
+ <message name='echo'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <message name='echoResponse'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <portType name='Provider'>
+ <operation name='echo'>
+ <input message='tns:echo'/>
+ <output message='tns:echoResponse'/>
+ </operation>
+ </portType>
+ <binding name='ProviderBinding' type='tns:Provider'>
+ <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
+ <operation name='echo'>
+ <soap:operation soapAction=''/>
+ <input>
+ <soap:body use='literal'/>
+ </input>
+ <output>
+ <soap:body use='literal'/>
+ </output>
+ </operation>
+ </binding>
+ <service name='ProviderService'>
+ <port binding='tns:ProviderBinding' name='ProviderPort'>
+ <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
+ </port>
+ </service>
+</definitions>
Modified: stack/native/tags/jbossws-native-2.0.1.SP1/version.properties
===================================================================
--- stack/native/tags/jbossws-native-2.0.1.SP1/version.properties 2007-09-19 19:25:10 UTC (rev 4595)
+++ stack/native/tags/jbossws-native-2.0.1.SP1/version.properties 2007-09-19 19:55:00 UTC (rev 4596)
@@ -5,8 +5,8 @@
specification.vendor=JBoss (http://www.jboss.org)
specification.version=jbossws-2.0
-version.id=2.0.1.GA
-repository.id=2.0.1.GA
+version.id=2.0.1.GA_SP1
+repository.id=2.0.1.GA_SP1
implementation.title=JBoss Web Services - Native
implementation.url=http://www.jboss.org/products/jbossws
@@ -66,6 +66,7 @@
jboss-security=4.0.5.GA
jboss-vfs=2.0.0.Beta2
jbossas-core-libs=4.2.0.GA
+jaxbintros=1.0.0.beta1
junit=3.8.1
oswego-concurrent=1.3.4
qdox=1.4
17 years, 4 months
JBossWS SVN: r4595 - stack/native/tags.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-19 15:25:10 -0400 (Wed, 19 Sep 2007)
New Revision: 4595
Added:
stack/native/tags/jbossws-native-2.0.1.SP1/
Log:
create a service pack for esb deployments
Copied: stack/native/tags/jbossws-native-2.0.1.SP1 (from rev 4594, stack/native/tags/jbossws-native-2.0.1.GA)
17 years, 4 months
JBossWS SVN: r4594 - in stack/native/trunk: ant-import and 9 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-19 15:19:52 -0400 (Wed, 19 Sep 2007)
New Revision: 4594
Added:
stack/native/trunk/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java
stack/native/trunk/src/test/resources/jaxws/jaxbintros/
stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/
stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl
stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml
stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml
stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/
stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl
Modified:
stack/native/trunk/ant-import-tests/build-jars-jaxws.xml
stack/native/trunk/ant-import-tests/build-testsuite.xml
stack/native/trunk/ant-import/build-thirdparty.xml
stack/native/trunk/build.xml
stack/native/trunk/src/main/resources/jbossws-native-config.xml
stack/native/trunk/version.properties
Log:
Added a JAXBIntroduction test case
Modified: stack/native/trunk/ant-import/build-thirdparty.xml
===================================================================
--- stack/native/trunk/ant-import/build-thirdparty.xml 2007-09-19 19:08:10 UTC (rev 4593)
+++ stack/native/trunk/ant-import/build-thirdparty.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -87,6 +87,7 @@
<get src="${jboss.repository}/jboss/jboss-vfs/${jboss-vfs}/lib/jboss-vfs-sources.jar" dest="${thirdparty.dir}/jboss-vfs-sources.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/jbossxb/${jboss-jbossxb-jboss42}/lib/jboss-xml-binding.jar" dest="${thirdparty.dir}/jboss-xml-binding.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/jbossxb/${jboss-jbossxb-jboss42}/lib/jboss-xml-binding-sources.jar" dest="${thirdparty.dir}/jboss-xml-binding-sources.jar" usetimestamp="true" verbose="true"/>
+ <get src="${jboss.repository}/jboss/jaxbintros/${jaxbintros}/lib/jboss-jaxb-intros.jar" dest="${thirdparty.dir}/jboss-jaxb-intros.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/microcontainer/${jboss-microcontainer}/lib/jboss-container.jar" dest="${thirdparty.dir}/jboss-container.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/microcontainer/${jboss-microcontainer}/lib/jboss-dependency.jar" dest="${thirdparty.dir}/jboss-dependency.jar" usetimestamp="true" verbose="true"/>
<get src="${jboss.repository}/jboss/microcontainer/${jboss-microcontainer}/lib/jboss-deployers.jar" dest="${thirdparty.dir}/jboss-deployers.jar" usetimestamp="true" verbose="true"/>
@@ -164,6 +165,7 @@
<pathelement location="${thirdparty.dir}/xalan.jar"/>
<pathelement location="${thirdparty.dir}/xmlsec.jar"/>
<pathelement location="${thirdparty.dir}/xercesImpl.jar"/>
+ <pathelement location="${thirdparty.dir}/jboss-jaxb-intros.jar"/>
</path>
</target>
Modified: stack/native/trunk/ant-import-tests/build-jars-jaxws.xml
===================================================================
--- stack/native/trunk/ant-import-tests/build-jars-jaxws.xml 2007-09-19 19:08:10 UTC (rev 4593)
+++ stack/native/trunk/ant-import-tests/build-jars-jaxws.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -119,7 +119,19 @@
</classes>
</war>
- <!-- jaxws-jbws771 -->
+ <!-- jaxws-jaxbintros -->
+ <war warfile="${tests.output.dir}/libs/jaxws-jaxbintros.war" webxml="${tests.output.dir}/resources/jaxws/jaxbintros/WEB-INF/web.xml">
+ <classes dir="${tests.output.dir}/classes">
+ <include name="org/jboss/test/ws/jaxws/jaxbintros/**/*.class"/>
+ </classes>
+
+ <webinf dir="${tests.output.dir}/resources/jaxws/jaxbintros/WEB-INF">
+ <include name="*.xml"/>
+ <include name="**/*.wsdl"/>
+ </webinf>
+ </war>
+
+ <!-- jaxws-jbws771 -->
<jar destfile="${tests.output.dir}/libs/jaxws-jbws771.jar">
<fileset dir="${tests.output.dir}/classes">
<include name="org/jboss/test/ws/jaxws/jbws771/*.class"/>
Modified: stack/native/trunk/ant-import-tests/build-testsuite.xml
===================================================================
--- stack/native/trunk/ant-import-tests/build-testsuite.xml 2007-09-19 19:08:10 UTC (rev 4593)
+++ stack/native/trunk/ant-import-tests/build-testsuite.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -46,6 +46,7 @@
<pathelement location="${core.dir}/thirdparty/wsdl4j.jar"/>
<pathelement location="${core.dir}/thirdparty/wstx.jar"/>
<pathelement location="${core.dir}/thirdparty/xmlunit.jar"/>
+ <pathelement location="${core.dir}/thirdparty/jboss-jaxb-intros.jar"/>
</path>
<!-- The jBPM BPEL classpath -->
Modified: stack/native/trunk/build.xml
===================================================================
--- stack/native/trunk/build.xml 2007-09-19 19:08:10 UTC (rev 4593)
+++ stack/native/trunk/build.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -233,6 +233,7 @@
<include name="wsdl4j.jar"/>
<include name="xmlsec.jar"/>
<include name="wstx.jar"/>
+ <include name="jboss-jaxb-intros.jar"/>
</fileset>
<metainf dir="${core.dir}/src/main/resources/standard-config">
<include name="standard-*-config.xml"/>
@@ -281,6 +282,7 @@
<include name="wsdl4j.jar"/>
<include name="xmlsec.jar"/>
<include name="wstx.jar"/>
+ <include name="jboss-jaxb-intros.jar"/>
</fileset>
<fileset dir="${core.output.lib.dir}/jbossws-native42">
<include name="jbossws.beans/**"/>
@@ -328,6 +330,7 @@
<include name="wsdl4j.jar"/>
<include name="xmlsec.jar"/>
<include name="wstx.jar"/>
+ <include name="jboss-jaxb-intros.jar"/>
</fileset>
<fileset dir="${core.output.lib.dir}/jbossws-native40">
<include name="jbossws.beans/**"/>
Added: stack/native/trunk/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java (rev 0)
+++ stack/native/trunk/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,96 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.wsf.stack.jbws;
+
+import com.sun.xml.bind.api.JAXBRIContext;
+import org.jboss.jaxb.intros.IntroductionsAnnotationReader;
+import org.jboss.jaxb.intros.IntroductionsConfigParser;
+import org.jboss.jaxb.intros.configmodel.JaxbIntros;
+import org.jboss.logging.Logger;
+import org.jboss.ws.core.jaxws.JAXBBindingCustomization;
+import org.jboss.wsf.spi.binding.BindingCustomization;
+import org.jboss.wsf.spi.deployment.Deployment;
+import org.jboss.wsf.spi.deployment.DeploymentAspect;
+import org.jboss.wsf.spi.deployment.Endpoint;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public class JAXBIntroDeploymentAspect extends DeploymentAspect
+{
+ private static Logger logger = Logger.getLogger(JAXBIntroDeploymentAspect.class);
+
+ public void create(Deployment deployment)
+ {
+
+ InputStream introsConfigStream = null;
+
+ try { // META-INF first
+ ClassLoader classLoader = deployment.getRuntimeClassLoader();
+ introsConfigStream = classLoader.getResource("META-INF/jaxb-intros.xml").openStream();
+ } catch (Exception e) {}
+
+ if(null == introsConfigStream)
+ {
+ try { // WEB-INF second
+
+ ClassLoader classLoader = deployment.getRuntimeClassLoader();
+ introsConfigStream = classLoader.getResource("WEB-INF/jaxb-intros.xml").openStream();
+ } catch (Exception e) {
+ return;
+ }
+ }
+
+ try {
+ if(introsConfigStream != null) {
+ JaxbIntros jaxbIntros = IntroductionsConfigParser.parseConfig(introsConfigStream);
+ IntroductionsAnnotationReader annotationReader = new IntroductionsAnnotationReader(jaxbIntros);
+ String defaultNamespace = jaxbIntros.getDefaultNamespace();
+ BindingCustomization jaxbCustomizations = new JAXBBindingCustomization();
+
+ jaxbCustomizations.put(JAXBRIContext.ANNOTATION_READER, annotationReader);
+ if(defaultNamespace != null) {
+ jaxbCustomizations.put(JAXBRIContext.DEFAULT_NAMESPACE_REMAP, defaultNamespace);
+ }
+
+ // ServerEndpointMetaData#getBindingCustomization becomes the consumer later on
+ for(Endpoint endpoint : deployment.getService().getEndpoints())
+ {
+ endpoint.addAttachment(BindingCustomization.class, jaxbCustomizations);
+ }
+
+ }
+ } finally {
+ if(introsConfigStream != null) {
+ try {
+ introsConfigStream.close();
+ } catch (IOException e) {
+ logger.error("[" + deployment.getService().getContextRoot() + "] Error closing JAXB Introductions Configurations stream ", e);
+ }
+ }
+ }
+ }
+}
Property changes on: stack/native/trunk/src/main/java/org/jboss/wsf/stack/jbws/JAXBIntroDeploymentAspect.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/resources/jbossws-native-config.xml
===================================================================
--- stack/native/trunk/src/main/resources/jbossws-native-config.xml 2007-09-19 19:08:10 UTC (rev 4593)
+++ stack/native/trunk/src/main/resources/jbossws-native-config.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -73,8 +73,12 @@
<property name="requires">RuntimeLoader, ContainerMetaData, URLPattern, VFSRoot</property>
<property name="provides">UnifiedMetaDataModel</property>
</bean>
-
- <!-- Deployment aspect installers -->
+
+ <bean name="WSJAXBIntroDeploymentAspect" class="org.jboss.wsf.stack.jbws.JAXBIntroDeploymentAspect">
+ <property name="requires">UnifiedMetaDataModel, RuntimeLoader</property>
+ </bean>
+
+ <!-- Deployment aspect installers -->
<!-- Phase 1 -->
<bean name="WSNativeDeploymentAspectInstallerPreJSE" class="org.jboss.wsf.framework.deployment.DeploymentAspectInstaller">
<property name="manager"><inject bean="WSDeploymentAspectManagerPreJSE"/></property>
@@ -98,6 +102,7 @@
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
<inject bean="WSNativeEagerInitializeDeploymentAspect"/>
+ <inject bean="WSJAXBIntroDeploymentAspect"/>
</set>
</property>
<depends>WSDeploymentAspectInstallerPostJSE</depends>
@@ -115,6 +120,7 @@
<inject bean="WSNativePublishContractDeploymentAspect"/>
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
+ <inject bean="WSJAXBIntroDeploymentAspect"/>
</set>
</property>
<depends>WSDeploymentAspectInstallerEJB</depends>
@@ -132,6 +138,7 @@
<inject bean="WSNativePublishContractDeploymentAspect"/>
<inject bean="WSNativeServiceEndpointInvokerDeploymentAspect"/>
<inject bean="WSNativeUnifiedMetaDataDeploymentAspect"/>
+ <inject bean="WSJAXBIntroDeploymentAspect"/>
</set>
</property>
<depends>WSDeploymentAspectInstallerEndpointAPI</depends>
Added: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java (rev 0)
+++ stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,116 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.namespace.QName;
+
+/**
+ * <p>Java class for UserType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="UserType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="string" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="qname" type="{http://www.w3.org/2001/XMLSchema}QName"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlRootElement(namespace = "http://org.jboss.ws/provider", name = "user")
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "UserType", propOrder = { "string", "qname" })
+public class AnnotatedUserType
+{
+
+ @XmlAttribute(required = true)
+ protected String string;
+ @XmlElement(required = true)
+ protected QName qname;
+
+ /**
+ * Gets the value of the string property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getString()
+ {
+ return string;
+ }
+
+ /**
+ * Sets the value of the string property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setString(String value)
+ {
+ this.string = value;
+ }
+
+ /**
+ * Gets the value of the qname property.
+ *
+ * @return
+ * possible object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public QName getQname()
+ {
+ return qname;
+ }
+
+ /**
+ * Sets the value of the qname property.
+ *
+ * @param value
+ * allowed object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public void setQname(QName value)
+ {
+ this.qname = value;
+ }
+
+}
+
Property changes on: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotatedUserType.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java (rev 0)
+++ stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,77 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import com.sun.xml.bind.api.JAXBRIContext;
+import junit.framework.TestCase;
+import org.jboss.jaxb.intros.IntroductionsAnnotationReader;
+import org.jboss.jaxb.intros.IntroductionsConfigParser;
+import org.jboss.jaxb.intros.configmodel.JaxbIntros;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.transform.stream.StreamSource;
+import java.io.ByteArrayInputStream;
+import java.io.FileInputStream;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public class AnnotationReaderTestCase extends TestCase
+{
+ public void testUnmarshal() throws Exception
+ {
+ String reqString =
+ " <ns1:user xmlns:ns1='http://org.jboss.ws/provider' string='Kermit'>" +
+ " <qname>The Frog</qname>" +
+ " </ns1:user>";
+
+ JaxbIntros config = IntroductionsConfigParser.parseConfig(
+ new FileInputStream("resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml")
+ );
+
+ IntroductionsAnnotationReader reader = new IntroductionsAnnotationReader(config);
+ Map<String, Object> jaxbConfig = new HashMap<String, Object>();
+
+ jaxbConfig.put(JAXBRIContext.DEFAULT_NAMESPACE_REMAP, "http://org.jboss.ws/provider");
+ jaxbConfig.put(JAXBRIContext.ANNOTATION_READER, reader);
+
+ JAXBContext jaxbContext = JAXBContext.newInstance(new Class[] {UserType.class}, jaxbConfig);
+ Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
+
+ JAXBElement jbe = unmarshaller.unmarshal(
+ new StreamSource(
+ new ByteArrayInputStream(reqString.getBytes())
+
+ ), UserType.class
+ );
+
+ UserType ut = (UserType)jbe.getValue();
+ assertEquals("Kermit", ut.getString());
+ assertEquals("The Frog", ut.getQname().getLocalPart());
+
+ }
+}
Property changes on: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/AnnotationReaderTestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java (rev 0)
+++ stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,93 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import junit.framework.Test;
+import org.jboss.wsf.common.DOMUtils;
+import org.jboss.wsf.test.JBossWSTest;
+import org.jboss.wsf.test.JBossWSTestSetup;
+import org.w3c.dom.Element;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.namespace.QName;
+import javax.xml.soap.MessageFactory;
+import javax.xml.soap.SOAPConnection;
+import javax.xml.soap.SOAPConnectionFactory;
+import javax.xml.soap.SOAPEnvelope;
+import javax.xml.soap.SOAPMessage;
+import javax.xml.transform.dom.DOMSource;
+import java.io.ByteArrayInputStream;
+import java.net.URL;
+
+/**
+ * Test the JAXBIntroduction features.
+ *
+ * jaxb-intros.xml can reside under META-INF or WEB-INF and should be
+ * picked up by JAXBIntroduction deployment aspect.
+ *
+ * On the server side the default JAXBContextFactory takes it into consideration.
+ * The client side is still missing this feature.
+ *
+ * @author heiko.braun(a)jboss.com
+ */
+public class JAXBIntroTestCase extends JBossWSTest
+{
+ public static Test suite()
+ {
+ return new JBossWSTestSetup(JAXBIntroTestCase.class, "jaxws-jaxbintros.war");
+ }
+
+ public void testWSDLAccess() throws Exception
+ {
+ URL wsdlURL = new URL("http://" + getServerHost() + ":8080/jaxws-jaxbintros/ProviderEndpoint?wsdl");
+ Element wsdl = DOMUtils.parse(wsdlURL.openStream());
+ assertNotNull(wsdl);
+ }
+
+ public void testProviderMessage() throws Exception
+ {
+ String reqString =
+ "<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>" +
+ " <env:Header/>" +
+ " <env:Body>" +
+ " <ns1:user xmlns:ns1='http://org.jboss.ws/provider' string='Kermit'>" +
+ " <qname>The Frog</qname>" +
+ " </ns1:user>" +
+ " </env:Body>" +
+ "</env:Envelope>";
+
+ MessageFactory msgFactory = MessageFactory.newInstance();
+ SOAPConnection con = SOAPConnectionFactory.newInstance().createConnection();
+ SOAPMessage reqMsg = msgFactory.createMessage(null, new ByteArrayInputStream(reqString.getBytes()));
+
+ URL epURL = new URL("http://" + getServerHost() + ":8080/jaxws-jaxbintros/ProviderEndpoint");
+ SOAPMessage resMsg = con.call(reqMsg, epURL);
+ SOAPEnvelope resEnv = resMsg.getSOAPPart().getEnvelope();
+
+ Element child = (Element)resEnv.getBody().getChildElements().next();
+ JAXBContext jc = JAXBContext.newInstance(new Class[]{AnnotatedUserType.class});
+ AnnotatedUserType user = (AnnotatedUserType)jc.createUnmarshaller().unmarshal(new DOMSource(child));
+
+ assertEquals("Kermit", user.getString());
+ assertEquals(new QName("The Frog"), user.getQname());
+ }
+}
Property changes on: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/JAXBIntroTestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java (rev 0)
+++ stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,80 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import org.jboss.logging.Logger;
+import org.jboss.ws.core.jaxws.JAXBContextFactory;
+import org.jboss.wsf.common.DOMWriter;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.bind.util.JAXBSource;
+import javax.xml.transform.Source;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.ws.Provider;
+import javax.xml.ws.Service;
+import javax.xml.ws.ServiceMode;
+import javax.xml.ws.WebServiceException;
+import javax.xml.ws.WebServiceProvider;
+
+/**
+ * Test the JAXBBindingCustomization that rely on JAXBIntrodcutions
+ *
+ * @author heiko.braun(a)jboss.com
+ */
+@WebServiceProvider(serviceName = "ProviderService", portName = "ProviderPort", targetNamespace = "http://org.jboss.ws/provider", wsdlLocation = "WEB-INF/wsdl/Provider.wsdl")
+@ServiceMode(value = Service.Mode.PAYLOAD)
+public class ProviderBeanJAXB implements Provider<Source>
+{
+ // provide logging
+ private static Logger log = Logger.getLogger(ProviderBeanJAXB.class);
+
+ public Source invoke(Source request)
+ {
+ try
+ {
+ DOMSource dsource = (DOMSource)request;
+ String payload = DOMWriter.printNode(dsource.getNode(), true);
+
+ System.out.println("Payload: \n" + payload);
+
+ // defaults to CustomizableJAXBContextFactory, which takes BindingCustomizations into consideration
+ JAXBContext jc = JAXBContextFactory.newInstance().createContext(new Class[] { UserType.class });
+ Unmarshaller unmarshaller = jc.createUnmarshaller();
+ JAXBElement jbe = unmarshaller.unmarshal(request, UserType.class);
+ UserType user = (UserType)jbe.getValue();
+
+ log.info("[string=" + user.getString() + ",qname=" + user.getQname() + "]");
+
+ return new JAXBSource(jc, user);
+ }
+ catch (RuntimeException rte)
+ {
+ throw rte;
+ }
+ catch (Exception e)
+ {
+ throw new WebServiceException(e);
+ }
+ }
+}
Property changes on: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/ProviderBeanJAXB.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java (rev 0)
+++ stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,104 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.jaxws.jaxbintros;
+
+import javax.xml.namespace.QName;
+
+/**
+ * <p>Java class for UserType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="UserType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="string" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="qname" type="{http://www.w3.org/2001/XMLSchema}QName"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+public class UserType
+{
+ protected String string;
+
+ protected QName qname;
+
+ /**
+ * Gets the value of the string property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getString()
+ {
+ return string;
+ }
+
+ /**
+ * Sets the value of the string property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setString(String value)
+ {
+ this.string = value;
+ }
+
+ /**
+ * Gets the value of the qname property.
+ *
+ * @return
+ * possible object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public QName getQname()
+ {
+ return qname;
+ }
+
+ /**
+ * Sets the value of the qname property.
+ *
+ * @param value
+ * allowed object is
+ * {@link javax.xml.namespace.QName }
+ *
+ */
+ public void setQname(QName value)
+ {
+ this.qname = value;
+ }
+
+}
Property changes on: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jaxbintros/UserType.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl (rev 0)
+++ stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,43 @@
+<?xml version='1.0'?>
+<definitions name='ProviderService' targetNamespace='http://org.jboss.ws/provider' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/provider' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
+ <types>
+ <xs:schema targetNamespace='http://org.jboss.ws/provider' xmlns:tns='http://org.jboss.ws/provider' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
+ <xs:element name='user' type='tns:UserType'/>
+ <xs:complexType name='UserType'>
+ <xs:sequence>
+ <xs:element name='string' type='xs:string'/>
+ <xs:element name='qname' type='xs:QName'/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ </types>
+ <message name='echo'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <message name='echoResponse'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <portType name='Provider'>
+ <operation name='echo'>
+ <input message='tns:echo'/>
+ <output message='tns:echoResponse'/>
+ </operation>
+ </portType>
+ <binding name='ProviderBinding' type='tns:Provider'>
+ <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
+ <operation name='echo'>
+ <soap:operation soapAction=''/>
+ <input>
+ <soap:body use='literal'/>
+ </input>
+ <output>
+ <soap:body use='literal'/>
+ </output>
+ </operation>
+ </binding>
+ <service name='ProviderService'>
+ <port binding='tns:ProviderBinding' name='ProviderPort'>
+ <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
+ </port>
+ </service>
+</definitions>
Property changes on: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/Provider.wsdl
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml (rev 0)
+++ stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,33 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jaxb-intros xmlns="http://www.jboss.org/xsd/jaxb/intros" default-namespace="http://org.jboss.ws/provider">
+
+ <!--
+ The XSD for the schema can be found at:
+ http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/extras/jaxbintr...
+ Register it against the http://www.jboss.org/xsd/jaxb/intros namespace in your IDE and away you go :-)
+ -->
+
+ <!--
+ Note: how the "name" attributes on class, field and method configs can be regular expressions.
+ -->
+
+ <!--
+@XmlRootElement(namespace = "http://org.jboss.ws/provider", name = "user")
+(a)XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "UserType", propOrder = { "string", "qname" })
+public class UserType {}
+ -->
+
+ <!--
+ The type namespaces on the customerOrder are different from the rest of the message...
+ -->
+ <Class name="org.jboss.test.ws.jaxws.jaxbintros.UserType">
+ <XmlAccessorType value="FIELD"/>
+ <XmlRootElement name="user" namespace="http://org.jboss.ws/provider"/>
+
+ <Field name="string">
+ <XmlAttribute />
+ </Field>
+ </Class>
+
+</jaxb-intros>
Property changes on: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/jaxb-intros.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml (rev 0)
+++ stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+ version="2.4">
+
+ <servlet>
+ <servlet-name>ProviderEndpoint</servlet-name>
+ <servlet-class>org.jboss.test.ws.jaxws.jaxbintros.ProviderBeanJAXB</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>ProviderEndpoint</servlet-name>
+ <url-pattern>/ProviderEndpoint</url-pattern>
+ </servlet-mapping>
+
+</web-app>
+
Property changes on: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/web.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl
===================================================================
--- stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl (rev 0)
+++ stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl 2007-09-19 19:19:52 UTC (rev 4594)
@@ -0,0 +1,43 @@
+<?xml version='1.0'?>
+<definitions name='ProviderService' targetNamespace='http://org.jboss.ws/provider' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/provider' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
+ <types>
+ <xs:schema targetNamespace='http://org.jboss.ws/provider' xmlns:tns='http://org.jboss.ws/provider' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
+ <xs:element name='user' type='tns:UserType'/>
+ <xs:complexType name='UserType'>
+ <xs:sequence>
+ <xs:element name='string' type='xs:string'/>
+ <xs:element name='qname' type='xs:QName'/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ </types>
+ <message name='echo'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <message name='echoResponse'>
+ <part element='tns:user' name='user'/>
+ </message>
+ <portType name='Provider'>
+ <operation name='echo'>
+ <input message='tns:echo'/>
+ <output message='tns:echoResponse'/>
+ </operation>
+ </portType>
+ <binding name='ProviderBinding' type='tns:Provider'>
+ <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
+ <operation name='echo'>
+ <soap:operation soapAction=''/>
+ <input>
+ <soap:body use='literal'/>
+ </input>
+ <output>
+ <soap:body use='literal'/>
+ </output>
+ </operation>
+ </binding>
+ <service name='ProviderService'>
+ <port binding='tns:ProviderBinding' name='ProviderPort'>
+ <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
+ </port>
+ </service>
+</definitions>
Property changes on: stack/native/trunk/src/test/resources/jaxws/jaxbintros/WEB-INF/wsdl/Provider.wsdl
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/version.properties
===================================================================
--- stack/native/trunk/version.properties 2007-09-19 19:08:10 UTC (rev 4593)
+++ stack/native/trunk/version.properties 2007-09-19 19:19:52 UTC (rev 4594)
@@ -5,8 +5,8 @@
specification.vendor=JBoss (http://www.jboss.org)
specification.version=jbossws-2.0
-version.id=2.1.0.DEV
-repository.id=snapshot
+version.id=2.0.1.GA_SP1
+repository.id=2.0.1.GA_SP1
implementation.title=JBoss Web Services - Native
implementation.url=http://www.jboss.org/products/jbossws
@@ -66,6 +66,7 @@
jboss-security=4.0.5.GA
jboss-vfs=2.0.0.Beta2
jbossas-core-libs=4.2.0.GA
+jaxbintros=1.0.0.beta1
junit=3.8.1
oswego-concurrent=1.3.4
qdox=1.4
17 years, 4 months
JBossWS SVN: r4593 - in stack/native/branches/ropalka/trunk/src: main/java/org/jboss/ws/metadata and 6 other directories.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2007-09-19 15:08:10 -0400 (Wed, 19 Sep 2007)
New Revision: 4593
Added:
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/DeliveryAssuranceMetaData.java
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/MessageStoreMetaData.java
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/PortMetaData.java
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ProviderMetaData.java
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ReliableMessagingMetaData.java
Removed:
stack/native/branches/ropalka/trunk/src/main/resources/schema/jboss-ws-rm_1.0.xsd
Modified:
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/core/utils/JBossWSEntityResolver.java
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/CommonConfig.java
stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/binding/OMFactoryJAXWS.java
stack/native/branches/ropalka/trunk/src/main/resources/schema/jaxws-config_2_0.xsd
stack/native/branches/ropalka/trunk/src/test/java/org/jboss/test/ws/common/config/ConfigFactoryTestCase.java
stack/native/branches/ropalka/trunk/src/test/resources/common/config/jaxws-endpoint-config.xml
Log:
implementing wsrm configuration + extending ConfigFactoryTestCase to test this new configuration
Modified: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/core/utils/JBossWSEntityResolver.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/core/utils/JBossWSEntityResolver.java 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/core/utils/JBossWSEntityResolver.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -48,7 +48,6 @@
{
registerEntity("urn:jboss:jaxrpc-config:2.0", "schema/jaxrpc-config_2_0.xsd");
registerEntity("urn:jboss:jaxws-config:2.0", "schema/jaxws-config_2_0.xsd");
- registerEntity("http://www.jboss.com/ws-rm/config", "schema/jboss-ws-rm_1.0.xsd");
registerEntity("http://java.sun.com/xml/ns/javaee", "schema/javaee_web_services_1_2.xsd");
registerEntity("http://www.w3.org/2005/08/addressing", "schema/ws-addr.xsd");
registerEntity("http://schemas.xmlsoap.org/ws/2004/08/eventing", "eventing.xsd");
Modified: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/CommonConfig.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/CommonConfig.java 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/CommonConfig.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -30,6 +30,7 @@
import org.jboss.ws.metadata.umdm.EndpointMetaData;
import org.jboss.ws.metadata.umdm.HandlerMetaData;
+import org.jboss.ws.metadata.wsrm.ReliableMessagingMetaData;
import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerMetaData.HandlerType;
/**
@@ -41,6 +42,7 @@
public abstract class CommonConfig
{
private String configName;
+ private ReliableMessagingMetaData wsrmCfg;
private List<URI> features = new ArrayList<URI>();
private List<EndpointProperty> properties = new ArrayList<EndpointProperty>();
@@ -64,7 +66,7 @@
{
return hasFeature(nameToURI(uri));
}
-
+
public void setFeature(String type, boolean enabled) {
if(enabled) {
@@ -74,6 +76,16 @@
features.remove(nameToURI(type));
}
+ public void setReliableMessaging(ReliableMessagingMetaData wsrmCfg)
+ {
+ this.wsrmCfg = wsrmCfg;
+ }
+
+ public ReliableMessagingMetaData getReliableMessaging()
+ {
+ return this.wsrmCfg;
+ }
+
public void addProperty(String name, String value)
{
EndpointProperty p = new EndpointProperty();
Modified: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/binding/OMFactoryJAXWS.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/binding/OMFactoryJAXWS.java 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/config/binding/OMFactoryJAXWS.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -23,6 +23,8 @@
//$Id$
+import javax.xml.namespace.QName;
+
import org.jboss.logging.Logger;
import org.jboss.ws.metadata.config.EndpointProperty;
import org.jboss.ws.metadata.config.jaxws.ClientConfigJAXWS;
@@ -30,10 +32,18 @@
import org.jboss.ws.metadata.config.jaxws.ConfigRootJAXWS;
import org.jboss.ws.metadata.config.jaxws.EndpointConfigJAXWS;
import org.jboss.ws.metadata.config.jaxws.HandlerChainsConfigJAXWS;
+import org.jboss.ws.metadata.wsrm.DeliveryAssuranceMetaData;
+import org.jboss.ws.metadata.wsrm.MessageStoreMetaData;
+import org.jboss.ws.metadata.wsrm.PortMetaData;
+import org.jboss.ws.metadata.wsrm.ProviderMetaData;
+import org.jboss.ws.metadata.wsrm.ReliableMessagingMetaData;
import org.jboss.wsf.spi.metadata.j2ee.serviceref.HandlerChainsObjectFactory;
import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainMetaData;
import org.jboss.xb.binding.UnmarshallingContext;
import org.xml.sax.Attributes;
+import org.jboss.ws.extensions.wsrm.DeliveryAssurance;
+import org.jboss.ws.extensions.wsrm.DeliveryAssuranceFactory;
+import org.jboss.ws.extensions.wsrm.spi.Provider;
/**
* ObjectModelFactory for JAXRPC configurations.
@@ -122,10 +132,117 @@
commonConfig.setPostHandlerChains(postHandlerChains);
return postHandlerChains;
}
+ if ("reliable-messaging".equals(localName))
+ {
+ ReliableMessagingMetaData wsrmCfg = new ReliableMessagingMetaData();
+ commonConfig.setReliableMessaging(wsrmCfg);
+ return wsrmCfg;
+ }
return null;
}
+
+ public Object newChild(ReliableMessagingMetaData wsrmConfig, UnmarshallingContext navigator, String namespaceURI, String localName, Attributes attrs)
+ {
+ int countOfAttributes = attrs.getLength();
+ if (localName.equals("delivery-assurance"))
+ {
+ DeliveryAssuranceMetaData deliveryAssurance = getDeliveryAssurance(attrs);
+ wsrmConfig.setDeliveryAssurance(deliveryAssurance);
+ return deliveryAssurance;
+ }
+ if (localName.equals("provider"))
+ {
+ String specVersion = null;
+ for (int i = 0; i < countOfAttributes; i++)
+ {
+ if (attrs.getLocalName(i).equals("specVersion"))
+ {
+ specVersion = attrs.getValue(i);
+ break;
+ }
+ }
+ ProviderMetaData provider = new ProviderMetaData();
+ provider.setSpecVersion(specVersion);
+ wsrmConfig.setProvider(provider);
+ return provider;
+ }
+ if (localName.equals("message-store"))
+ {
+ String className = null, id = null;
+ for (int i = 0; i < countOfAttributes && (className == null || id == null); i++)
+ {
+ String attrLocalName = attrs.getLocalName(i);
+ if (attrLocalName.equals("id"))
+ id = attrs.getValue(i);
+ if (attrLocalName.equals("class"))
+ className = attrs.getValue(i);
+ }
+
+ MessageStoreMetaData messageStore = new MessageStoreMetaData();
+ messageStore.setId(id);
+ messageStore.setClassName(className);
+ wsrmConfig.setMessageStore(messageStore);
+ return messageStore;
+ }
+ if (localName.equals("port"))
+ {
+ String portName = null;
+ for (int i = 0; i < countOfAttributes; i++)
+ {
+ if (attrs.getLocalName(i).equals("name"))
+ {
+ portName = attrs.getValue(i);
+ break;
+ }
+ }
+ PortMetaData port = new PortMetaData();
+ port.setPortName(QName.valueOf(portName));
+ wsrmConfig.getPorts().add(port);
+ return port;
+ }
+
+ return null;
+ }
+
+ public Object newChild(PortMetaData port, UnmarshallingContext navigator, String namespaceURI, String localName, Attributes attrs)
+ {
+ if (localName.equals("delivery-assurance"))
+ {
+ DeliveryAssuranceMetaData deliveryAssurance = getDeliveryAssurance(attrs);
+ port.setDeliveryAssurance(deliveryAssurance);
+ return deliveryAssurance;
+ }
+
+ return null;
+ }
+
+ private DeliveryAssuranceMetaData getDeliveryAssurance(Attributes attrs)
+ {
+ String inOrder = null, quality = null;
+ for (int i = 0; i < attrs.getLength() && (inOrder == null || quality == null); i++)
+ {
+ String attrLocalName = attrs.getLocalName(i);
+ if (attrLocalName.equals("inOrder"))
+ inOrder = attrs.getValue(i);
+ if (attrLocalName.equals("quality"))
+ quality = attrs.getValue(i);
+ }
+ DeliveryAssuranceMetaData deliveryAssurance = new DeliveryAssuranceMetaData();
+ deliveryAssurance.setQuality(quality);
+ deliveryAssurance.setInOrder(inOrder);
+ return deliveryAssurance;
+ }
+
+ public void setValue(MessageStoreMetaData messageStore, UnmarshallingContext navigator, String namespaceURI, String localName, String value)
+ {
+ if (localName.equals("config-file"))
+ {
+ messageStore.setConfigFile(value);
+ }
+ }
+
/**
* Called when parsing of a new element started.
*/
Added: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/DeliveryAssuranceMetaData.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/DeliveryAssuranceMetaData.java (rev 0)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/DeliveryAssuranceMetaData.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -0,0 +1,61 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.metadata.wsrm;
+
+/**
+ * Delivery assurance metadata
+ *
+ * @author richard.opalka(a)jboss.com
+ */
+public final class DeliveryAssuranceMetaData
+{
+
+ private String quality;
+ private String inOrder;
+
+ public final void setQuality(String quality)
+ {
+ if (quality == null)
+ throw new IllegalArgumentException();
+
+ this.quality = quality;
+ }
+
+ public final String getQuality()
+ {
+ return this.quality;
+ }
+
+ public final void setInOrder(String inOrder)
+ {
+ if (inOrder == null)
+ throw new IllegalArgumentException();
+
+ this.inOrder = inOrder;
+ }
+
+ public final String getInOrder()
+ {
+ return this.inOrder;
+ }
+
+}
Property changes on: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/DeliveryAssuranceMetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/MessageStoreMetaData.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/MessageStoreMetaData.java (rev 0)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/MessageStoreMetaData.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.metadata.wsrm;
+
+/**
+ * Message store metadata
+ *
+ * @author richard.opalka(a)jboss.com
+ */
+public final class MessageStoreMetaData
+{
+
+ private String id;
+ private String className;
+ private String configFile;
+
+ public final void setId(String id)
+ {
+ if (id == null)
+ throw new IllegalArgumentException();
+
+ this.id = id;
+ }
+
+ public final String getId()
+ {
+ return this.id;
+ }
+
+ public final void setClassName(String className)
+ {
+ if (className == null)
+ throw new IllegalArgumentException();
+
+ this.className = className;
+ }
+
+ public final String getClassName()
+ {
+ return this.className;
+ }
+
+ public final void setConfigFile(String configFile)
+ {
+ if (configFile == null)
+ throw new IllegalArgumentException();
+
+ this.configFile = configFile;
+ }
+
+ public final String getConfigFile()
+ {
+ return this.configFile;
+ }
+
+}
Property changes on: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/MessageStoreMetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/PortMetaData.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/PortMetaData.java (rev 0)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/PortMetaData.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -0,0 +1,63 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.metadata.wsrm;
+
+import javax.xml.namespace.QName;
+
+/**
+ * Port customization metadata
+ *
+ * @author richard.opalka(a)jboss.com
+ */
+public final class PortMetaData
+{
+
+ private QName portName;
+ private DeliveryAssuranceMetaData deliveryAssurance;
+
+ public final void setPortName(QName portName)
+ {
+ if (portName == null)
+ throw new IllegalArgumentException();
+
+ this.portName = portName;
+ }
+
+ public final QName getPortName()
+ {
+ return this.portName;
+ }
+
+ public final void setDeliveryAssurance(DeliveryAssuranceMetaData deliveryAssurance)
+ {
+ if (deliveryAssurance == null)
+ throw new IllegalArgumentException();
+
+ this.deliveryAssurance = deliveryAssurance;
+ }
+
+ public final DeliveryAssuranceMetaData getDeliveryAssurance()
+ {
+ return this.deliveryAssurance;
+ }
+
+}
Property changes on: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/PortMetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ProviderMetaData.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ProviderMetaData.java (rev 0)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ProviderMetaData.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.metadata.wsrm;
+
+/**
+ * Reliable messaging provider metadata
+ *
+ * @author richard.opalka(a)jboss.com
+ */
+public final class ProviderMetaData
+{
+
+ private String specVersion;
+
+ public final void setSpecVersion(String specVersion)
+ {
+ if (specVersion == null)
+ throw new IllegalArgumentException();
+
+ this.specVersion = specVersion;
+ }
+
+ public final String getSpecVersion()
+ {
+ return this.specVersion;
+ }
+
+}
Property changes on: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ProviderMetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ReliableMessagingMetaData.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ReliableMessagingMetaData.java (rev 0)
+++ stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ReliableMessagingMetaData.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -0,0 +1,84 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., 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.ws.metadata.wsrm;
+
+import java.util.LinkedList;
+import java.util.List;
+
+/**
+ * Reliable messaging configuration metadata
+ *
+ * @author richard.opalka(a)jboss.com
+ */
+public final class ReliableMessagingMetaData
+{
+
+ private DeliveryAssuranceMetaData deliveryAssurance;
+ private ProviderMetaData provider;
+ private MessageStoreMetaData messageStore;
+ private List<PortMetaData> ports = new LinkedList<PortMetaData>();
+
+ public final void setDeliveryAssurance(DeliveryAssuranceMetaData deliveryAssurance)
+ {
+ if (deliveryAssurance == null)
+ throw new IllegalArgumentException();
+
+ this.deliveryAssurance = deliveryAssurance;
+ }
+
+ public final DeliveryAssuranceMetaData getDeliveryAssurance()
+ {
+ return this.deliveryAssurance;
+ }
+
+ public final void setProvider(ProviderMetaData provider)
+ {
+ if (provider == null)
+ throw new IllegalArgumentException();
+
+ this.provider = provider;
+ }
+
+ public final ProviderMetaData getProvider()
+ {
+ return this.provider;
+ }
+
+ public final void setMessageStore(MessageStoreMetaData messageStore)
+ {
+ if (messageStore == null)
+ throw new IllegalArgumentException();
+
+ this.messageStore = messageStore;
+ }
+
+ public final MessageStoreMetaData getMessageStore()
+ {
+ return this.messageStore;
+ }
+
+ public final List<PortMetaData> getPorts()
+ {
+ return this.ports;
+ }
+
+}
Property changes on: stack/native/branches/ropalka/trunk/src/main/java/org/jboss/ws/metadata/wsrm/ReliableMessagingMetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/branches/ropalka/trunk/src/main/resources/schema/jaxws-config_2_0.xsd
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/resources/schema/jaxws-config_2_0.xsd 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/main/resources/schema/jaxws-config_2_0.xsd 2007-09-19 19:08:10 UTC (rev 4593)
@@ -4,7 +4,6 @@
targetNamespace="urn:jboss:jaxws-config:2.0"
xmlns:tns="urn:jboss:jaxws-config:2.0"
xmlns:javaee="http://java.sun.com/xml/ns/javaee"
- xmlns:wsrm="http://www.jboss.com/ws-rm/config"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified"
@@ -21,8 +20,6 @@
<xsd:import namespace="http://java.sun.com/xml/ns/javaee" schemaLocation="javaee_web_services_1_2.xsd"/>
- <xsd:import namespace="http://www.jboss.com/ws-rm/config" schemaLocation="jboss-ws-rm_1.0.xsd"/>
-
<xsd:element name="jaxws-config" type="tns:jaxwsConfigType"/>
<xsd:complexType name="jaxwsConfigType">
<xsd:choice>
@@ -46,7 +43,7 @@
<xsd:complexType name="commonConfigType">
<xsd:sequence>
<xsd:element name="config-name" type="xsd:string"/>
- <xsd:element name="reliable-messaging" type="wsrm:rmConfigType" minOccurs="0"/>
+ <xsd:element name="reliable-messaging" type="tns:rmConfigType" minOccurs="0"/>
<xsd:element name="pre-handler-chains" type="javaee:handler-chainsType" minOccurs="0"/>
<xsd:element name="post-handler-chains" type="javaee:handler-chainsType" minOccurs="0"/>
<xsd:element name="feature" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded"/>
@@ -61,4 +58,127 @@
</xsd:sequence>
</xsd:complexType>
+ <!-- WSRM configuration -->
+ <xsd:complexType name="rmConfigType">
+ <xsd:sequence>
+ <xsd:element name="delivery-assurance" type="tns:deliveryAssuranceType" minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ Global WS-RM delivery assurance configuration that applies to all WSDL ports.
+ If there is the WS-Policy with attached WS-RM assertion in WSDL
+ associated with some port or its associated binding it
+ will always override this global configuration.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="provider" type="tns:providerType">
+ <xsd:annotation>
+ <xsd:documentation>
+ WS-RM specification version to be used for reliable messaging.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="message-store" type="tns:msgStoreType">
+ <xsd:annotation>
+ <xsd:documentation>
+ WS-RM message store to be used for reliable messaging.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="port" type="tns:portType" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ WSDL port specific WS-RM delivery assurance configuration.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="msgStoreType">
+ <xsd:sequence>
+ <xsd:element name="config-file" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ Message store specific configuration file.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ Message store identifier.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="class" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ Message store class name providing public default constructor.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="deliveryAssuranceType">
+ <xsd:attribute name="quality" use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ Quality of service to be ensured.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="AtLeastOnce"/>
+ <xsd:enumeration value="AtMostOnce"/>
+ <xsd:enumeration value="ExactlyOnce"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="inOrder" type="xsd:boolean" use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ In order quality of service to be ensured. Set this attribute to 'true' to ensure in order message delivery.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="providerType">
+ <xsd:attribute name="specVersion" use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ WS-RM spec. version to be used for reliable messaging.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="http://docs.oasis-open.org/ws-rx/wsrm/200702"/>
+ <xsd:enumeration value="http://schemas.xmlsoap.org/ws/2005/02/rm"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="portType">
+ <xsd:sequence>
+ <xsd:element name="delivery-assurance" type="tns:deliveryAssuranceType">
+ <xsd:annotation>
+ <xsd:documentation>
+ This WSDL port specific WS-RM delivery assurance configuration
+ applies to all operations on this port.
+ This configuration always overrides the global configuration.
+ If there is the WS-Policy with attached WS-RM assertion in WSDL
+ associated with this port or its associated binding it
+ will always override this port specific configuration.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ WSDL port name specified in the form {namespace}localPart.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
</xsd:schema>
Deleted: stack/native/branches/ropalka/trunk/src/main/resources/schema/jboss-ws-rm_1.0.xsd
===================================================================
--- stack/native/branches/ropalka/trunk/src/main/resources/schema/jboss-ws-rm_1.0.xsd 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/main/resources/schema/jboss-ws-rm_1.0.xsd 2007-09-19 19:08:10 UTC (rev 4593)
@@ -1,135 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.jboss.com/ws-rm/config"
- targetNamespace="http://www.jboss.com/ws-rm/config"
- elementFormDefault="qualified">
- <xs:complexType name="rmConfigType">
- <xs:sequence>
- <xs:element name="delivery-assurance" type="deliveryAssuranceType" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Global WS-RM delivery assurance configuration that applies to all WSDL ports.
- If there is the WS-Policy with attached WS-RM assertion in WSDL
- associated with some port or its associated binding it
- will always override this global configuration.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:element name="provider" type="providerType">
- <xs:annotation>
- <xs:documentation>
- WS-RM specification version to be used for reliable messaging.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:element name="message-store" type="msgStoreType">
- <xs:annotation>
- <xs:documentation>
- WS-RM message store to be used for reliable messaging.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:element name="port" type="portType" minOccurs="0" maxOccurs="unbounded">
- <xs:annotation>
- <xs:documentation>
- WSDL port specific WS-RM delivery assurance configuration.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="msgStoreType">
- <xs:sequence>
- <xs:element name="config-file" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- Message store specific configuration file.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Message store name.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="class" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Message store class name providing public default constructor.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="storeId" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Message store identifier.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="deliveryAssuranceType">
- <xs:attribute name="quality" use="required">
- <xs:annotation>
- <xs:documentation>
- Quality of service to be ensured.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="at-least-once"/>
- <xs:enumeration value="at-most-once"/>
- <xs:enumeration value="exactly-once"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="inOrder" type="xs:boolean" use="required" default="false">
- <xs:annotation>
- <xs:documentation>
- In order quality of service to be ensured. Set this attribute to 'true' to ensure in order message delivery.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="providerType">
- <xs:attribute name="specVersion" use="required">
- <xs:annotation>
- <xs:documentation>
- WS-RM spec. version to be used for reliable messaging.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="http://docs.oasis-open.org/ws-rx/wsrm/200702"/>
- <xs:enumeration value="http://schemas.xmlsoap.org/ws/2005/02/rm"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="portType">
- <xs:sequence>
- <xs:element name="delivery-assurance" type="deliveryAssuranceType">
- <xs:annotation>
- <xs:documentation>
- This WSDL port specific WS-RM delivery assurance configuration
- applies to all operations on this port.
- This configuration always overrides the global configuration.
- If there is the WS-Policy with attached WS-RM assertion in WSDL
- associated with this port or its associated binding it
- will always override this port specific configuration.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- WSDL port name specified in the form {namespace}localPart.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
-</xs:schema>
Modified: stack/native/branches/ropalka/trunk/src/test/java/org/jboss/test/ws/common/config/ConfigFactoryTestCase.java
===================================================================
--- stack/native/branches/ropalka/trunk/src/test/java/org/jboss/test/ws/common/config/ConfigFactoryTestCase.java 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/test/java/org/jboss/test/ws/common/config/ConfigFactoryTestCase.java 2007-09-19 19:08:10 UTC (rev 4593)
@@ -22,7 +22,13 @@
package org.jboss.test.ws.common.config;
import java.io.File;
+import java.util.List;
+import javax.xml.namespace.QName;
+
+import org.jboss.ws.extensions.wsrm.DeliveryAssurance;
+import org.jboss.ws.extensions.wsrm.DeliveryQuality;
+import org.jboss.ws.extensions.wsrm.spi.Provider;
import org.jboss.ws.metadata.config.EndpointProperty;
import org.jboss.ws.metadata.config.JBossWSConfigFactory;
import org.jboss.ws.metadata.config.jaxrpc.CommonConfigJAXRPC;
@@ -30,6 +36,11 @@
import org.jboss.ws.metadata.config.jaxrpc.EndpointConfigJAXRPC;
import org.jboss.ws.metadata.config.jaxws.ConfigRootJAXWS;
import org.jboss.ws.metadata.config.jaxws.EndpointConfigJAXWS;
+import org.jboss.ws.metadata.wsrm.DeliveryAssuranceMetaData;
+import org.jboss.ws.metadata.wsrm.MessageStoreMetaData;
+import org.jboss.ws.metadata.wsrm.PortMetaData;
+import org.jboss.ws.metadata.wsrm.ProviderMetaData;
+import org.jboss.ws.metadata.wsrm.ReliableMessagingMetaData;
import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainMetaData;
import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerMetaData;
import org.jboss.wsf.test.JBossWSTest;
@@ -117,4 +128,34 @@
assertNotNull("Property does not exist", value);
assertEquals("Wrong property valule", value, "5000");
}
+
+ public void testWSRMConfiguration() throws Exception
+ {
+ File confFile = new File("resources/common/config/jaxws-endpoint-config.xml");
+ assertTrue(confFile.exists());
+
+ JBossWSConfigFactory factory = JBossWSConfigFactory.newInstance();
+ ConfigRootJAXWS config = (ConfigRootJAXWS)factory.parse(confFile.toURL());
+ EndpointConfigJAXWS epConfig = (EndpointConfigJAXWS)config.getConfigByName("Standard WSRM Endpoint");
+ ReliableMessagingMetaData wsrmConfig = epConfig.getReliableMessaging();
+ assertNotNull(wsrmConfig);
+ DeliveryAssuranceMetaData deliveryAssurance = wsrmConfig.getDeliveryAssurance();
+ assertEquals(deliveryAssurance.getInOrder(), "true");
+ assertEquals(deliveryAssurance.getQuality(), "AtLeastOnce");
+ ProviderMetaData provider = wsrmConfig.getProvider();
+ assertEquals(provider.getSpecVersion(), "http://docs.oasis-open.org/ws-rx/wsrm/200702");
+ MessageStoreMetaData messageStore = wsrmConfig.getMessageStore();
+ assertEquals(messageStore.getId(), "wsrmStoreId");
+ assertEquals(messageStore.getClassName(), "custom.MessageStoreImpl");
+ assertEquals(messageStore.getConfigFile(), "META-INF/config.xml");
+ List<PortMetaData> ports = wsrmConfig.getPorts();
+ PortMetaData port1 = ports.get(0);
+ assertEquals(port1.getPortName(), new QName("http://custom/namespace/", "Port1"));
+ assertEquals(port1.getDeliveryAssurance().getInOrder(), "false");
+ assertEquals(port1.getDeliveryAssurance().getQuality(), "AtMostOnce");
+ PortMetaData port2 = ports.get(1);
+ assertEquals(port2.getPortName(), new QName("http://custom/namespace/", "Port2"));
+ assertEquals(port2.getDeliveryAssurance().getInOrder(), "true");
+ assertEquals(port2.getDeliveryAssurance().getQuality(), "ExactlyOnce");
+ }
}
Modified: stack/native/branches/ropalka/trunk/src/test/resources/common/config/jaxws-endpoint-config.xml
===================================================================
--- stack/native/branches/ropalka/trunk/src/test/resources/common/config/jaxws-endpoint-config.xml 2007-09-19 17:58:53 UTC (rev 4592)
+++ stack/native/branches/ropalka/trunk/src/test/resources/common/config/jaxws-endpoint-config.xml 2007-09-19 19:08:10 UTC (rev 4593)
@@ -41,4 +41,26 @@
</endpoint-config>
+ <endpoint-config>
+
+ <config-name>Standard WSRM Endpoint</config-name>
+ <reliable-messaging>
+ <delivery-assurance inOrder="true" quality="AtLeastOnce"/>
+ <provider
+ specVersion="http://docs.oasis-open.org/ws-rx/wsrm/200702"/>
+ <message-store
+ id="wsrmStoreId"
+ class="custom.MessageStoreImpl">
+ <config-file>META-INF/config.xml</config-file>
+ </message-store>
+ <port name="{http://custom/namespace/}Port1">
+ <delivery-assurance inOrder="false" quality="AtMostOnce"/>
+ </port>
+ <port name="{http://custom/namespace/}Port2">
+ <delivery-assurance inOrder="true" quality="ExactlyOnce"/>
+ </port>
+ </reliable-messaging>
+
+ </endpoint-config>
+
</jaxws-config>
\ No newline at end of file
17 years, 4 months