You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(233) |
Sep
(199) |
Oct
(206) |
Nov
(185) |
Dec
(270) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(232) |
Feb
(426) |
Mar
(623) |
Apr
(592) |
May
(506) |
Jun
(389) |
Jul
(160) |
Aug
(3) |
Sep
(1) |
Oct
(1) |
Nov
(2) |
Dec
(5) |
2007 |
Jan
(1) |
Feb
(1) |
Mar
(2) |
Apr
(2) |
May
(4) |
Jun
(2) |
Jul
|
Aug
(3) |
Sep
(5) |
Oct
(9) |
Nov
(6) |
Dec
(6) |
2008 |
Jan
(3) |
Feb
|
Mar
(1) |
Apr
(3) |
May
(3) |
Jun
(5) |
Jul
(10) |
Aug
(2) |
Sep
(12) |
Oct
(10) |
Nov
(54) |
Dec
(49) |
2009 |
Jan
(19) |
Feb
(13) |
Mar
(20) |
Apr
(24) |
May
(44) |
Jun
(29) |
Jul
(32) |
Aug
(10) |
Sep
(7) |
Oct
(10) |
Nov
(4) |
Dec
(17) |
2010 |
Jan
(14) |
Feb
(5) |
Mar
(23) |
Apr
(50) |
May
(31) |
Jun
(9) |
Jul
(5) |
Aug
(4) |
Sep
(7) |
Oct
(5) |
Nov
(2) |
Dec
(3) |
2011 |
Jan
(12) |
Feb
(5) |
Mar
(5) |
Apr
(3) |
May
(4) |
Jun
(3) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2012 |
Jan
(1) |
Feb
(2) |
Mar
|
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(4) |
Aug
(1) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2015 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <jbo...@li...> - 2006-07-06 16:32:13
|
Author: roy...@jb... Date: 2006-07-06 12:32:02 -0400 (Thu, 06 Jul 2006) New Revision: 73 Added: portlets/2_4/bundles/HelloWorldPortal.zip Log: JBPORTAL-934 Added: portlets/2_4/bundles/HelloWorldPortal.zip =================================================================== (Binary files differ) Property changes on: portlets/2_4/bundles/HelloWorldPortal.zip ___________________________________________________________________ Name: svn:mime-type + application/octet-stream |
From: <jbo...@li...> - 2006-07-06 15:55:54
|
Author: roy...@jb... Date: 2006-07-06 11:55:39 -0400 (Thu, 06 Jul 2006) New Revision: 72 Added: portlets/2_4/bundles/HelloWorldPortalPage.zip Log: Added: portlets/2_4/bundles/HelloWorldPortalPage.zip =================================================================== (Binary files differ) Property changes on: portlets/2_4/bundles/HelloWorldPortalPage.zip ___________________________________________________________________ Name: svn:mime-type + application/octet-stream |
From: <jbo...@li...> - 2006-07-06 15:55:26
|
Author: roy...@jb... Date: 2006-07-06 11:55:23 -0400 (Thu, 06 Jul 2006) New Revision: 71 Removed: portlets/2_4/bundles/HelloWorldPortalPage.zip Log: Deleted: portlets/2_4/bundles/HelloWorldPortalPage.zip =================================================================== (Binary files differ) |
From: <jbo...@li...> - 2006-07-06 15:16:30
|
Author: mar...@jb... Date: 2006-07-06 11:16:26 -0400 (Thu, 06 Jul 2006) New Revision: 4929 Added: labs/jbossesb/trunk/ESBCore/Tests/build.xml Removed: labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml Log: Copied: labs/jbossesb/trunk/ESBCore/Tests/build.xml (from rev 4927, labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml) Deleted: labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml =================================================================== --- labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml 2006-07-06 15:15:48 UTC (rev 4928) +++ labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml 2006-07-06 15:16:26 UTC (rev 4929) @@ -1,47 +0,0 @@ -<?xml version="1.0"?> -<project name="BuildEsbTests" default="org.jboss.esb.tests.compile" basedir="."> - - <property name="org.jboss.esb.tests.bin.dir" value="${org.jboss.esb.internal.dest}/tests"/> - <property name="org.jboss.esb.core.bin.dir" value="${org.jboss.esb.internal.dest}/classes"/> - <property name="org.jboss.esb.tests.src.dir" value="${basedir}/src"/> - <property name="org.jboss.esb.root.dir" value="../.."/> - <property environment="env"/> - - <property name="org.jboss.esb.ext.lib.dir" value="${org.jboss.esb.root.dir}/lib/ext"/> - <condition property="org.jboss.esb.ext.lib.dir" value="{org.jboss.esb.jboss.home}/client"> - <equals arg1="${org.jboss.esb.frominstall}" arg2="yes"/> - </condition> - - <path id="org.jboss.esb.tests.base.classpath"> - <fileset dir="${org.jboss.esb.ext.lib.dir}" includes="activation.jar jbossall-client.jar log4j.jar mail.jar"/> - <pathelement location="${org.jboss.esb.core.bin.dir}"/> - </path> - - <target name="org.jboss.esb.tests.init"> - <tstamp> - <format property="TODAY" pattern="d-MM-yy"/> - </tstamp> - - <mkdir dir="${org.jboss.esb.tests.bin.dir}"/> - </target> - - <target name="clean"/> - - <target name="purge" depends="clean"> - <delete dir="${org.jboss.esb.tests.bin.dir}"/> - </target> - - <target name="org.jboss.esb.tests.compile" if="org.jboss.esb.buildtests" depends="org.jboss.esb.tests.init"> - - <javac - destdir="${org.jboss.esb.tests.bin.dir}" - classpathref="org.jboss.esb.tests.base.classpath" - debug="${org.jboss.esb.debug}" - optimize="${org.jboss.esb.optimize}" - > - <src path="${org.jboss.esb.tests.src.dir}"/> - </javac> - - </target> - -</project> |
From: <jbo...@li...> - 2006-07-06 15:15:56
|
Author: mar...@jb... Date: 2006-07-06 11:15:48 -0400 (Thu, 06 Jul 2006) New Revision: 4928 Removed: labs/jbossesb/trunk/ESBCore/Tests/build.xml Log: Deleted: labs/jbossesb/trunk/ESBCore/Tests/build.xml =================================================================== --- labs/jbossesb/trunk/ESBCore/Tests/build.xml 2006-07-06 13:28:34 UTC (rev 4927) +++ labs/jbossesb/trunk/ESBCore/Tests/build.xml 2006-07-06 15:15:48 UTC (rev 4928) @@ -1,47 +0,0 @@ -<?xml version="1.0"?> -<project name="BuildEsbTests" default="org.jboss.esb.tests.compile" basedir="."> - - <property name="org.jboss.esb.tests.bin.dir" value="${org.jboss.esb.internal.dest}/tests"/> - <property name="org.jboss.esb.core.bin.dir" value="${org.jboss.esb.internal.dest}/classes"/> - <property name="org.jboss.esb.tests.src.dir" value="${basedir}/src"/> - <property name="org.jboss.esb.root.dir" value="../.."/> - <property environment="env"/> - - <property name="org.jboss.esb.ext.lib.dir" value="${org.jboss.esb.root.dir}/lib/ext"/> - <condition property="org.jboss.esb.ext.lib.dir" value="{org.jboss.esb.jboss.home}/client"> - <equals arg1="${org.jboss.esb.frominstall}" arg2="yes"/> - </condition> - - <path id="org.jboss.esb.tests.base.classpath"> - <fileset dir="${org.jboss.esb.ext.lib.dir}" includes="activation.jar jbossall-client.jar log4j.jar mail.jar"/> - <pathelement location="${org.jboss.esb.core.bin.dir}"/> - </path> - - <target name="org.jboss.esb.tests.init"> - <tstamp> - <format property="TODAY" pattern="d-MM-yy"/> - </tstamp> - - <mkdir dir="${org.jboss.esb.tests.bin.dir}"/> - </target> - - <target name="clean"/> - - <target name="purge" depends="clean"> - <delete dir="${org.jboss.esb.tests.bin.dir}"/> - </target> - - <target name="org.jboss.esb.tests.compile" if="org.jboss.esb.buildtests" depends="org.jboss.esb.tests.init"> - - <javac - destdir="${org.jboss.esb.tests.bin.dir}" - classpathref="org.jboss.esb.tests.base.classpath" - debug="${org.jboss.esb.debug}" - optimize="${org.jboss.esb.optimize}" - > - <src path="${org.jboss.esb.tests.src.dir}"/> - </javac> - - </target> - -</project> |
From: <jbo...@li...> - 2006-07-06 11:39:03
|
Author: hei...@jb... Date: 2006-07-06 07:38:57 -0400 (Thu, 06 Jul 2006) New Revision: 572 Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/server/StandardEndpointServlet.java Log: Fix JBWS-1012 Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/server/StandardEndpointServlet.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/server/StandardEndpointServlet.java 2006-07-06 09:22:09 UTC (rev 571) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/server/StandardEndpointServlet.java 2006-07-06 11:38:57 UTC (rev 572) @@ -24,6 +24,7 @@ // $Id: AbstractServiceEndpointServlet.java 396 2006-05-23 09:48:45Z tho...@jb... $ import java.io.IOException; +import java.io.Writer; import java.net.URL; import javax.management.ObjectName; @@ -95,7 +96,12 @@ } else { - throw new NotImplementedException("HTTP GET not supported"); + res.setStatus(405); + res.setContentType("text/plain"); + Writer out = res.getWriter(); + out.write("HTTP GET not supported"); + out.flush(); + out.close(); } } |
Author: dar...@jb... Date: 2006-07-06 05:22:09 -0400 (Thu, 06 Jul 2006) New Revision: 571 Added: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/sei/InheritenceChildInterface.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/sei/InheritenceParentInterface.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/application-client.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/jboss-client.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/web.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/webservices.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/wstools-config.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/wsdlfixture/InheritenceChildInterfaceService_RPC.wsdl Removed: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/application-client.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/jboss-client.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/web.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/webservices.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/wstools-config.xml Modified: branches/jbossws-1.0.0.GA_JBWS-1028/.project branches/jbossws-1.0.0.GA_JBWS-1028/src/main/java/org/jboss/ws/tools/metadata/ReflectiveMetaDataBuilder.java branches/jbossws-1.0.0.GA_JBWS-1028/src/test/build-jars.xml branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/JavaToWSDL11TestCase.java Log: JBWS-1010 - Merged fix from branch/jbossws-1.0 Modified: branches/jbossws-1.0.0.GA_JBWS-1028/.project =================================================================== --- branches/jbossws-1.0.0.GA_JBWS-1028/.project 2006-07-06 09:17:52 UTC (rev 570) +++ branches/jbossws-1.0.0.GA_JBWS-1028/.project 2006-07-06 09:22:09 UTC (rev 571) @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <projectDescription> - <name>jbossws-1.0.0</name> + <name>jbossws-1.0.0.GA_JBWS-1028</name> <comment></comment> <projects> </projects> Modified: branches/jbossws-1.0.0.GA_JBWS-1028/src/main/java/org/jboss/ws/tools/metadata/ReflectiveMetaDataBuilder.java =================================================================== --- branches/jbossws-1.0.0.GA_JBWS-1028/src/main/java/org/jboss/ws/tools/metadata/ReflectiveMetaDataBuilder.java 2006-07-06 09:17:52 UTC (rev 570) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/main/java/org/jboss/ws/tools/metadata/ReflectiveMetaDataBuilder.java 2006-07-06 09:22:09 UTC (rev 571) @@ -78,7 +78,7 @@ public ToolsEndpointMetaData generate() { - generateOperationMetaData(seiClass.getDeclaredMethods()); + generateOperationMetaData(seiClass.getMethods()); return tmd; } Modified: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/build-jars.xml =================================================================== --- branches/jbossws-1.0.0.GA_JBWS-1028/src/test/build-jars.xml 2006-07-06 09:17:52 UTC (rev 570) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/build-jars.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -288,7 +288,35 @@ <include name="jboss-client.xml"/> </metainf> </jar> - + + <!-- jbossws-jbws1010 --> + <war warfile="${build.test.dir}/libs/jbossws-jbws1010.war" webxml="${build.test.dir}/resources/jbws1010/WEB-INF/web.xml"> + <classes dir="${build.test.dir}/classes"> + <include name="org/jboss/test/ws/jbws1010/InheritenceChildInterface.class"/> + <include name="org/jboss/test/ws/jbws1010/InheritenceParentInterface.class"/> + <include name="org/jboss/test/ws/jbws1010/TestEndpointImpl.class"/> + </classes> + <webinf dir="${build.test.dir}/resources/jbws1010/WEB-INF"> + <include name="webservices.xml"/> + <include name="jaxrpc-mapping.xml"/> + <include name="wsdl/**"/> + </webinf> + </war> + <jar destfile="${build.test.dir}/libs/jbossws-jbws1010-client.jar"> + <fileset dir="${build.test.dir}/classes"> + <include name="org/jboss/test/ws/jbws1010/InheritenceChildInterface.class"/> + <include name="org/jboss/test/ws/jbws1010/InheritenceParentInterface.class"/> + </fileset> + <metainf dir="${build.test.dir}/resources/jbws1010/META-INF"> + <include name="application-client.xml"/> + <include name="jboss-client.xml"/> + </metainf> + <metainf dir="${build.test.dir}/resources/jbws1010/WEB-INF"> + <include name="jaxrpc-mapping.xml"/> + <include name="wsdl/**"/> + </metainf> + </jar> + <!-- jbossws-jbws434 --> <war warfile="${build.test.dir}/libs/jbossws-jbws434.war" webxml="${build.test.resources.dir}/jbws434/WEB-INF/web.xml"> <classes dir="${build.test.dir}/classes"> Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010 (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java =================================================================== --- branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java 2006-07-06 09:22:09 UTC (rev 571) @@ -1,36 +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.jbws1010; - -import java.rmi.RemoteException; - -/** - * - * @author dar...@jb... - * @since 27-June-2006 - */ -public interface InheritenceChildInterface extends InheritenceParentInterface -{ - - public String getB() throws RemoteException; - -} Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/InheritenceChildInterface.java) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java =================================================================== --- branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java 2006-07-06 09:22:09 UTC (rev 571) @@ -1,37 +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.jbws1010; - -import java.rmi.Remote; -import java.rmi.RemoteException; - -/** - * - * @author dar...@jb... - * @since 27 June 2006 - */ -public interface InheritenceParentInterface extends Remote -{ - - public String getA() throws RemoteException; - -} Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/InheritenceParentInterface.java) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java =================================================================== --- branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java 2006-07-06 09:22:09 UTC (rev 571) @@ -1,65 +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.jbws1010; - -import javax.naming.InitialContext; -import javax.xml.rpc.Service; - -import junit.framework.Test; - -import org.jboss.test.ws.JBossWSTest; -import org.jboss.test.ws.JBossWSTestSetup; -import org.jboss.test.ws.jbws231.JBWS231TestCase; - -public class JBWS1010TestCase extends JBossWSTest -{ - - private static InheritenceChildInterface port; - - public static Test suite() throws Exception - { - return JBossWSTestSetup.newTestSetup(JBWS1010TestCase.class, "jbossws-jbws1010.war, jbossws-jbws1010-client.jar"); - } - - public void setUp() throws Exception - { - super.setUp(); - if (port == null) - { - InitialContext iniCtx = getInitialContext(); - Service service = (Service)iniCtx.lookup("java:comp/env/service/TestService"); - port = (InheritenceChildInterface)service.getPort(InheritenceChildInterface.class); - } - } - - public void testGetA() throws Exception - { - String response = port.getA(); - assertEquals("A", response); - } - - public void testGetB() throws Exception - { - String response = port.getB(); - assertEquals("B", response); - } -} Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java) =================================================================== --- branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/JBWS1010TestCase.java 2006-07-06 09:22:09 UTC (rev 571) @@ -0,0 +1,64 @@ +/* + * 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.jbws1010; + +import javax.naming.InitialContext; +import javax.xml.rpc.Service; + +import junit.framework.Test; + +import org.jboss.test.ws.JBossWSTest; +import org.jboss.test.ws.JBossWSTestSetup; + +public class JBWS1010TestCase extends JBossWSTest +{ + + private static InheritenceChildInterface port; + + public static Test suite() throws Exception + { + return JBossWSTestSetup.newTestSetup(JBWS1010TestCase.class, "jbossws-jbws1010.war, jbossws-jbws1010-client.jar"); + } + + public void setUp() throws Exception + { + super.setUp(); + if (port == null) + { + InitialContext iniCtx = getInitialContext(); + Service service = (Service)iniCtx.lookup("java:comp/env/service/TestService"); + port = (InheritenceChildInterface)service.getPort(InheritenceChildInterface.class); + } + } + + public void testGetA() throws Exception + { + String response = port.getA(); + assertEquals("A", response); + } + + public void testGetB() throws Exception + { + String response = port.getB(); + assertEquals("B", response); + } +} Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java =================================================================== --- branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java 2006-07-06 09:22:09 UTC (rev 571) @@ -1,43 +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.jbws1010; - -import java.rmi.RemoteException; - -/** - * - * @author dar...@jb... - * @since 27-June-2006 - */ -public class TestEndpointImpl implements InheritenceChildInterface -{ - - public String getA() throws RemoteException - { - return "A"; - } - - public String getB() throws RemoteException - { - return "B"; - } -} Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jbws1010/TestEndpointImpl.java) Modified: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/JavaToWSDL11TestCase.java =================================================================== --- branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/JavaToWSDL11TestCase.java 2006-07-06 09:17:52 UTC (rev 570) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/JavaToWSDL11TestCase.java 2006-07-06 09:22:09 UTC (rev 571) @@ -28,6 +28,7 @@ import org.jboss.test.ws.jaxb.complex.ComplexTypes; import org.jboss.test.ws.tools.sei.ArrayInterface; import org.jboss.test.ws.tools.sei.CustomInterface; +import org.jboss.test.ws.tools.sei.InheritenceChildInterface; import org.jboss.test.ws.tools.sei.PrimitiveTypes; import org.jboss.test.ws.tools.sei.ServiceException; import org.jboss.test.ws.tools.sei.StandardJavaTypes; @@ -96,6 +97,14 @@ doWSDLTest(seiClass, fixturefile); } + /** Test a SEI that inherits a method from a super-interface. */ + public void testInterfaceInheritence() throws Exception + { + Class seiClass = InheritenceChildInterface.class; + String fixturefile = "resources/wsdlfixture/InheritenceChildInterfaceService_RPC.wsdl"; + doWSDLTest(seiClass, fixturefile); + } + private void doWSDLTest(Class seiClass, String fixturefile) throws Exception { File wsdlDir = new File("./tools/wsdl-out"); Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/sei/InheritenceChildInterface.java (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/tools/sei/InheritenceChildInterface.java) Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/java/org/jboss/test/ws/tools/sei/InheritenceParentInterface.java (from rev 511, branches/jbossws-1.0/src/test/java/org/jboss/test/ws/tools/sei/InheritenceParentInterface.java) Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010 (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010) Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/META-INF) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/application-client.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/META-INF/application-client.xml 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/application-client.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<application-client 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/application-client_1_4.xsd" - version="1.4"> - - <display-name>HelloService</display-name> - - <service-ref> - <service-ref-name>service/TestService</service-ref-name> - <service-interface>javax.xml.rpc.Service</service-interface> - <wsdl-file>META-INF/wsdl/TestService.wsdl</wsdl-file> - <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file> - <port-component-ref> - <service-endpoint-interface>org.jboss.test.ws.jbws1010.InheritenceChildInterface</service-endpoint-interface> - </port-component-ref> - </service-ref> - -</application-client> - Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/application-client.xml (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/META-INF/application-client.xml) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/jboss-client.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/META-INF/jboss-client.xml 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/jboss-client.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -1,15 +0,0 @@ -<?xml version='1.0' encoding='UTF-8' ?> - -<!DOCTYPE jboss-client PUBLIC - "-//JBoss//DTD Application Client 4.0//EN" - "http://www.jboss.org/j2ee/dtd/jboss-client_4_0.dtd"> - -<jboss-client> - <jndi-name>jbossws-client</jndi-name> - - <service-ref> - <service-ref-name>service/TestService</service-ref-name> - <wsdl-override>http://@jbosstest.host.name@:8080/jbossws-jbws1010?wsdl</wsdl-override> - </service-ref> - -</jboss-client> Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/META-INF/jboss-client.xml (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/META-INF/jboss-client.xml) Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -1,37 +0,0 @@ -<?xml version='1.0' encoding='UTF-8'?><java-wsdl-mapping version='1.1' 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://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd'> - <package-mapping> - <package-type>org.jboss.test.ws.jbws1010</package-type> - <namespaceURI>http://org.jboss.test.ws/jbws1010/types</namespaceURI> - </package-mapping> - <service-interface-mapping> - <service-interface>org.jboss.test.ws.jbws1010.TestService</service-interface> - <wsdl-service-name xmlns:serviceNS='http://org.jboss.test.ws/jbws1010'>serviceNS:TestService</wsdl-service-name> - <port-mapping> - <port-name>InheritenceChildInterfacePort</port-name> - <java-port-name>InheritenceChildInterfacePort</java-port-name> - </port-mapping> - </service-interface-mapping> - <service-endpoint-interface-mapping> - <service-endpoint-interface>org.jboss.test.ws.jbws1010.InheritenceChildInterface</service-endpoint-interface> - <wsdl-port-type xmlns:portTypeNS='http://org.jboss.test.ws/jbws1010'>portTypeNS:InheritenceChildInterface</wsdl-port-type> - <wsdl-binding xmlns:bindingNS='http://org.jboss.test.ws/jbws1010'>bindingNS:InheritenceChildInterfaceBinding</wsdl-binding> - <service-endpoint-method-mapping> - <java-method-name>getB</java-method-name> - <wsdl-operation>getB</wsdl-operation> - <wsdl-return-value-mapping> - <method-return-value>java.lang.String</method-return-value> - <wsdl-message xmlns:wsdlMsgNS='http://org.jboss.test.ws/jbws1010'>wsdlMsgNS:InheritenceChildInterface_getBResponse</wsdl-message> - <wsdl-message-part-name>result</wsdl-message-part-name> - </wsdl-return-value-mapping> - </service-endpoint-method-mapping> - <service-endpoint-method-mapping> - <java-method-name>getA</java-method-name> - <wsdl-operation>getA</wsdl-operation> - <wsdl-return-value-mapping> - <method-return-value>java.lang.String</method-return-value> - <wsdl-message xmlns:wsdlMsgNS='http://org.jboss.test.ws/jbws1010'>wsdlMsgNS:InheritenceChildInterface_getAResponse</wsdl-message> - <wsdl-message-part-name>result</wsdl-message-part-name> - </wsdl-return-value-mapping> - </service-endpoint-method-mapping> - </service-endpoint-interface-mapping> -</java-wsdl-mapping> \ No newline at end of file Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/jaxrpc-mapping.xml) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/web.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/web.xml 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/web.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -1,17 +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>TestEndpoint</servlet-name> - <servlet-class>org.jboss.test.ws.jbws1010.TestEndpointImpl</servlet-class> - </servlet> - <servlet-mapping> - <servlet-name>TestEndpoint</servlet-name> - <url-pattern>/*</url-pattern> - </servlet-mapping> -</web-app> - Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/web.xml (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/web.xml) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/webservices.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/webservices.xml 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/webservices.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -1,15 +0,0 @@ -<webservices version='1.1' xmlns='http://java.sun.com/xml/ns/j2ee' xmlns:impl='http://org.jboss.test.ws/jbws1010' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd'> - <webservice-description> - <webservice-description-name>TestService</webservice-description-name> - <wsdl-file>WEB-INF/wsdl/TestService.wsdl</wsdl-file> - <jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file> - <port-component> - <port-component-name>InheritenceChildInterfacePort</port-component-name> - <wsdl-port>impl:InheritenceChildInterfacePort</wsdl-port> - <service-endpoint-interface>org.jboss.test.ws.jbws1010.InheritenceChildInterface</service-endpoint-interface> - <service-impl-bean> - <servlet-link>TestEndpoint</servlet-link> - </service-impl-bean> - </port-component> - </webservice-description> -</webservices> \ No newline at end of file Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/webservices.xml (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/webservices.xml) Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/wsdl) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl 2006-07-06 09:22:09 UTC (rev 571) @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<definitions name='TestService' targetNamespace='http://org.jboss.test.ws/jbws1010' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.test.ws/jbws1010' xmlns:xsd='http://www.w3.org/2001/XMLSchema'> - <types/> - <message name='InheritenceChildInterface_getA'/> - <message name='InheritenceChildInterface_getAResponse'> - <part name='result' type='xsd:string'/> - </message> - <message name='InheritenceChildInterface_getB'/> - <message name='InheritenceChildInterface_getBResponse'> - <part name='result' type='xsd:string'/> - </message> - <portType name='InheritenceChildInterface'> - <operation name='getA'> - <input message='tns:InheritenceChildInterface_getA'/> - <output message='tns:InheritenceChildInterface_getAResponse'/> - </operation> - <operation name='getB'> - <input message='tns:InheritenceChildInterface_getB'/> - <output message='tns:InheritenceChildInterface_getBResponse'/> - </operation> - </portType> - <binding name='InheritenceChildInterfaceBinding' type='tns:InheritenceChildInterface'> - <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/> - <operation name='getA'> - <soap:operation soapAction=''/> - <input> - <soap:body namespace='http://org.jboss.test.ws/jbws1010' use='literal'/> - </input> - <output> - <soap:body namespace='http://org.jboss.test.ws/jbws1010' use='literal'/> - </output> - </operation> - <operation name='getB'> - <soap:operation soapAction=''/> - <input> - <soap:body namespace='http://org.jboss.test.ws/jbws1010' use='literal'/> - </input> - <output> - <soap:body namespace='http://org.jboss.test.ws/jbws1010' use='literal'/> - </output> - </operation> - </binding> - <service name='TestService'> - <port binding='tns:InheritenceChildInterfaceBinding' name='InheritenceChildInterfacePort'> - <soap:address location='REPLACE_WITH_ACTUAL_URL'/> - </port> - </service> -</definitions> \ No newline at end of file Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/WEB-INF/wsdl/TestService.wsdl) Deleted: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/wstools-config.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws1010/wstools-config.xml 2006-06-29 07:53:21 UTC (rev 511) +++ branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/wstools-config.xml 2006-07-06 09:22:09 UTC (rev 571) @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- - wstools -cp ../../../../output/tests/classes -dest ./WEB-INF -config wstools-config.xml ---> - -<configuration xmlns="http://www.jboss.org/jbossws-tools" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.jboss.org/jbossws-tools http://www.jboss.org/jbossws-tools/schema/jbossws-tool_1_0.xsd"> - <java-wsdl> - <service name="TestService" endpoint="org.jboss.test.ws.jbws1010.InheritenceChildInterface" style="rpc"> - </service> - <namespaces target-namespace="http://org.jboss.test.ws/jbws1010" type-namespace="http://org.jboss.test.ws/jbws1010/types"/> - <mapping file="jaxrpc-mapping.xml"/> - <webservices servlet-link="TestEndpoint"/> - </java-wsdl> -</configuration> Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/jbws1010/wstools-config.xml (from rev 511, branches/jbossws-1.0/src/test/resources/jbws1010/wstools-config.xml) Copied: branches/jbossws-1.0.0.GA_JBWS-1028/src/test/resources/wsdlfixture/InheritenceChildInterfaceService_RPC.wsdl (from rev 511, branches/jbossws-1.0/src/test/resources/wsdlfixture/InheritenceChildInterfaceService_RPC.wsdl) |
From: <jbo...@li...> - 2006-07-06 09:17:57
|
Author: tho...@jb... Date: 2006-07-06 05:17:52 -0400 (Thu, 06 Jul 2006) New Revision: 570 Modified: trunk/ant.properties.example Log: jboss-5.0.0.Beta Modified: trunk/ant.properties.example =================================================================== --- trunk/ant.properties.example 2006-07-06 08:39:19 UTC (rev 569) +++ trunk/ant.properties.example 2006-07-06 09:17:52 UTC (rev 570) @@ -3,7 +3,7 @@ # # Required JBoss Home -#jboss.jdk15.home=d:/cvs/jboss-head/build/output/jboss-5.0.0.Alpha +#jboss.jdk15.home=d:/cvs/jboss-head/build/output/jboss-5.0.0.Beta # Optional JBoss Home #jboss.jdk14.home=d:/cvs/jboss-archive/jboss-4.0.4/build/output/jboss-4.0.4.GA |
From: <jbo...@li...> - 2006-07-06 09:16:40
|
Author: kev...@jb... Date: 2006-07-06 05:16:37 -0400 (Thu, 06 Jul 2006) New Revision: 4926 Modified: labs/jbosstm/branches/JBOSSTS_4_2_GA_MP1/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java Log: Changed to allow errors in parsing UIDs Modified: labs/jbosstm/branches/JBOSSTS_4_2_GA_MP1/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java =================================================================== --- labs/jbosstm/branches/JBOSSTS_4_2_GA_MP1/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java 2006-07-06 01:26:30 UTC (rev 4925) +++ labs/jbosstm/branches/JBOSSTS_4_2_GA_MP1/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java 2006-07-06 09:16:37 UTC (rev 4926) @@ -168,7 +168,7 @@ System.arraycopy(xid.data, nodeNameIndex, buff, 0, buff.length); - Uid tx = new Uid(new String(buff), false); + Uid tx = new Uid(new String(buff), true); buff = null; |
From: <jbo...@li...> - 2006-07-06 08:39:25
|
Author: dar...@jb... Date: 2006-07-06 04:39:19 -0400 (Thu, 06 Jul 2006) New Revision: 569 Added: branches/jbossws-1.0.0.GA_JBWS-1028/ Log: Create branch for JBWS-1028 Copied: branches/jbossws-1.0.0.GA_JBWS-1028 (from rev 568, tags/jbossws-1.0.0.GA) |
From: <jbo...@li...> - 2006-07-06 01:26:35
|
Author: unibrew Date: 2006-07-05 21:26:30 -0400 (Wed, 05 Jul 2006) New Revision: 4925 Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectDescriptor.java Log: [JBLAB-682] Flattening downloads.xml structure to project.xml. Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java 2006-07-05 22:44:42 UTC (rev 4924) +++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java 2006-07-06 01:26:30 UTC (rev 4925) @@ -21,6 +21,7 @@ */ package org.jboss.forge.common.projects; +import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; @@ -88,14 +89,125 @@ * @throws IOException * @throws XmlNotFoundException */ - public DownloadsDescriptor(XmlInputFactory isf, DomToXmlTransformer xht, + /*public DownloadsDescriptor(XmlInputFactory isf, DomToXmlTransformer xht, String componentDir, String componentDesc, String portalName, String projectId) throws SAXException, IOException, XmlNotFoundException { this(isf, xht, "", "", componentDir, componentDesc, portalName, - projectId, null); + projectId, null); + }*/ + public DownloadsDescriptor(XmlInputFactory isf, DomToXmlTransformer xht, + Node node, String componentDir, String componentDesc, String portalName, + String projectId) throws SAXException, IOException, + XmlNotFoundException { + this(isf, xht,node, "", "", componentDir, componentDesc, portalName, + projectId,null); } + + private DownloadsDescriptor(XmlInputFactory isf, DomToXmlTransformer xht,Node node, + String categoryContext, String categoryNameContext, + String componentDir, String componentDesc, String portalName, + String projectId,ElementDescriptor thisCategory) + throws SAXException, IOException, XmlNotFoundException { + + this.categoryContext = categoryContext; + categories = new HashMap<String, DownloadsDescriptor>(); + context = new DelegateContext(); + // Prefix to prepend to each file path to make a component link + String downloadPrefix = File.separator + ForgeHelper.FILE_ACCESS_DIR + + File.separator + portalName + File.separator + + ProjectsHelper.MEMBERS_DIR + File.separator + projectId + + File.separator + componentDir; + + // Getting the category which has a path-like structure, not the + // web-address-like structure + String pathCategoryContext = categoryContext.replaceAll("[" + + CAT_ID_SEPARATOR + "]", File.separator); + + // Descriptors of categories and files that are contained in this + // category. + ElementsDescriptor categoriesDesc = null; + ElementsDescriptor filesDesc = null; + + Node n; + NodeList nodes = node.getChildNodes(); + + // Parsing the descriptor + // If there's no parent category info, we look for a "root-category" + // tag. + System.out.println("BEFORE NODENAME: "+node.getNodeName()); + if (thisCategory == null) { + System.out.println("IN IF"); + if (node.getNodeType() == Node.ELEMENT_NODE) { + System.out.println("IN ELEMENT"); + thisCategory = new ElementDescriptor(node, xht, new PropertiesHandlerDefault()); + categoryNameContext = thisCategory.getProperty("name"); + System.out.println("CATEGORY NAME: "+categoryNameContext); + // categoryDescription = thisCategory.getProperty("description"); + } + } + + // Parsing child categories and files descriptors. + for (int i = 0; i < nodes.getLength(); i++) { + n = nodes.item(i); + + if (n.getNodeType() == Node.ELEMENT_NODE) { + System.out.println("PARSING ZA NODETYPE: "+n.getNodeName()); + if (n.getNodeName().equals("categories")) { + System.out.println("W KATEGORIACH"); + categoriesDesc = new ElementsDescriptor(n, xht, "category", + getCategoriesPropertiesHandler(isf,xht,n, + categoryContext,categoryNameContext, + componentDir, componentDesc, + portalName, projectId )); + } else if (n.getNodeName().equals("files")) { + System.out.println("W PLIKACH"); + filesDesc = new ElementsDescriptor(n, xht, "file", + getFilesPropertiesHandler(isf, projectId, + downloadPrefix, pathCategoryContext, + File.separator,componentDir), + getFilesExtendedPropertiesMap(downloadPrefix, + pathCategoryContext, File.separator, portalName, + projectId), + new OutsidePropertiesMap()); + } + } + } + + if (categoriesDesc != null) + categoriesDesc.fillContext(context.next("hasCategories"), "categories", + new NullPermissionsChecker()); + if (filesDesc != null) + filesDesc.fillContext(context.next("hasFiles"), "files", + new NullPermissionsChecker()); + + if (thisCategory != null) + thisCategory.fillContext(context, new NullPermissionsChecker()); + + // Creating the trace (for each category, a path from from the root to + // that category). + String[] idTokens = categoryContext.split("[" + CAT_ID_SEPARATOR + "]"); + String[] nameTokens = categoryNameContext.split("[" + CAT_ID_SEPARATOR + + "]"); + String idPath = ""; + + DelegateContext rootTraceContext = context.next("trace"); + rootTraceContext.put("id", ""); + rootTraceContext.put("name", nameTokens[0]); + + for (int i = 1; i < idTokens.length; i++) { + DelegateContext traceContext = context.next("trace"); + + idPath += CAT_ID_SEPARATOR + idTokens[i]; + + traceContext.put("id", idPath); + traceContext.put("name", nameTokens[i]); + } + + } + + /** * Creates a new component descriptor that hold information about one * category. @@ -124,7 +236,7 @@ * @throws IOException * @throws XmlNotFoundException */ - private DownloadsDescriptor(XmlInputFactory isf, DomToXmlTransformer xht, + /* private DownloadsDescriptor(XmlInputFactory isf, DomToXmlTransformer xht, String categoryContext, String categoryNameContext, String componentDir, String componentDesc, String portalName, String projectId, ElementDescriptor thisCategory) @@ -167,6 +279,11 @@ Node n; NodeList nodes = doc.getDocumentElement().getChildNodes(); + + + //TODO: BECOMES OUTDATED + + // Parsing the descriptor // If there's no parent category info, we look for a "root-category" // tag. @@ -181,11 +298,15 @@ categoryNameContext = thisCategory.getProperty("name"); } } - } - + } + // If there's still no root category info, we throw an exception. if (thisCategory == null) throw new SAXException(); + + //TODO: BECOMES OUTDATED + + // Parsing child categories and files descriptors. for (int i = 0; i < nodes.getLength(); i++) { @@ -210,8 +331,14 @@ } } + + //TODO: BECOMES OUTDATED if (thisCategory != null) thisCategory.fillContext(context, new NullPermissionsChecker()); + //TODO: BECOMES OUTDATED + + + if (categoriesDesc != null) categoriesDesc.fillContext(context.next("hasCategories"), "categories", new NullPermissionsChecker()); @@ -238,13 +365,13 @@ traceContext.put("id", idPath); traceContext.put("name", nameTokens[i]); } - } + }*/ private PropertiesHandler getCategoriesPropertiesHandler( - final XmlInputFactory isf, final DomToXmlTransformer xht, - final String portalName, final String projectId, + final XmlInputFactory isf, final DomToXmlTransformer xht, final Node node, final String categoryContext, final String categoryNameContext, - final String componentDir, final String componentDesc) { + final String componentDir, final String componentDesc, + final String portalName, final String projectId) { PropertiesHandlerStack stack = new PropertiesHandlerStack(); stack.addHandler(new PropertiesHandlerDefault()); stack.addHandler(new PropertiesHandler() { @@ -258,12 +385,12 @@ String categoryId = thisElement.getId(); try { categories.put(categoryId, new DownloadsDescriptor(isf, - xht, categoryContext + CAT_ID_SEPARATOR + xht,node, categoryContext + CAT_ID_SEPARATOR + categoryId, categoryNameContext + CAT_ID_SEPARATOR + thisElement.getProperty("name"), componentDir, componentDesc, - portalName, projectId, thisElement)); + portalName, projectId,thisElement)); } catch (Exception e) { // In case of an exception, we just don't add a child // category. Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectDescriptor.java =================================================================== --- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectDescriptor.java 2006-07-05 22:44:42 UTC (rev 4924) +++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/ProjectDescriptor.java 2006-07-06 01:26:30 UTC (rev 4925) @@ -67,6 +67,9 @@ private Node issueTrackerNode; private IssueTracker issueTracker; + // TODO: HACK + private Node downloadsNode; + /** * Reads information about a project from an xml file. * @@ -117,7 +120,7 @@ // Trying to create a downloads descriptor. try { - downloads = new DownloadsDescriptor(isf, xht, + downloads = new DownloadsDescriptor(isf, xht,downloadsNode, ProjectsHelper.DOWNLOADS_DIR, ProjectsHelper.DOWNLOADS_DESC, portalName, getId()); @@ -210,6 +213,9 @@ if (IssueTracker.ISSUE_TRACKER_ELEMENT.equals(node.getNodeName())) { setIssueTrackerNode(node); } + if ("downloads".equals(node.getNodeName())) { + downloadsNode=node; + } } public void collect(PropertiesMap properties, Object data, |
Author: jas...@jb... Date: 2006-07-05 21:20:41 -0400 (Wed, 05 Jul 2006) New Revision: 568 Added: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml Modified: branches/jbossws-1.0/build-samples.xml branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/Configuration.java branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/WSDLToJava.java branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java branches/jbossws-1.0/src/main/resources/samples/jsr181pojo/build.xml branches/jbossws-1.0/src/main/resources/schema/jbossws-tool_1_0.xsd branches/jbossws-1.0/src/test/ant/build-jars.xml branches/jbossws-1.0/src/test/build.xml Log: Add tools support for doc/lit parameter unwrapping JBWS-750 Modified: branches/jbossws-1.0/build-samples.xml =================================================================== --- branches/jbossws-1.0/build-samples.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/build-samples.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -145,7 +145,7 @@ <copy todir="${build.src.samples.dir}/jsr109pojo/java"> <fileset dir="${test.java.dir}"> - <include name="org/jboss/test/ws/samples/jsr109pojo/**"/> + <include name="org/jboss/test/ws/samples/jsr109pojo/**/*"/> </fileset> </copy> <copy todir="${build.src.samples.dir}/jsr109pojo/resources"> @@ -301,4 +301,4 @@ </target> -</project> \ No newline at end of file +</project> Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/Configuration.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/Configuration.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/Configuration.java 2006-07-06 01:20:41 UTC (rev 568) @@ -159,8 +159,7 @@ public class WSDLToJavaConfig { public String wsdlLocation = null; - public boolean disableUnwrap = false; - public boolean useJavaAnnotations = false; + public boolean unwrap = false; public boolean mappingFileNeeded = false; public String mappingFileName = null; } Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/WSDLToJava.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/WSDLToJava.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/WSDLToJava.java 2006-07-06 01:20:41 UTC (rev 568) @@ -35,7 +35,12 @@ import org.apache.xerces.xs.XSComplexTypeDefinition; import org.apache.xerces.xs.XSElementDeclaration; +import org.apache.xerces.xs.XSModelGroup; +import org.apache.xerces.xs.XSObject; +import org.apache.xerces.xs.XSObjectList; +import org.apache.xerces.xs.XSParticle; import org.apache.xerces.xs.XSSimpleTypeDefinition; +import org.apache.xerces.xs.XSTerm; import org.apache.xerces.xs.XSTypeDefinition; import org.jboss.ws.Constants; import org.jboss.ws.WSException; @@ -100,6 +105,8 @@ private String style; + private boolean unwrap = false; + public WSDLToJava() { } @@ -112,7 +119,7 @@ checkTypeMapping(); WSDLDefinitionsFactory wsdlFactory = WSDLDefinitionsFactory.newInstance(); wsdl = wsdlFactory.parse(wsdlfileurl); - style = utils.getWSDLStyle(wsdl); + return wsdl; } @@ -162,7 +169,9 @@ checkTypeMapping(); this.directoryToGenerate = dir.getAbsolutePath(); this.wsdl = wsdl; - //wsdlStyle = utils.getWSDLStyle(wsdl); + style = utils.getWSDLStyle(wsdl); + + //TODO: Handle annotations flag, as per JAX-WS 2.0 Spec. //Given the WSDL Object Tree, generate the SEI //Also take in the location where the SEI should be written @@ -244,6 +253,108 @@ // PRIVATE METHODS //*************************************************************************** + private boolean shouldUnwrap() + { + return unwrap && Constants.DOCUMENT_LITERAL.equals(style); + } + + private void unwrapRequest(StringBuilder buf, XSTypeDefinition xt) throws IOException + { + if (xt instanceof XSComplexTypeDefinition == false) + throw new WSException("Tried to unwrap a non-complex type."); + + XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt; + XSParticle particle = wrapper.getParticle(); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup == false) + throw new WSException("Expected model group, could not unwrap"); + unwrapRequestParticles(buf, (XSModelGroup)term); + + // We need a wrapper class generated + generateJavaSource(wrapper, wsdl.getWsdlTypes().getSchemaModel(), wrapper.getName()); + } + + private int unwrapRequestParticles(StringBuilder buf, XSModelGroup group) throws IOException + { + if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE) + throw new WSException("Only a sequence type can be unwrapped."); + + int elementCount = 0; + XSObjectList particles = group.getParticles(); + for (int i = 0; i < particles.getLength(); i++) + { + XSParticle particle = (XSParticle) particles.item(i); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup) + { + elementCount += unwrapRequestParticles(buf, (XSModelGroup)term); + } + else if (term instanceof XSElementDeclaration) + { + if (elementCount++ > 0) + buf.append(", "); + XSElementDeclaration element = (XSElementDeclaration)term; + QName xmlName = new QName(element.getNamespace(), element.getName()); + QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName()); + JBossXSModel xsmodel = wsdl.getWsdlTypes().getSchemaModel(); + boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1; + generateParameter(buf, null, xmlName, xmlType, xsmodel, element.getTypeDefinition(), array, !element.getNillable()); + buf.append(" ").append(getMethodParam(xmlName)); + } + } + + return elementCount; + } + + private String unwrapResponse(XSTypeDefinition xt) throws IOException + { + if (xt instanceof XSComplexTypeDefinition == false) + throw new WSException("Tried to unwrap a non-complex type."); + + XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt; + XSParticle particle = wrapper.getParticle(); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup == false) + throw new WSException("Expected model group, could not unwrap"); + String returnType = unwrapResponseParticles((XSModelGroup)term); + // We need a wrapper class generated + generateJavaSource(wrapper, wsdl.getWsdlTypes().getSchemaModel(), wrapper.getName()); + return returnType; + } + + private String unwrapResponseParticles(XSModelGroup group) throws IOException + { + if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE) + throw new WSException("Only a sequence type can be unwrapped."); + + XSObjectList particles = group.getParticles(); + String returnType = null; + for (int i = 0; i < particles.getLength(); i++) + { + XSParticle particle = (XSParticle) particles.item(i); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup) + { + returnType = unwrapResponseParticles((XSModelGroup)term); + if (returnType != null) + return returnType; + } + else if (term instanceof XSElementDeclaration) + { + XSElementDeclaration element = (XSElementDeclaration)term; + QName xmlName = new QName(element.getNamespace(), element.getName()); + QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName()); + JBossXSModel xsmodel = wsdl.getWsdlTypes().getSchemaModel(); + boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1; + StringBuilder buf = new StringBuilder(); + generateParameter(buf, null, xmlName, xmlType, xsmodel, element.getTypeDefinition(), array, !element.getNillable()); + return buf.toString(); + } + } + + return null; + } + private void appendMethods(WSDLInterface intf, StringBuilder buf ) throws IOException { buf.append(newline); @@ -273,52 +384,29 @@ JBossXSModel xsmodel = wsdl.getWsdlTypes().getSchemaModel(); XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI()); - boolean primitive = true; - WrappedArray wrappedArray = new WrappedArray(xt); - String arraySuffix = ""; - if (wrappedArray.unwrap()) + if (shouldUnwrap()) { - xt = wrappedArray.xt; - xmlType = wrappedArray.xmlType; - primitive = !wrappedArray.nillable; - arraySuffix = wrappedArray.suffix; + unwrapRequest(buf, xt); + break; } - if (xt instanceof XSSimpleTypeDefinition) - xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition) xt); - - Class cl = getJavaType(xmlType, primitive); - //Class cl = typeMapping.getJavaType(inqname,true); - cl = this.checkNeedHolder(in,cl); - if(cl != null) - { - buf.append( cl.getName() + arraySuffix + " " + getMethodParam(xmlName)); - } - else - { - //buf.append(inqname.getLocalPart() + " " + inqname.getLocalPart().toLowerCase()); - String className = xmlType.getLocalPart(); - if (className.charAt(0) == '>') - className = className.substring(1); - className = utils.firstLetterUpperCase(className); - buf.append(seiPkgName + "." + className + arraySuffix + " " + getMethodParam(xmlName)); - - if(xt instanceof XSComplexTypeDefinition) - generateJavaSource((XSComplexTypeDefinition)xt, xsmodel, xmlName.getLocalPart()); - } - } + generateParameter(buf, in, xmlName, xmlType, xsmodel, xt, false, true); + buf.append(" ").append(getMethodParam(xmlName)); + } //Check for out holder only int lenOuts = outs != null ? outs.length : 0; - if(lenOuts > 1) - for(int m=1; m < lenOuts; m++) + if ((!shouldUnwrap()) && lenOuts > 1) + { + // This needs to be rewritten, custom types, and custom holders should be supported + for (int m = 1; m < lenOuts; m++) { - if(this.isInOutHolder(outs[m])) + if (this.isInOutHolder(outs[m])) continue; buf.append(","); QName xmlName = outs[m].getElement(); QName xmlType = outs[m].getXMLType(); JBossXSModel xsmodel = wsdl.getWsdlTypes().getSchemaModel(); - XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI()); + XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(), xmlType.getNamespaceURI()); boolean primitive = true; WrappedArray wrappedArray = new WrappedArray(xt); @@ -332,11 +420,12 @@ } if (xt instanceof XSSimpleTypeDefinition) - xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition) xt); + xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition)xt); Class cls = this.getJavaType(xmlType, primitive); buf.append(utils.getHolder(cls).getName()).append(" ").append(getMethodParam(xmlName)); } + } buf.append(") throws "); //Generate the Exception Types @@ -346,7 +435,6 @@ WSDLInterfaceOperationOutfault fault = outfaults[k]; QName faultqname = fault.getRef(); - //Get the main fault from the wsdlInterface WSDLInterfaceFault intfFault = fault.getWsdlInterfaceOperation().getWsdlInterface().getFault(new NCName(faultqname.getLocalPart())); JBossXSModel xsmodel = wsdl.getWsdlTypes().getSchemaModel(); @@ -373,6 +461,43 @@ } } + private void generateParameter(StringBuilder buf, WSDLInterfaceOperationInput in, QName xmlName, QName xmlType, JBossXSModel xsmodel, XSTypeDefinition xt, boolean array, boolean primitive) throws IOException + { + WrappedArray wrappedArray = new WrappedArray(xt); + String arraySuffix = (array) ? "[]" : ""; + if (wrappedArray.unwrap()) + { + xt = wrappedArray.xt; + xmlType = wrappedArray.xmlType; + primitive = !wrappedArray.nillable; + arraySuffix = wrappedArray.suffix; + } + + if (xt instanceof XSSimpleTypeDefinition) + xmlType = SchemaUtils.handleSimpleType((XSSimpleTypeDefinition) xt); + + Class cl = getJavaType(xmlType, primitive); + //Class cl = typeMapping.getJavaType(inqname,true); + if (in != null) + cl = this.checkNeedHolder(in,cl); + if(cl != null) + { + buf.append(cl.getName() + arraySuffix); + } + else + { + //buf.append(inqname.getLocalPart() + " " + inqname.getLocalPart().toLowerCase()); + String className = xmlType.getLocalPart(); + if (className.charAt(0) == '>') + className = className.substring(1); + className = utils.firstLetterUpperCase(className); + buf.append(seiPkgName + "." + className + arraySuffix); + + if(xt instanceof XSComplexTypeDefinition) + generateJavaSource((XSComplexTypeDefinition)xt, xsmodel, xmlName.getLocalPart()); + } + } + private void createSEIFile(WSDLInterface intf, File loc) throws IOException { String fname = utils.chopPortType(intf.getName().toString()); @@ -426,6 +551,9 @@ JBossXSModel xsmodel = wsdl.getWsdlTypes().getSchemaModel(); XSTypeDefinition xt = xsmodel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI()); + if (shouldUnwrap()) + return unwrapResponse(xt); + boolean primitive = true; WrappedArray wrappedArray = new WrappedArray(xt); String arraySuffix = ""; @@ -572,4 +700,14 @@ xtj.setTypeMapping(this.typeMapping); xtj.createJavaFile((XSComplexTypeDefinition)xt, containingElement, getLocationForJavaGeneration(), seiPkgName, xsmodel, exception); } -} \ No newline at end of file + + public boolean isUnwrap() + { + return unwrap; + } + + public void setUnwrap(boolean unwrap) + { + this.unwrap = unwrap; + } +} Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/config/ToolsSchemaConfigReader.java 2006-07-06 01:20:41 UTC (rev 568) @@ -84,10 +84,12 @@ private static final String ENDPOINT_ATTRIBUTE = "endpoint"; private static final String NAME_ATTRIBUTE = "name"; private static final String FILE_ATTRIBUTE = "file"; + private static final String UNWRAP_ATTRIBUTE = "unwrap"; // provide logging private static final Logger log = Logger.getLogger(ToolsSchemaConfigReader.class); + public ToolsSchemaConfigReader() { } @@ -174,6 +176,10 @@ { WSDLToJavaConfig wsdl2jc = config.getWSDLToJavaConfig(true); wsdl2jc.wsdlLocation = attrs.getValue(FILE_ATTRIBUTE); + String unwrap = attrs.getValue(UNWRAP_ATTRIBUTE); + if (unwrap != null) + wsdl2jc.unwrap = "true".equals(unwrap) || "1".equals(unwrap); + return wsdl2jc; } else if (GLOBAL_TAG.equals(localName)) Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/MappingFileGeneratorHelper.java 2006-07-06 01:20:41 UTC (rev 568) @@ -22,6 +22,7 @@ package org.jboss.ws.tools.helpers; import java.beans.Introspector; +import java.io.IOException; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.ArrayList; @@ -103,6 +104,7 @@ private WSDLUtils utils = WSDLUtils.getInstance(); + private boolean unwrap = false; /** * A list of types that need java-xml type generation @@ -110,7 +112,7 @@ private List<XSTypeDefinition> queueTypes = new ArrayList<XSTypeDefinition>(); public MappingFileGeneratorHelper(WSDLDefinitions wsdl, String sname, - String pname, Class seiClass, String tns,LiteralTypeMapping ltm ) + String pname, Class seiClass, String tns,LiteralTypeMapping ltm, boolean unwrap) { this.wsdlDefinitions = wsdl; this.serviceName = sname; @@ -120,6 +122,7 @@ this.typeMapping = ltm; this.wsdlStyle = utils.getWSDLStyle(wsdl); + this.unwrap = unwrap; checkEssentials(); } @@ -194,9 +197,6 @@ javaPortName += "_PortType"; ServiceEndpointInterfaceMapping seim = new ServiceEndpointInterfaceMapping(jwm); - /* if(isDocStyle() && serviceEndpointInterface != null ) - seim.setServiceEndpointInterface(packageName + "." + portName + "Wrapped"); - else*/ seim.setServiceEndpointInterface(packageName + "." + javaPortName); seim.setWsdlPortType(new QName(targetNS,portName,"portTypeNS")); seim.setWsdlBinding(new QName(targetNS,bindName,"bindingNS")); @@ -224,6 +224,7 @@ ServiceEndpointMethodMapping semm = new ServiceEndpointMethodMapping(seim); semm.setJavaMethodName(ToolsUtils.firstLetterLowerCase(opname)); semm.setWsdlOperation(opname); + semm.setWrappedElement(shouldUnwrap()); constructMethodParamPartsMapping(semm,wiop ); @@ -245,44 +246,32 @@ QName xmlName = wiout.getElement(); QName xmlType = wiout.getXMLType(); + WSDLProperty wprop = wiout.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME); + QName messageName = new QName(targetNS, wprop.getValue(), WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_WSDL_MESSAGE_NS); + + if (shouldUnwrap()) + { + JBossXSModel schemaModel = wsdlDefinitions.getWsdlTypes().getSchemaModel(); + XSTypeDefinition xt = schemaModel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI()); + unwrapResponse(semm, messageName, xt); + + continue; + } + //Check it is a holder. If it is, return if( wiop.getInputByPartName(xmlName.getLocalPart()) != null) continue; - String javaType = ""; - if(isDocStyle() && serviceEndpointInterface != null) - javaType = serviceEndpointInterface.getName() + "_" + opname + "_ResponseStruct"; - else - { - if(isDocStyle() ) - xmlType = wiout.getXMLType(); - javaType = getJavaTypeAsStringForReturnType(xmlName,xmlType,wiout); - } + String javaType = getJavaTypeAsString(xmlName,xmlType, false, true); if(isDocStyle() == false && "void".equals(javaType)) continue; WsdlReturnValueMapping wrvm = new WsdlReturnValueMapping(semm); wrvm.setMethodReturnValue(javaType); - if(isDocStyle() && serviceEndpointInterface == null) - { - WSDLProperty wprop = wiout.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME); - wrvm.setWsdlMessage(new QName(targetNS,wprop.getValue(), - WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_WSDL_MESSAGE_NS)); - } - else - wrvm.setWsdlMessage(new QName(targetNS,portName + "_" + opname + "Response", - WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_WSDL_MESSAGE_NS)); - if(isDocStyle() && serviceEndpointInterface == null ) - { - WSDLProperty wprop = wiout.getProperty(Constants.WSDL_PROPERTY_PART_NAME); - if(wprop != null) - wrvm.setWsdlMessagePartName(wprop.getValue()); - } - else - { - wrvm.setWsdlMessagePartName(Constants.DEFAULT_RPC_RETURN_NAME); - } + wrvm.setWsdlMessage(messageName); + wprop = wiout.getProperty(Constants.WSDL_PROPERTY_PART_NAME); + wrvm.setWsdlMessagePartName(wprop.getValue()); semm.setWsdlReturnValueMapping(wrvm); } } @@ -302,27 +291,26 @@ QName xmlName = win.getElement(); QName xmlType = win.getXMLType(); String wsdlMessageName = ""; - if(isDocStyle() && serviceEndpointInterface == null) - wsdlMessageName = win.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME).getValue(); - else - wsdlMessageName = portName + "_" + opname; - String partName = xmlName.getLocalPart(); - if(isDocStyle()) - { - partName = "parameters"; - if(serviceEndpointInterface == null) - partName = win.getProperty(Constants.WSDL_PROPERTY_PART_NAME).getValue(); - } + wsdlMessageName = win.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME).getValue(); + String partName = win.getProperty(Constants.WSDL_PROPERTY_PART_NAME).getValue(); String paramMode = ""; - if(wiop.getOutputByPartName(xmlName.getLocalPart()) != null) + if(wiop.getOutputByPartName(partName) != null) paramMode = WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_IN_OUT_HOLDER_PARAM_MODE; else paramMode = WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_IN_PARAM_MODE; + if (shouldUnwrap()) + { + JBossXSModel schemaModel = wsdlDefinitions.getWsdlTypes().getSchemaModel(); + XSTypeDefinition xt = schemaModel.getTypeDefinition(xmlType.getLocalPart(),xmlType.getNamespaceURI()); + unwrapRequest(semm, wsdlMessageName, xt); + break; + } + MethodParamPartsMapping mpin = getMethodParamPartsMapping(semm,xmlName, xmlType, - k, wsdlMessageName, paramMode, partName); + k, wsdlMessageName, paramMode, partName, false, true); semm.addMethodParamPartsMapping(mpin); } //Take care of out holders @@ -338,7 +326,7 @@ QName xmlType = out.getXMLType(); MethodParamPartsMapping mpm = getMethodParamPartsMapping(semm,xmlName, xmlType, lenwiopin + m -1, out.getProperty(Constants.WSDL_PROPERTY_MESSAGE_NAME).getValue(), - WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_OUT_HOLDER_PARAM_MODE, xmlName.getLocalPart()); + WSToolsConstants.WSTOOLS_CONSTANT_MAPPING_OUT_HOLDER_PARAM_MODE, xmlName.getLocalPart(), false, true); semm.addMethodParamPartsMapping(mpm); } } @@ -387,7 +375,7 @@ addJavaXMLTypeMap(xt, xmlName.getLocalPart(), jwm, true); ExceptionMapping exceptionMapping = new ExceptionMapping(jwm); - exceptionMapping.setExceptionType(getJavaTypeAsString(null, xmlType)); + exceptionMapping.setExceptionType(getJavaTypeAsString(null, xmlType, false, true)); exceptionMapping.setWsdlMessage(new QName(wsdlDefinitions.getTargetNamespace(), fault.getName().toString())); jwm.addExceptionMappings(exceptionMapping); } @@ -395,7 +383,104 @@ } } - //PRIVATE METHODS + private void unwrapRequest(ServiceEndpointMethodMapping methodMapping, String messageName, XSTypeDefinition xt) + { + if (xt instanceof XSComplexTypeDefinition == false) + throw new WSException("Tried to unwrap a non-complex type."); + + XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt; + XSParticle particle = wrapper.getParticle(); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup == false) + throw new WSException("Expected model group, could not unwrap"); + unwrapRequestParticles(methodMapping, messageName, (XSModelGroup)term); + } + + private int unwrapRequestParticles(ServiceEndpointMethodMapping methodMapping, String messageName, XSModelGroup group) + { + if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE) + throw new WSException("Only a sequence type can be unwrapped."); + + int elementCount = 0; + XSObjectList particles = group.getParticles(); + for (int i = 0; i < particles.getLength(); i++) + { + XSParticle particle = (XSParticle) particles.item(i); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup) + { + elementCount += unwrapRequestParticles(methodMapping, messageName, (XSModelGroup)term); + } + else if (term instanceof XSElementDeclaration) + { + XSElementDeclaration element = (XSElementDeclaration)term; + QName xmlName = new QName(element.getNamespace(), element.getName()); + QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName()); + boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1; + MethodParamPartsMapping parts = getMethodParamPartsMapping(methodMapping, xmlName, xmlType, elementCount, messageName, "IN", xmlName.getLocalPart(), array, + !element.getNillable()); + methodMapping.addMethodParamPartsMapping(parts); + elementCount++; + } + } + + return elementCount; + } + + private void unwrapResponse(ServiceEndpointMethodMapping methodMapping, QName messageName, XSTypeDefinition xt) + { + if (xt instanceof XSComplexTypeDefinition == false) + throw new WSException("Tried to unwrap a non-complex type."); + + XSComplexTypeDefinition wrapper = (XSComplexTypeDefinition)xt; + XSParticle particle = wrapper.getParticle(); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup == false) + throw new WSException("Expected model group, could not unwrap"); + unwrapResponseParticles(methodMapping, messageName, (XSModelGroup)term); + } + + private boolean unwrapResponseParticles(ServiceEndpointMethodMapping methodMapping, QName messageName, XSModelGroup group) + { + if (group.getCompositor() != XSModelGroup.COMPOSITOR_SEQUENCE) + throw new WSException("Only a sequence type can be unwrapped."); + + XSObjectList particles = group.getParticles(); + String returnType = null; + for (int i = 0; i < particles.getLength(); i++) + { + XSParticle particle = (XSParticle) particles.item(i); + XSTerm term = particle.getTerm(); + if (term instanceof XSModelGroup) + { + if (unwrapResponseParticles(methodMapping, messageName, (XSModelGroup)term)) + return true; + } + else if (term instanceof XSElementDeclaration) + { + XSElementDeclaration element = (XSElementDeclaration)term; + QName xmlName = new QName(element.getNamespace(), element.getName()); + QName xmlType = new QName(element.getTypeDefinition().getNamespace(), element.getTypeDefinition().getName()); + boolean array = particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1; + StringBuilder buf = new StringBuilder(); + + String javaType = getJavaTypeAsString(xmlName, xmlType, array, !element.getNillable()); + + WsdlReturnValueMapping wrvm = new WsdlReturnValueMapping(methodMapping); + wrvm.setMethodReturnValue(javaType); + wrvm.setWsdlMessage(messageName); + wrvm.setWsdlMessagePartName(xmlName.getLocalPart()); + methodMapping.setWsdlReturnValueMapping(wrvm); + + return true; + } + } + + return false; + } + + + private void checkEssentials() { if(typeMapping == null) @@ -452,13 +537,13 @@ // Anonymous if (localName == null) { - javaType = getJavaTypeAsString(null, new QName(containingElement)); + javaType = getJavaTypeAsString(null, new QName(containingElement), false, true); localName = ">" + containingElement; jxtm.setAnonymousTypeQName(new QName(xt.getNamespace(), localName, "typeNS")); } else { - javaType = getJavaTypeAsString(null, new QName(localName)); + javaType = getJavaTypeAsString(null, new QName(localName), false, true); jxtm.setRootTypeQName(new QName(xt.getNamespace(), xt.getName(), "typeNS")); } @@ -572,12 +657,11 @@ return marr; } - private String getJavaTypeAsString( QName xmlName, QName xmlType) + private String getJavaTypeAsString(QName xmlName, QName xmlType, boolean array, boolean primitive) { String jtype = null; - String arraySuffix = ""; - boolean primitive = true; + String arraySuffix = (array) ? "[]" : ""; if (! isDocStyle()) { JBossXSModel xsmodel = wsdlDefinitions.getWsdlTypes().getSchemaModel(); @@ -634,30 +718,6 @@ return jtype + arraySuffix; } - private String getJavaTypeAsStringForReturnType( QName xmlName, QName xmlType, - WSDLInterfaceOperationOutput wiout) - { - /** - * NOTE: There is no way, we can figure out whether the JavaType - * should be a wrapper or a primitive for a given xmlType, when - * dealing with return types. The only option is to peek inside the - * SEI (if available) - */ - //Check if we have the SEI - if(serviceEndpointInterface != null) - { - String opname = wiout.getWsdlOperation().getName().toString(); - Method[] marr = getMethodsGivenOperationName(serviceEndpointInterface,opname); - if(marr != null && marr.length == 1)//If we have just one method - { - Class retType = marr[0].getReturnType(); - return retType.isArray()? JavaUtils.getSourceName(retType): retType.getName(); - } - } - return getJavaTypeAsString(xmlName,xmlType); - } - - private boolean isDocStyle() { return Constants.DOCUMENT_LITERAL.equals(wsdlStyle); @@ -729,6 +789,11 @@ return javaType; } + private boolean shouldUnwrap() + { + return unwrap && Constants.DOCUMENT_LITERAL.equals(wsdlStyle); + } + private boolean isInOutHolder(WSDLInterfaceOperationOutput wout) { //Now check if the part exists in both input and output => Need Holder @@ -741,20 +806,12 @@ private MethodParamPartsMapping getMethodParamPartsMapping(ServiceEndpointMethodMapping semm, QName xmlName, QName xmlType, - int paramPosition, String wsdlMessageName, String paramMode, String wsdlMessagePartName) + int paramPosition, String wsdlMessageName, String paramMode, String wsdlMessagePartName, boolean array, boolean primitive) { String targetNS = wsdlDefinitions.getTargetNamespace(); MethodParamPartsMapping mppm = new MethodParamPartsMapping(semm); mppm.setParamPosition(paramPosition); - String javaType = ""; - if(isDocStyle() && serviceEndpointInterface != null) - { - //javaType = this.serviceEndpointInterface.getName()+"_"+xmlType.getLocalPart()+"_RequestStruct"; - javaType = this.serviceEndpointInterface.getName()+"_" + xmlName.getLocalPart() + "_RequestStruct"; - } - else - javaType = this.getJavaTypeAsString(xmlName, xmlType ); - + String javaType = getJavaTypeAsString(xmlName, xmlType, array, primitive); mppm.setParamType(javaType); //WSDL Message Mapping Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/helpers/ToolsHelper.java 2006-07-06 01:20:41 UTC (rev 568) @@ -288,6 +288,7 @@ WSDLToJava wsdlToJava = new WSDLToJava(); wsdlToJava.setTypeMapping(new LiteralTypeMapping()); + WSDLDefinitions wsdl = null; try { @@ -323,6 +324,7 @@ if (glc != null) wsdlToJava.setPackageNamespaceMap(glc.packageNamespaceMap); + wsdlToJava.setUnwrap(w2jc.unwrap); wsdlToJava.generateSEI(wsdl, new File(outDir)); //Generate the Service File @@ -333,6 +335,7 @@ MappingFileGenerator mgf = new MappingFileGenerator(wsdl, new LiteralTypeMapping()); mgf.setPackageName(getPackageName(wsdl, glc)); mgf.setServiceName(wsdl.getServices()[0].getName().toString()); + mgf.setUnwrap(w2jc.unwrap); //mgf.generate(); JavaWsdlMapping jwm = mgf.generate(); Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/interfaces/WSDLToJavaIntf.java 2006-07-06 01:20:41 UTC (rev 568) @@ -29,11 +29,11 @@ import org.jboss.ws.jaxrpc.LiteralTypeMapping; import org.jboss.ws.metadata.wsdl.WSDLDefinitions; import org.jboss.ws.metadata.wsdl.WSDLException; - + /** - * Defines the contract for WSDL To Java Converters + * Defines the contract for WSDL To Java Converters * @author <mailto:Ani...@jb...>Anil Saldhana - * @since Jul 23, 2005 + * @since Jul 23, 2005 */ public interface WSDLToJavaIntf @@ -81,22 +81,26 @@ * Generate the SEI * @param wsdl The WSDL20Definitions (root of the object tree) * @param dir The directory where the SEI files will be written - * @throws IOException + * @throws IOException * @throws Exception */ - public void generateSEI(WSDLDefinitions wsdl, File dir) throws IOException; - + public void generateSEI(WSDLDefinitions wsdl, File dir) throws IOException; + /** * Global configuration from user that defines a map of package->Namespace - * + * * @param map */ public void setPackageNamespaceMap(Map<String,String> map); - + /** - * The client can provide a type mapping + * The client can provide a type mapping * @param typeMapping */ public void setTypeMapping(LiteralTypeMapping typeMapping); + public boolean isUnwrap(); + + public void setUnwrap(boolean unwrap); + } Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/tools/mapping/MappingFileGenerator.java 2006-07-06 01:20:41 UTC (rev 568) @@ -93,6 +93,8 @@ */ protected LiteralTypeMapping typeMapping = null; + protected boolean unwrap = false; + public MappingFileGenerator(WSDLDefinitions wsdl, TypeMapping typeM) { this.wsdlDefinitions = wsdl; @@ -154,6 +156,16 @@ this.typeNamespace = typeNamespace; } + public boolean isUnwrap() + { + return unwrap; + } + + public void setUnwrap(boolean unwrap) + { + this.unwrap = unwrap; + } + /** * Method that generates the jaxrpc mapping metadata * <dt>Guidance:<dd> @@ -166,7 +178,7 @@ public JavaWsdlMapping generate() throws IOException { MappingFileGeneratorHelper helper = new MappingFileGeneratorHelper(this.wsdlDefinitions, this.serviceName, this.packageName, this.serviceEndpointInterface, - this.typeNamespace, this.typeMapping); + this.typeNamespace, this.typeMapping, this.unwrap); String targetNS = wsdlDefinitions.getTargetNamespace(); if (typeNamespace == null) typeNamespace = targetNS; Modified: branches/jbossws-1.0/src/main/resources/samples/jsr181pojo/build.xml =================================================================== --- branches/jbossws-1.0/src/main/resources/samples/jsr181pojo/build.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/resources/samples/jsr181pojo/build.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -23,6 +23,12 @@ <!-- samples/jsr181pojo --> <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/META-INF" config="${resources.dir}/wstools-config.xml"/> + + <!-- samples/jsr181pojo/docwrapped --> + <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" config="${resources.dir}/docwrapped/wstools-config.xml"/> + <move todir="${build.test.dir}/wstools/java"> + <fileset dir="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" includes="org/**"/> + </move> </target> @@ -49,7 +55,26 @@ <include name="wsdl/**"/> </metainf> </jar> - + + <!-- jbossws-samples-jsr181pojo-docwrapped --> + <war warfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped.war" webxml="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml"> + <classes dir="${build.test.dir}/classes"> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/JSEBean01.class"/> + </classes> + </war> + <jar jarfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped-client.jar"> + <fileset dir="${build.test.dir}/classes"> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/EndpointInterface.class"/> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/Concat.class"/> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/ConcatResponse.class"/> + </fileset> + <metainf dir="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/META-INF"> + <include name="application-client.xml"/> + <include name="jboss-client.xml"/> + <include name="jaxrpc-mapping.xml"/> + <include name="wsdl/**"/> + </metainf> + </jar> </target> <!-- @@ -62,4 +87,4 @@ </antcall> </target> -</project> \ No newline at end of file +</project> Modified: branches/jbossws-1.0/src/main/resources/schema/jbossws-tool_1_0.xsd =================================================================== --- branches/jbossws-1.0/src/main/resources/schema/jbossws-tool_1_0.xsd 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/main/resources/schema/jbossws-tool_1_0.xsd 2006-07-06 01:20:41 UTC (rev 568) @@ -230,6 +230,11 @@ <xs:documentation>Specifies the location of the WSDL file as a URL. The URL may be either absolute or relative to the current directory. Remote protocols such as http are supported.</xs:documentation> </xs:annotation> </xs:attribute> + <xs:attribute name="unwrap" type="xs:boolean" use="optional" default="false"> + <xs:annotation> + <xs:documentation>Whether to unwrap a document/literal webservice reques and response message. This is intended to be used on a service that follows the "wrapped" convention.</xs:documentation> + </xs:annotation> + </xs:attribute> </xs:complexType> <xs:complexType name="parameterType"> <xs:attribute name="type" use="required"> Modified: branches/jbossws-1.0/src/test/ant/build-jars.xml =================================================================== --- branches/jbossws-1.0/src/test/ant/build-jars.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/ant/build-jars.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -1303,6 +1303,26 @@ </metainf> </jar> + <!-- jbossws-samples-jsr181pojo-docwrapped --> + <war warfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped.war" webxml="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml"> + <classes dir="${build.test.dir}/classes"> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/JSEBean01.class"/> + </classes> + </war> + <jar jarfile="${build.test.dir}/libs/jbossws-samples-jsr181pojo-docwrapped-client.jar"> + <fileset dir="${build.test.dir}/classes"> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/EndpointInterface.class"/> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/Concat.class"/> + <include name="org/jboss/test/ws/samples/jsr181pojo/docwrapped/ConcatResponse.class"/> + </fileset> + <metainf dir="${build.test.dir}/resources/samples/jsr181pojo/docwrapped/META-INF"> + <include name="application-client.xml"/> + <include name="jboss-client.xml"/> + <include name="jaxrpc-mapping.xml"/> + <include name="wsdl/**"/> + </metainf> + </jar> + <!-- jbossws-samples-message --> <war warfile="${build.test.dir}/libs/jbossws-samples-message.war" webxml="${build.test.dir}/resources/samples/message/WEB-INF/web.xml"> <classes dir="${build.test.dir}/classes"> Modified: branches/jbossws-1.0/src/test/build.xml =================================================================== --- branches/jbossws-1.0/src/test/build.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/build.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -269,6 +269,10 @@ <wstools dest="${build.test.dir}/wstools/resources/samples/jsr109pojo/rpclit/WEB-INF" config="${test.resources.dir}/samples/jsr109pojo/rpclit/wstools-config.xml"/> <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181ejb/META-INF" config="${test.resources.dir}/samples/jsr181ejb/wstools-config.xml"/> <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/META-INF" config="${test.resources.dir}/samples/jsr181pojo/wstools-config.xml"/> + <wstools dest="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" config="${test.resources.dir}/samples/jsr181pojo/docwrapped/wstools-config.xml"/> + <move todir="${build.test.dir}/wstools/java"> + <fileset dir="${build.test.dir}/wstools/resources/samples/jsr181pojo/docwrapped/META-INF" includes="org/**"/> + </move> <wstools dest="${build.test.dir}/wstools/resources/samples/message/WEB-INF" config="${test.resources.dir}/samples/message/wstools-config.xml"/> <!-- wstools dest="${build.test.dir}/wstools/resources/samples/mtom/WEB-INF" config="${test.resources.dir}/samples/mtom/wstools-config.xml"/ --> <wstools dest="${build.test.dir}/wstools/resources/samples/oneway/WEB-INF" config="${test.resources.dir}/samples/oneway/wstools-config.xml"/> @@ -450,4 +454,4 @@ <delete dir="${build.test.dir}"/> </target> -</project> \ No newline at end of file +</project> Added: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<application-client 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/application-client_1_4.xsd" + version="1.4"> + + <display-name>JSR-181 Annotation test</display-name> + + <service-ref> + <service-ref-name>service/TestService</service-ref-name> + <service-interface>javax.xml.rpc.Service</service-interface> + <wsdl-file>META-INF/wsdl/TestService.wsdl</wsdl-file> + <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file> + <port-component-ref> + <service-endpoint-interface>org.jboss.test.ws.samples.jsr181pojo.docwrapped.EndpointInterface</service-endpoint-interface> + </port-component-ref> + </service-ref> + +</application-client> + Property changes on: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/application-client.xml ___________________________________________________________________ Name: svn:keywords + Id Revision Name: svn:eol-style + LF Added: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -0,0 +1,9 @@ +<?xml version='1.0' encoding='UTF-8' ?> + +<!DOCTYPE jboss-client PUBLIC + "-//JBoss//DTD Application Client 4.0//EN" + "http://www.jboss.org/j2ee/dtd/jboss-client_4_0.dtd"> + +<jboss-client> + <jndi-name>jbossws-client</jndi-name> +</jboss-client> Property changes on: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/jboss-client.xml ___________________________________________________________________ Name: svn:keywords + Id Revision Name: svn:eol-style + LF Added: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl =================================================================== --- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl 2006-07-06 01:20:41 UTC (rev 568) @@ -0,0 +1,48 @@ +<definitions name='TestService' targetNamespace='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns:xsd='http://www.w3.org/2001/XMLSchema'> + <types> + <schema elementFormDefault='qualified' targetNamespace='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns='http://www.w3.org/2001/XMLSchema' xmlns:soap11-enc='http://schemas.xmlsoap.org/soap/encoding/' xmlns:tns='http://org.jboss.ws/samples/jsr181pojo/docwrapped' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'> + <complexType name='concat'> + <sequence> + <element name='String_1' nillable='true' type='string'/> + <element name='long_1' type='long'/> + </sequence> + </complexType> + <complexType name='concatResponse'> + <sequence> + <element name='result' nillable='true' type='string'/> + </sequence> + </complexType> + <element name='concat' type='tns:concat'/> + <element name='concatResponse' type='tns:concatResponse'/> + </schema> + </types> + <message name='EndpointInterface_concat'> + <part element='tns:concat' name='parameters'/> + </message> + <message name='EndpointInterface_concatResponse'> + <part element='tns:concatResponse' name='result'/> + </message> + <portType name='EndpointInterface'> + <operation name='concat'> + <input message='tns:EndpointInterface_concat'/> + <output message='tns:EndpointInterface_concatResponse'/> + </operation> + </portType> + <binding name='EndpointInterfaceBinding' type='tns:EndpointInterface'> + <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/> + <operation name='concat'> + <soap:operation soapAction=''/> + <input> + <soap:body use='literal'/> + </input> + <output> + <soap:body use='literal'/> + </output> + </operation> + </binding> + <service name='TestService'> + <port binding='tns:EndpointInterfaceBinding' name='EndpointInterfacePort'> + <soap:address location='http://draught:8080/jbossws-samples-jsr181pojo-docwrapped/TestService'/> + </port> + </service> +</definitions> \ No newline at end of file Property changes on: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl ___________________________________________________________________ Name: svn:keywords + Id Revision Name: svn:eol-style + LF Added: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -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>TestService</servlet-name> + <servlet-class>org.jboss.test.ws.samples.jsr181pojo.docwrapped.JSEBean01</servlet-class> + </servlet> + + <servlet-mapping> + <servlet-name>TestService</servlet-name> + <url-pattern>/*</url-pattern> + </servlet-mapping> + +</web-app> + Property changes on: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/WEB-INF/web.xml ___________________________________________________________________ Name: svn:keywords + Id Revision Name: svn:eol-style + LF Added: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml 2006-07-05 14:36:17 UTC (rev 567) +++ branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml 2006-07-06 01:20:41 UTC (rev 568) @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + wstools -config wstools-config.xml +--> + +<configuration xmlns="http://www.jboss.org/jbossws-tools" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.jboss.org/jbossws-tools http://www.jboss.org/jbossws-tools/schema/jbossws-tool_1_0.xsd"> + + <global> + <package-namespace package="org.jboss.test.ws.samples.jsr181pojo.docwrapped" namespace="http://org.jboss.ws/samples/jsr181pojo/docwrapped"/> + </global> + <wsdl-java unwrap="true" file="resources/samples/jsr181pojo/docwrapped/META-INF/wsdl/TestService.wsdl"> + <mapping file="jaxrpc-mapping.xml" /> + </wsdl-java> + +</configuration> Property changes on: branches/jbossws-1.0/src/test/resources/samples/jsr181pojo/docwrapped/wstools-config.xml ___________________________________________________________________ Name: svn:keywords + Id Revision Name: svn:eol-style + LF |
From: <jbo...@li...> - 2006-07-05 22:44:46
|
Author: estebanschifman Date: 2006-07-05 18:44:42 -0400 (Wed, 05 Jul 2006) New Revision: 4924 Modified: labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java Log: Encapsulate instantiation of SqlChildProcess class in the getSqlChildProcess() method (easier to have your own - only this getter changes) Modified: labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java =================================================================== --- labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java 2006-07-05 22:31:53 UTC (rev 4923) +++ labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java 2006-07-05 22:44:42 UTC (rev 4924) @@ -261,6 +261,19 @@ } } //________________________________ + +/** + * Override this method if you wish to extend the SqlChildProcess class + * (for example with ad-hoc notifications for OK list or Error list) + * @param p_oParms = DomElement containing attributes of trigger + * @return the SqlChildProcess to be started + * @throws Exception + */ + protected SqlChildProcess getSqlChildProcess(DomElement p_oParms) + throws Exception + { + return new SqlChildProcess(this, p_oParms); + } //________________________________ @Override protected void doYourJob(DomElement p_oP) throws Exception @@ -274,11 +287,11 @@ break; } - new Thread(m_oThrGrp, - new SqlChildProcess(this, oCurr)).start(); + SqlChildProcess oNew = getSqlChildProcess(oCurr); + new Thread(m_oThrGrp,oNew).start(); // Wait a little bit, so thread count will be updated // at some point in the past, this sleep was indispensable - // new thread control classes in Java 5 should be explored + // new thread control classes in Java 5 might have solved the problem Thread.sleep(500); } |
From: <jbo...@li...> - 2006-07-05 22:31:58
|
Author: estebanschifman Date: 2006-07-05 18:31:53 -0400 (Wed, 05 Jul 2006) New Revision: 4923 Modified: labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/AbstractPoller.java labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java Log: Change some constants, and add documentation Modified: labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/AbstractPoller.java =================================================================== --- labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/AbstractPoller.java 2006-07-05 20:54:37 UTC (rev 4922) +++ labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/AbstractPoller.java 2006-07-05 22:31:53 UTC (rev 4923) @@ -51,8 +51,8 @@ public static final String PARM_ACTION_CLASS = "actionClass"; - public static final String PARM_POLL_LTCY = "pollLatency"; - public static final String PARM_RELOAD_LTCY = "reloadLatency"; + public static final String PARM_POLL_LTCY = "pollLatencySecs"; + public static final String PARM_RELOAD_LTCY = "parmsReloadSecs"; public static final String PARM_TOPIC_CONN_FACT = "topicConnFactoryClass"; public static final String PARM_QUIESCE_TOPIC = "quiesceTopic"; Modified: labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java =================================================================== --- labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java 2006-07-05 20:54:37 UTC (rev 4922) +++ labs/jbossesb/trunk/ESBCore/listeners/src/org/jboss/soa/esb/listeners/SqlTablePoller.java 2006-07-05 22:31:53 UTC (rev 4923) @@ -24,19 +24,102 @@ package org.jboss.soa.esb.listeners; import java.util.*; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; import java.lang.reflect.*; import java.sql.*; import javax.sql.*; +import org.jboss.soa.esb.services.InotificationHandler; +import org.jboss.soa.esb.services.NotificationHandlerFactory; import org.jboss.soa.esb.util.*; +import org.jboss.soa.esb.common.EsbSysProps; import org.jboss.soa.esb.helpers.*; import org.jboss.soa.esb.helpers.persist.*; +import org.jboss.soa.esb.notification.NotificationList; import org.jboss.soa.esb.processors.*; - +/** + * SqlTablePoller class + * + * the "main(args)" static method of this class will: + * 1) load the parameters from the Name supplied in args[0] into a DomElement + * (See org.jboss.soa.esb.parameters package for options on parameter repositories) + * 2) for each child element (1st level) of the DomElement, it will try to initiate + * a Thread group that can start a maximum of simultaneous child threads + * "maxThreads" supplied in parameters - default=1 + * 3) each thread group will poll a SQL table with parameters defined in the corresponding + * DomElement (example below has only 1 child element, but you can have several) + * 4) Execution will orderly finish when a message is received in the "quiesceTopic" + * with an optional "quiesceSelector" (please see AbstractPoller class constants) + * + * The SQL table(s) that is (are) polled should have + * 1) a unique key (see "keyFields" parameter) that will be used to update status + * 2) a column to indicate the "processing status" of this trigger row (see ROW_STATE enum) + * this column will be updated by the SqlChildProcess.run() method (see internal + * protected class SqlChildProcess) + * + * Each retrieved row (see OPTIONAL_ATT.whereCondition) should be considered as a trigger + * that is intended to instantiate an object of "actionClass". The new instance will + * receive the full DomElement (level 1 for each child group), with an added child + * DomElement (see EsbAbstractProcessor.PARMS_THIS_INSTANCE) containing attributes + * corresponding to the values of the "selectFields" columns in the row that triggered + * the "actionClass" + * + * The ZZDummyProcessor (in this package) is a trivial actionClass included with the + * sole purpose of illustrating what the actionClass will receive, and the entry points + * where users can insert their logic + * + * GOOD LUCK !! + * + * @author Esteban Schifman + */ public class SqlTablePoller extends AbstractPoller { +/* ___________________ Example XML configuration file for a SqlTablePoller_______________ + * +<DocumentElementName> + <ExampleListenChapter + pollLatencySecs="20" + parmsReloadSecs="300" + + maxThreads="2" + + actionClass="org.jboss.soa.esb.listeners.ZZDummyProcessor" + + driver-class="org.postgresql.Driver" + connection-url="jdbc:postgresql://myhost:5432/myDB" + user-name="postgres" + password="" + + tableName="test_notif_table" + selectFields="oid,ref,msg" + keyFields="oid,ref" + inProcessField="statusCol" + whereCondition="src='pepe'" + orderBy="oid desc" + > + <NotificationList type="OK"> + <target class="NotifyFiles"> + <file URI="file:///tmp/jbossEsb/notifyDir/ListenOnNotifTable.notifOK" + append="true" + /> + </target> + </NotificationList> + + <NotificationList type="err"> + <target class="NotifyFiles"> + <file URI="file:///tmp/jbossEsb/notifyDir/ListenOnNotifTable.notifErr" + append="true" + /> + </target> + </NotificationList> + </ExampleListenChapter> +</DocumentElementName> + * + */ + /** - * These are the mandatory attributes needed for any SqlTablePoller + * Mandatory attributes needed for SqlTablePoller * 1) Table name * 2) Comma separated list of fields needed in the ResultSet * 3) Comma separated list of fields that constitute a unique ID of the working row @@ -352,6 +435,7 @@ m_oParent = p_oGrp; this.addObserver(m_oParent); setChanged(); + // add 1 to child thread count notifyObservers(new Integer(1)); m_oInstP = p_oP; @@ -360,7 +444,8 @@ } //__________________________________ public void run() - { + { + Exception oAbend = null; try { m_PSsel4U = m_oConn.prepareStatement(m_oParent.selectForUpdStatement()); m_PSupd = m_oConn.prepareStatement(m_oParent.updateStatement()); @@ -373,14 +458,21 @@ // autoincrement leaves things ready for next SQL parameter m_PSupd.setString (++iParm,sVal); } + // will only continue if it can change status to "Working" if (! changeStatus(ROW_STATE.Pending,ROW_STATE.Working)) - return; + oAbend = new Exception("Unable to change status to Working"); } catch (Exception e) { m_oLogger.error("Problems with update statements",e); - return; + if (null!=m_oConn) + { try { m_oConn.rollback(); } + catch (Exception eR) { /* OK do nothing */} + m_oConn.release(); + } + oAbend = e; } + if (null==oAbend) try { Constructor oCnst = m_oParent.m_oExecClass @@ -389,17 +481,30 @@ oParms.addElemChild(m_oInstP); Object oInst = oCnst.newInstance (new Object[] {oParms}); ((EsbAbstractProcessor)oInst).execute(); + changeStatus(ROW_STATE.Working,ROW_STATE.Done); } catch (Exception e) - { m_oLogger.error("run() FAILED",e); + { m_oLogger.error("run() FAILED",e); + try + { m_oConn.rollback(); + changeStatus(null,ROW_STATE.Error); + } + catch (Exception CS) { /* What could we do here ? */} + oAbend = e; } finally { if (null!=m_oConn) m_oConn.release(); } - + + if (null==oAbend) + notifyOK(); + else + notifyError(oAbend); + setChanged(); + // decrease child thread count in parent group notifyObservers(new Integer(-1)); } //______________________________ @@ -420,7 +525,64 @@ return true; } //______________________________ - + + public void notifyOK() + { try + { + String sNotif = getOkNotifContent(); + for (DomElement oCurr : m_oParms.getElementChildren(NotificationList.ELEMENT)) + { NotificationList oNL = new NotificationList(oCurr); + if (! oNL.isOK()) continue; + getNotifHandler().sendNotifications(oCurr,sNotif); + } + } + catch (Exception e) {} + } //__________________________________ + + public void notifyError(Exception p_e) + { + String sNotif = getErrorNotifContent(); + ByteArrayOutputStream oBO = new ByteArrayOutputStream(); + PrintStream oPS = new PrintStream(oBO); + try + { oPS.println(sNotif); + if (null != p_e) p_e.printStackTrace(oPS); + oPS.close(); + + String sMsg = oBO.toString(); + for (DomElement oCurr : m_oParms.getElementChildren(NotificationList.ELEMENT)) + { NotificationList oNL = new NotificationList(oCurr); + if (! oNL.isErr()) continue; + getNotifHandler().sendNotifications(oNL,sMsg); + } + } + catch (Exception e) { } + } //__________________________________ + + protected InotificationHandler getNotifHandler() + { + try { return NotificationHandlerFactory.getNotifHandler + ("remote" + ,EsbSysProps.getJndiServerType() + ,EsbSysProps.getJndiServerURL() + ); + } + catch (Exception e) + { m_oLogger.error(formatLogMsg("Notification FAILED"),e); + return null; + } + } //______________________________ + + // These methods to be overriden by you own derived class + protected String getOkNotifContent() + { + return "Success"; + } + protected String getErrorNotifContent() + { + return "FAILURE"; + } + } //______________________________________________________ } //____________________________________________________________________________ |
From: <jbo...@li...> - 2006-07-05 20:54:42
|
Author: estebanschifman Date: 2006-07-05 16:54:37 -0400 (Wed, 05 Jul 2006) New Revision: 4922 Modified: labs/jbossesb/trunk/ESBCore/Tests/build.xml Log: Modified: labs/jbossesb/trunk/ESBCore/Tests/build.xml =================================================================== --- labs/jbossesb/trunk/ESBCore/Tests/build.xml 2006-07-05 19:43:19 UTC (rev 4921) +++ labs/jbossesb/trunk/ESBCore/Tests/build.xml 2006-07-05 20:54:37 UTC (rev 4922) @@ -1,63 +1,47 @@ <?xml version="1.0"?> -<project name="BuildTestClasses" default="compile" basedir="."> +<project name="BuildEsbTests" default="org.jboss.esb.tests.compile" basedir="."> - <property name="jar.name" value="jboss_esb_tests"/> - <property name="distrib.dir" value="../dist"/> - <property name="bin.dir" value="${basedir}/bin"/> - <property name="src.dir" value="${basedir}/src"/> + <property name="org.jboss.esb.tests.bin.dir" value="${org.jboss.esb.internal.dest}/tests"/> + <property name="org.jboss.esb.core.bin.dir" value="${org.jboss.esb.internal.dest}/classes"/> + <property name="org.jboss.esb.tests.src.dir" value="${basedir}/src"/> + <property name="org.jboss.esb.root.dir" value="../.."/> <property environment="env"/> - <path id="base.class.path"> - <fileset dir="${env.JBOSS_HOME}/client" includes="activation.jar jbossall-client.jar log4j.jar mail.jar"/> + <property name="org.jboss.esb.ext.lib.dir" value="${org.jboss.esb.root.dir}/lib/ext"/> + <condition property="org.jboss.esb.ext.lib.dir" value="{org.jboss.esb.jboss.home}/client"> + <equals arg1="${org.jboss.esb.frominstall}" arg2="yes"/> + </condition> + + <path id="org.jboss.esb.tests.base.classpath"> + <fileset dir="${org.jboss.esb.ext.lib.dir}" includes="activation.jar jbossall-client.jar log4j.jar mail.jar"/> + <pathelement location="${org.jboss.esb.core.bin.dir}"/> </path> - - <path id="default.class.path"> - <path refid="base.class.path"/> - <pathelement location="../EsbCommon/bin"/> - <pathelement location="../EsbServices/bin"/> - </path> - - <target name="init"> + + <target name="org.jboss.esb.tests.init"> <tstamp> <format property="TODAY" pattern="d-MM-yy"/> </tstamp> + + <mkdir dir="${org.jboss.esb.tests.bin.dir}"/> </target> + + <target name="clean"/> - <target name="prepare" depends="init"> - <mkdir dir="${bin.dir}"/> - <mkdir dir="${distrib.dir}"/> - </target> + <target name="purge" depends="clean"> + <delete dir="${org.jboss.esb.tests.bin.dir}"/> + </target> + + <target name="org.jboss.esb.tests.compile" if="org.jboss.esb.buildtests" depends="org.jboss.esb.tests.init"> - <target name="clean" description="Remove bin directory"> - <delete dir="${bin.dir}"/> - </target> - - <target name="compile" depends="prepare" - description="Compile all classes"> - <javac - destdir="${bin.dir}" - classpathref="default.class.path" - debug="on" - optimize="off" + destdir="${org.jboss.esb.tests.bin.dir}" + classpathref="org.jboss.esb.tests.base.classpath" + debug="${org.jboss.esb.debug}" + optimize="${org.jboss.esb.optimize}" > - <src path="${src.dir}"/> + <src path="${org.jboss.esb.tests.src.dir}"/> </javac> </target> - <target name="recompile" depends="clean,compile" - description="Clean and compile"/> - - <target name="jar" depends="compile" description="Assemble jar files"> - <delete file="${distrib.dir}/${jar.name}.jar" /> - <jar destfile="${distrib.dir}/${jar.name}.jar" - basedir="${bin.dir}" - includes="**/*.class" - excludes="test/**" - /> - </target> - - <target name="all" depends="recompile,jar" /> - </project> |
From: <jbo...@li...> - 2006-07-05 19:43:24
|
Author: arvinder Date: 2006-07-05 15:43:19 -0400 (Wed, 05 Jul 2006) New Revision: 4921 Removed: labs/jbossesb/branches/JBESB-71/ Log: JBESB-71 Move existing tests to JUnit |
From: <jbo...@li...> - 2006-07-05 18:10:05
|
Author: dam...@jb... Date: 2006-07-05 14:09:57 -0400 (Wed, 05 Jul 2006) New Revision: 4920 Removed: labs/jbossesb/trunk/ESBCore/Tests/something.txt Modified: labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml Log: Undoing test changes. Modified: labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml =================================================================== --- labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml 2006-07-05 18:04:29 UTC (rev 4919) +++ labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml 2006-07-05 18:09:57 UTC (rev 4920) @@ -44,5 +44,4 @@ </target> -<!-- test comment --> </project> Deleted: labs/jbossesb/trunk/ESBCore/Tests/something.txt =================================================================== |
From: <jbo...@li...> - 2006-07-05 18:04:37
|
Author: dam...@jb... Date: 2006-07-05 14:04:29 -0400 (Wed, 05 Jul 2006) New Revision: 4919 Modified: labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml Log: Test checkin. Modified: labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml =================================================================== --- labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml 2006-07-05 18:03:37 UTC (rev 4918) +++ labs/jbossesb/trunk/ESBCore/Tests/realbuild.xml 2006-07-05 18:04:29 UTC (rev 4919) @@ -44,4 +44,5 @@ </target> +<!-- test comment --> </project> |
From: <jbo...@li...> - 2006-07-05 18:03:50
|
Author: dam...@jb... Date: 2006-07-05 14:03:37 -0400 (Wed, 05 Jul 2006) New Revision: 4918 Added: labs/jbossesb/trunk/ESBCore/Tests/something.txt Log: Test checkin. Added: labs/jbossesb/trunk/ESBCore/Tests/something.txt =================================================================== |
From: <jbo...@li...> - 2006-07-05 17:56:41
|
Author: arvinder Date: 2006-07-05 13:56:36 -0400 (Wed, 05 Jul 2006) New Revision: 4917 Added: labs/jbossesb/branches/JBESB-71/ Log: JBESB-71 Move existing tests to JUnit Copied: labs/jbossesb/branches/JBESB-71 (from rev 4916, labs/jbossesb/trunk) |
From: <jbo...@li...> - 2006-07-05 15:33:05
|
Author: mar...@jb... Date: 2006-07-05 11:33:00 -0400 (Wed, 05 Jul 2006) New Revision: 4916 Modified: labs/jbossesb/trunk/ESBCore/build.xml labs/jbossesb/trunk/build.xml Log: Modified: labs/jbossesb/trunk/ESBCore/build.xml =================================================================== --- labs/jbossesb/trunk/ESBCore/build.xml 2006-07-05 14:21:33 UTC (rev 4915) +++ labs/jbossesb/trunk/ESBCore/build.xml 2006-07-05 15:33:00 UTC (rev 4916) @@ -18,6 +18,12 @@ </tstamp> </target> + <!-- + <condition property="org.jboss.esb.internal.dest" value=".."> + <equals arg1="$org.jboss.esb.internal.dest}" arg2=""/> + </condition> + --> + <!-- =================================================================== --> <!-- Prepares the directory structure --> <!-- =================================================================== --> Modified: labs/jbossesb/trunk/build.xml =================================================================== --- labs/jbossesb/trunk/build.xml 2006-07-05 14:21:33 UTC (rev 4915) +++ labs/jbossesb/trunk/build.xml 2006-07-05 15:33:00 UTC (rev 4916) @@ -13,6 +13,10 @@ <!-- Set default properties filename --> <property name="org.jboss.esb.properties" value="product.properties"/> + <!-- Some default build locations --> + <property name="org.jboss.esb.internal.dest" value="${basedir}/build"/> + <property name="org.jboss.esb.internal.jar.dest" value="${basedir}/lib"/> + <!-- Load Build Properties File --> <property file="${org.jboss.esb.properties}"/> @@ -52,8 +56,6 @@ <!-- Path names --> <property name="org.jboss.esb.internal.core" value="ESBCore"/> - <property name="org.jboss.esb.internal.dest" value="${basedir}/build"/> - <property name="org.jboss.esb.internal.jar.dest" value="${basedir}/lib"/> <property name="org.jboss.esb.internal.javadocs.dest" value="javadocs"/> <!-- Initialisation --> |
From: <jbo...@li...> - 2006-07-05 14:36:28
|
Author: hei...@jb... Date: 2006-07-05 10:36:17 -0400 (Wed, 05 Jul 2006) New Revision: 567 Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/JBossXBMarshallerImpl.java branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/SchemaBindingBuilder.java branches/jbossws-1.0/src/test/resources/jbws718/WEB-INF/jaxrpc-mapping.xml Log: Fix JBWS-988 Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/JBossXBMarshallerImpl.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/JBossXBMarshallerImpl.java 2006-07-05 14:34:18 UTC (rev 566) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/JBossXBMarshallerImpl.java 2006-07-05 14:36:17 UTC (rev 567) @@ -86,7 +86,8 @@ delegate.addRootElement(xmlName); QName xmlType = (QName)getProperty(JAXBConstants.JAXB_TYPE_QNAME); - if (xmlType != null) + boolean isAnonymousType = (xmlType != null && xmlType.getLocalPart().startsWith(">")); + if (xmlType != null && !isAnonymousType) { delegate.setRootTypeQName(xmlType); } Modified: branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/SchemaBindingBuilder.java =================================================================== --- branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/SchemaBindingBuilder.java 2006-07-05 14:34:18 UTC (rev 566) +++ branches/jbossws-1.0/src/main/java/org/jboss/ws/jaxb/SchemaBindingBuilder.java 2006-07-05 14:36:17 UTC (rev 567) @@ -416,13 +416,8 @@ if (typeBinding != null) { - if(isAnonymousType) - { - schemaBinding.addType( new TypeBinding( xmlType, typeBinding) ); - } - - schemaBinding.addElement(xmlName, typeBinding); - + if(!isAnonymousType) + schemaBinding.addElement(xmlName, typeBinding); } else if (xmlType.equals(Constants.TYPE_LITERAL_ANYTYPE) == false) { Modified: branches/jbossws-1.0/src/test/resources/jbws718/WEB-INF/jaxrpc-mapping.xml =================================================================== --- branches/jbossws-1.0/src/test/resources/jbws718/WEB-INF/jaxrpc-mapping.xml 2006-07-05 14:34:18 UTC (rev 566) +++ branches/jbossws-1.0/src/test/resources/jbws718/WEB-INF/jaxrpc-mapping.xml 2006-07-05 14:36:17 UTC (rev 567) @@ -1,51 +1,51 @@ <?xml version='1.0' encoding='UTF-8'?><java-wsdl-mapping version='1.1' 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://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd'> - <package-mapping> - <package-type>org.jboss.test.ws.jbws718</package-type> - <namespaceURI>http://jboss.org/test/ws/jbws718</namespaceURI> - </package-mapping> - <java-xml-type-mapping> - <java-type>org.jboss.test.ws.jbws718.PingMsg</java-type> - <anonymous-type-qname xmlns:typeNS='http://jboss.org/test/ws/jbws718'>typeNS:>PingMsg</anonymous-type-qname> - <qname-scope>complexType</qname-scope> - <variable-mapping> - <java-variable-name>message</java-variable-name> - <xml-element-name>message</xml-element-name> - </variable-mapping> - </java-xml-type-mapping> - <java-xml-type-mapping> - <java-type>org.jboss.test.ws.jbws718.PingMsgResponse</java-type> - <anonymous-type-qname xmlns:typeNS='http://jboss.org/test/ws/jbws718'>typeNS:>PingMsgResponse</anonymous-type-qname> - <qname-scope>complexType</qname-scope> - </java-xml-type-mapping> - <service-interface-mapping> - <service-interface>org.jboss.test.ws.jbws718.TestService_Service</service-interface> - <wsdl-service-name xmlns:serviceNS='http://jboss.org/test/ws/jbws718'>serviceNS:TestService</wsdl-service-name> - <port-mapping> - <port-name>TestServicePort</port-name> - <java-port-name>TestServicePort</java-port-name> - </port-mapping> - </service-interface-mapping> - <service-endpoint-interface-mapping> - <service-endpoint-interface>org.jboss.test.ws.jbws718.TestService_PortType</service-endpoint-interface> - <wsdl-port-type xmlns:portTypeNS='http://jboss.org/test/ws/jbws718'>portTypeNS:TestService</wsdl-port-type> - <wsdl-binding xmlns:bindingNS='http://jboss.org/test/ws/jbws718'>bindingNS:TestServiceBinding</wsdl-binding> - <service-endpoint-method-mapping> - <java-method-name>ping</java-method-name> - <wsdl-operation>ping</wsdl-operation> - <method-param-parts-mapping> - <param-position>0</param-position> - <param-type>org.jboss.test.ws.jbws718.PingMsg</param-type> - <wsdl-message-mapping> - <wsdl-message xmlns:wsdlMsgNS='http://jboss.org/test/ws/jbws718'>wsdlMsgNS:PingIn</wsdl-message> - <wsdl-message-part-name>parameters</wsdl-message-part-name> - <parameter-mode>IN</parameter-mode> - </wsdl-message-mapping> - </method-param-parts-mapping> - <wsdl-return-value-mapping> - <method-return-value>org.jboss.test.ws.jbws718.PingMsgResponse</method-return-value> - <wsdl-message xmlns:wsdlMsgNS='http://jboss.org/test/ws/jbws718'>wsdlMsgNS:PingOut</wsdl-message> - <wsdl-message-part-name>parameters</wsdl-message-part-name> - </wsdl-return-value-mapping> - </service-endpoint-method-mapping> - </service-endpoint-interface-mapping> + <package-mapping> + <package-type>org.jboss.test.ws.jbws718</package-type> + <namespaceURI>http://jboss.org/test/ws/jbws718</namespaceURI> + </package-mapping> + <java-xml-type-mapping> + <java-type>org.jboss.test.ws.jbws718.PingMsg</java-type> + <anonymous-type-qname xmlns:typeNS='http://jboss.org/test/ws/jbws718'>typeNS:>PingMsg</anonymous-type-qname> + <qname-scope>complexType</qname-scope> + <variable-mapping> + <java-variable-name>message</java-variable-name> + <xml-element-name>message</xml-element-name> + </variable-mapping> + </java-xml-type-mapping> + <java-xml-type-mapping> + <java-type>org.jboss.test.ws.jbws718.PingMsgResponse</java-type> + <anonymous-type-qname xmlns:typeNS='http://jboss.org/test/ws/jbws718'>typeNS:>PingMsgResponse</anonymous-type-qname> + <qname-scope>complexType</qname-scope> + </java-xml-type-mapping> + <service-interface-mapping> + <service-interface>org.jboss.test.ws.jbws718.TestService_Service</service-interface> + <wsdl-service-name xmlns:serviceNS='http://jboss.org/test/ws/jbws718'>serviceNS:TestService</wsdl-service-name> + <port-mapping> + <port-name>TestServicePort</port-name> + <java-port-name>TestServicePort</java-port-name> + </port-mapping> + </service-interface-mapping> + <service-endpoint-interface-mapping> + <service-endpoint-interface>org.jboss.test.ws.jbws718.TestService_PortType</service-endpoint-interface> + <wsdl-port-type xmlns:portTypeNS='http://jboss.org/test/ws/jbws718'>portTypeNS:TestService</wsdl-port-type> + <wsdl-binding xmlns:bindingNS='http://jboss.org/test/ws/jbws718'>bindingNS:TestServiceBinding</wsdl-binding> + <service-endpoint-method-mapping> + <java-method-name>ping</java-method-name> + <wsdl-operation>ping</wsdl-operation> + <method-param-parts-mapping> + <param-position>0</param-position> + <param-type>org.jboss.test.ws.jbws718.PingMsg</param-type> + <wsdl-message-mapping> + <wsdl-message xmlns:wsdlMsgNS='http://jboss.org/test/ws/jbws718'>wsdlMsgNS:PingIn</wsdl-message> + <wsdl-message-part-name>parameters</wsdl-message-part-name> + <parameter-mode>IN</parameter-mode> + </wsdl-message-mapping> + </method-param-parts-mapping> + <wsdl-return-value-mapping> + <method-return-value>org.jboss.test.ws.jbws718.PingMsgResponse</method-return-value> + <wsdl-message xmlns:wsdlMsgNS='http://jboss.org/test/ws/jbws718'>wsdlMsgNS:PingOut</wsdl-message> + <wsdl-message-part-name>parameters</wsdl-message-part-name> + </wsdl-return-value-mapping> + </service-endpoint-method-mapping> + </service-endpoint-interface-mapping> </java-wsdl-mapping> \ No newline at end of file |
From: <jbo...@li...> - 2006-07-05 14:34:45
|
Author: tho...@jb... Date: 2006-07-05 10:34:18 -0400 (Wed, 05 Jul 2006) New Revision: 566 Modified: trunk/src/main/java/org/jboss/ws/client/CommonClient.java trunk/src/main/java/org/jboss/ws/deployment/JAXWSClientMetaDataBuilder.java trunk/src/main/java/org/jboss/ws/deployment/JAXWSMetaDataBuilder.java trunk/src/main/java/org/jboss/ws/deployment/JSR109ClientMetaDataBuilder.java trunk/src/main/java/org/jboss/ws/deployment/JSR109ServerMetaDataBuilder.java trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java trunk/src/main/java/org/jboss/ws/integration/jboss/ServiceEndpointInvokerEJB21.java trunk/src/main/java/org/jboss/ws/jaxrpc/ParameterWrapping.java trunk/src/main/java/org/jboss/ws/metadata/ClientEndpointMetaData.java trunk/src/main/java/org/jboss/ws/metadata/EndpointMetaData.java trunk/src/main/java/org/jboss/ws/metadata/OperationMetaData.java trunk/src/main/java/org/jboss/ws/metadata/ServerEndpointMetaData.java trunk/src/main/java/org/jboss/ws/soap/SOAPMessageContextImpl.java trunk/src/main/java/org/jboss/ws/tools/metadata/ToolsEndpointMetaData.java trunk/src/main/java/org/jboss/ws/utils/JavaUtils.java trunk/src/test/java/org/jboss/test/ws/jbws871/JBWS871TestCase.java Log: Fix JAXB array handling Modified: trunk/src/main/java/org/jboss/ws/client/CommonClient.java =================================================================== --- trunk/src/main/java/org/jboss/ws/client/CommonClient.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/client/CommonClient.java 2006-07-05 14:34:18 UTC (rev 566) @@ -55,6 +55,7 @@ import org.jboss.ws.metadata.ParameterMetaData; import org.jboss.ws.metadata.ServiceMetaData; import org.jboss.ws.metadata.UnifiedMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.soap.EndpointInfo; import org.jboss.ws.soap.MessageContextAssociation; import org.jboss.ws.soap.SOAPConnectionImpl; @@ -188,7 +189,7 @@ ServiceMetaData serviceMetaData = new ServiceMetaData(wsMetaData, new QName(Constants.NS_JBOSSWS_URI, "AnonymousService")); wsMetaData.addService(serviceMetaData); - epMetaData = new ClientEndpointMetaData(serviceMetaData, new QName(Constants.NS_JBOSSWS_URI, "AnonymousEndpoint")); + epMetaData = new ClientEndpointMetaData(serviceMetaData, new QName(Constants.NS_JBOSSWS_URI, "AnonymousEndpoint"), Type.JAXRPC); epMetaData.setStyle(Style.RPC); serviceMetaData.addEndpoint(epMetaData); Modified: trunk/src/main/java/org/jboss/ws/deployment/JAXWSClientMetaDataBuilder.java =================================================================== --- trunk/src/main/java/org/jboss/ws/deployment/JAXWSClientMetaDataBuilder.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/deployment/JAXWSClientMetaDataBuilder.java 2006-07-05 14:34:18 UTC (rev 566) @@ -45,6 +45,7 @@ import org.jboss.ws.metadata.TypeMappingMetaData; import org.jboss.ws.metadata.TypesMetaData; import org.jboss.ws.metadata.UnifiedMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.wsdl.NCName; import org.jboss.ws.metadata.wsdl.WSDLBinding; import org.jboss.ws.metadata.wsdl.WSDLBindingOperation; @@ -127,7 +128,7 @@ for (WSDLEndpoint wsdlEndpoint : wsdlService.getEndpoints()) { QName portName = wsdlEndpoint.getQName(); - ClientEndpointMetaData epMetaData = new ClientEndpointMetaData(serviceMetaData, portName); + ClientEndpointMetaData epMetaData = new ClientEndpointMetaData(serviceMetaData, portName, Type.JAXWS); epMetaData.setEndpointAddress(wsdlEndpoint.getAddress()); serviceMetaData.addEndpoint(epMetaData); Modified: trunk/src/main/java/org/jboss/ws/deployment/JAXWSMetaDataBuilder.java =================================================================== --- trunk/src/main/java/org/jboss/ws/deployment/JAXWSMetaDataBuilder.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/deployment/JAXWSMetaDataBuilder.java 2006-07-05 14:34:18 UTC (rev 566) @@ -41,6 +41,7 @@ import org.jboss.ws.metadata.ServerEndpointMetaData; import org.jboss.ws.metadata.ServiceMetaData; import org.jboss.ws.metadata.UnifiedMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.wsdl.WSDLUtils; /** An abstract annotation meta data builder. @@ -86,9 +87,8 @@ // Setup the ServerEndpointMetaData QName portName = new QName(targetNS, portTypeName + "Port"); - ServerEndpointMetaData sepMetaData = new ServerEndpointMetaData(serviceMetaData, portName); + ServerEndpointMetaData sepMetaData = new ServerEndpointMetaData(serviceMetaData, portName, Type.JAXWS); sepMetaData.setLinkName(linkName); - sepMetaData.setAnnotated(true); sepMetaData.setStyle(Style.DOCUMENT); sepMetaData.setParameterStyle(ParameterStyle.BARE); Modified: trunk/src/main/java/org/jboss/ws/deployment/JSR109ClientMetaDataBuilder.java =================================================================== --- trunk/src/main/java/org/jboss/ws/deployment/JSR109ClientMetaDataBuilder.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/deployment/JSR109ClientMetaDataBuilder.java 2006-07-05 14:34:18 UTC (rev 566) @@ -37,6 +37,7 @@ import org.jboss.ws.metadata.EndpointMetaData; import org.jboss.ws.metadata.ServiceMetaData; import org.jboss.ws.metadata.UnifiedMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.j2ee.UnifiedHandlerMetaData; import org.jboss.ws.metadata.j2ee.UnifiedServiceRefMetaData; import org.jboss.ws.metadata.jaxrpcmapping.JavaWsdlMapping; @@ -170,7 +171,7 @@ for (WSDLEndpoint wsdlEndpoint : wsdlService.getEndpoints()) { QName portName = wsdlEndpoint.getQName(); - ClientEndpointMetaData epMetaData = new ClientEndpointMetaData(serviceMetaData, portName); + ClientEndpointMetaData epMetaData = new ClientEndpointMetaData(serviceMetaData, portName, Type.JAXRPC); epMetaData.setEndpointAddress(wsdlEndpoint.getAddress()); serviceMetaData.addEndpoint(epMetaData); Modified: trunk/src/main/java/org/jboss/ws/deployment/JSR109ServerMetaDataBuilder.java =================================================================== --- trunk/src/main/java/org/jboss/ws/deployment/JSR109ServerMetaDataBuilder.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/deployment/JSR109ServerMetaDataBuilder.java 2006-07-05 14:34:18 UTC (rev 566) @@ -41,6 +41,7 @@ import org.jboss.ws.metadata.ServerEndpointMetaData; import org.jboss.ws.metadata.ServiceMetaData; import org.jboss.ws.metadata.UnifiedMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.j2ee.UnifiedApplicationMetaData; import org.jboss.ws.metadata.j2ee.UnifiedBeanMetaData; import org.jboss.ws.metadata.j2ee.UnifiedEjbPortComponentMetaData; @@ -126,7 +127,7 @@ // set service name serviceMetaData.setQName(wsdlEndpoint.getWsdlService().getQName()); - ServerEndpointMetaData sepMetaData = new ServerEndpointMetaData(serviceMetaData, portName); + ServerEndpointMetaData sepMetaData = new ServerEndpointMetaData(serviceMetaData, portName, Type.JAXRPC); sepMetaData.setPortComponentName(pcMetaData.getPortComponentName()); String ejbLink = pcMetaData.getEjbLink(); String servletLink = pcMetaData.getServletLink(); Modified: trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java =================================================================== --- trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java 2006-07-05 14:34:18 UTC (rev 566) @@ -71,6 +71,7 @@ import org.jboss.ws.metadata.TypeMappingMetaData; import org.jboss.ws.metadata.TypesMetaData; import org.jboss.ws.metadata.UnifiedMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.j2ee.UnifiedHandlerMetaData; import org.jboss.ws.metadata.j2ee.UnifiedInitParamMetaData; import org.jboss.ws.metadata.jsr181.HandlerChainMetaData; @@ -139,9 +140,8 @@ // Setup the ServerEndpointMetaData QName portName = new QName(targetNS, portTypeName + "Port"); - ServerEndpointMetaData sepMetaData = new ServerEndpointMetaData(serviceMetaData, portName); + ServerEndpointMetaData sepMetaData = new ServerEndpointMetaData(serviceMetaData, portName, Type.JAXWS); sepMetaData.setLinkName(linkName); - sepMetaData.setAnnotated(true); sepMetaData.setServiceEndpointImplName(sepClass.getName()); sepMetaData.setServiceEndpointInterfaceName(wsClass.getName()); Modified: trunk/src/main/java/org/jboss/ws/integration/jboss/ServiceEndpointInvokerEJB21.java =================================================================== --- trunk/src/main/java/org/jboss/ws/integration/jboss/ServiceEndpointInvokerEJB21.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/integration/jboss/ServiceEndpointInvokerEJB21.java 2006-07-05 14:34:18 UTC (rev 566) @@ -47,6 +47,7 @@ import org.jboss.ws.handler.HandlerChainBaseImpl; import org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper; import org.jboss.ws.metadata.ServerEndpointMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.j2ee.UnifiedApplicationMetaData; import org.jboss.ws.metadata.j2ee.UnifiedBeanMetaData; import org.jboss.ws.metadata.j2ee.UnifiedHandlerMetaData.HandlerType; @@ -78,8 +79,8 @@ /** Initialize the service endpoint */ public void initServiceEndpoint(ServiceEndpointInfo seInfo) throws ServiceException { - ServerEndpointMetaData endpointMetaData = seInfo.getServerEndpointMetaData(); - String ejbName = endpointMetaData.getLinkName(); + ServerEndpointMetaData epMetaData = seInfo.getServerEndpointMetaData(); + String ejbName = epMetaData.getLinkName(); if (ejbName == null) throw new WSException("Cannot obtain ejb-link from port component"); @@ -89,8 +90,8 @@ throw new WSException("Cannot obtain ejb meta data for: " + ejbName); // verify the service endpoint - String seiName = endpointMetaData.getServiceEndpointInterfaceName(); - if ((!endpointMetaData.isAnnotated()) && seiName != null) + String seiName = epMetaData.getServiceEndpointInterfaceName(); + if (epMetaData.getType() == Type.JAXRPC && seiName != null) { String bmdSEI = beanMetaData.getServiceEndpoint(); if (seiName.equals(bmdSEI) == false) Modified: trunk/src/main/java/org/jboss/ws/jaxrpc/ParameterWrapping.java =================================================================== --- trunk/src/main/java/org/jboss/ws/jaxrpc/ParameterWrapping.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/jaxrpc/ParameterWrapping.java 2006-07-05 14:34:18 UTC (rev 566) @@ -24,6 +24,7 @@ // $Id$ import java.beans.PropertyDescriptor; +import java.lang.reflect.Constructor; import java.lang.reflect.Method; import java.util.List; @@ -104,6 +105,30 @@ } } + public static boolean matchResponseParameters(OperationMetaData opMetaData, Class returnType) + { + assertOperationMetaData(opMetaData); + + ParameterMetaData paramMetaData = opMetaData.getReturnParameter(); + Class resStructType = paramMetaData.getJavaType(); + + log.debug("matchResponseParameters: " + resStructType.getName()); + try + { + boolean pass = true; + if (returnType != void.class) + { + resStructType.getConstructor(new Class[] { returnType }); + } + return pass; + } + catch (Exception ex) + { + log.debug("Invalid response wrapper: " + ex); + return false; + } + } + public static Object wrapRequestParameters(OperationMetaData opMetaData, Object[] inParams) { assertOperationMetaData(opMetaData); @@ -312,7 +337,7 @@ clazz.addMethod(CtNewMethod.setter("set" + capitalize(name), field)); } - wrapperType = (Class) pool.toClass(clazz, loader); + wrapperType = (Class)pool.toClass(clazz, loader); } catch (Exception e) { Modified: trunk/src/main/java/org/jboss/ws/metadata/ClientEndpointMetaData.java =================================================================== --- trunk/src/main/java/org/jboss/ws/metadata/ClientEndpointMetaData.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/metadata/ClientEndpointMetaData.java 2006-07-05 14:34:18 UTC (rev 566) @@ -32,6 +32,7 @@ import org.jboss.logging.Logger; import org.jboss.ws.WSException; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.config.WSClientConfig; import org.jboss.ws.metadata.config.WSConfig; import org.jboss.ws.metadata.config.WSConfigFactory; @@ -53,9 +54,9 @@ // The REQUIRED config private WSClientConfig clientConfig; - public ClientEndpointMetaData(ServiceMetaData service, QName qname) + public ClientEndpointMetaData(ServiceMetaData service, QName qname, Type type) { - super(service, qname); + super(service, qname, type); } public void setConfigName(String configName) @@ -168,6 +169,7 @@ { StringBuilder buffer = new StringBuilder("\nClientEndpointMetaData:"); buffer.append("\n qname=" + getQName()); + buffer.append("\n type=" + getType()); buffer.append("\n address=" + getEndpointAddress()); buffer.append("\n seiName=" + getServiceEndpointInterfaceName()); buffer.append("\n configFile=" + getConfigFile()); Modified: trunk/src/main/java/org/jboss/ws/metadata/EndpointMetaData.java =================================================================== --- trunk/src/main/java/org/jboss/ws/metadata/EndpointMetaData.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/metadata/EndpointMetaData.java 2006-07-05 14:34:18 UTC (rev 566) @@ -60,6 +60,11 @@ // provide logging private static Logger log = Logger.getLogger(EndpointMetaData.class); + public enum Type + { + JAXRPC, JAXWS + } + // The parent meta data. private ServiceMetaData service; @@ -88,16 +93,17 @@ // The JAXWS ServiceMode private Mode serviceMode; // Whether the endpoint was deployed from annotations - private boolean annotated = false; + private Type type; // The list of service meta data private List<OperationMetaData> operations = new ArrayList<OperationMetaData>(); // The optional handlers private List<UnifiedHandlerMetaData> jaxrpcHandlers = new ArrayList<UnifiedHandlerMetaData>(); - public EndpointMetaData(ServiceMetaData service, QName qname) + public EndpointMetaData(ServiceMetaData service, QName qname, Type type) { this.service = service; this.qname = qname; + this.type = type; } public ServiceMetaData getServiceMetaData() @@ -249,16 +255,11 @@ this.serviceMode = serviceMode; } - public boolean isAnnotated() + public Type getType() { - return annotated; + return type; } - public void setAnnotated(boolean isAnnotated) - { - this.annotated = isAnnotated; - } - public String getAuthMethod() { return authMethod; @@ -352,6 +353,7 @@ if (aux.getJavaMethod().equals(method)) { opMetaData = aux; + break; } } return opMetaData; @@ -406,7 +408,7 @@ } else { - if (isAnnotated()) + if (getType() == Type.JAXWS) { typeMapping.register(javaType, xmlType, new JAXBSerializerFactory(), new JAXBDeserializerFactory()); } Modified: trunk/src/main/java/org/jboss/ws/metadata/OperationMetaData.java =================================================================== --- trunk/src/main/java/org/jboss/ws/metadata/OperationMetaData.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/metadata/OperationMetaData.java 2006-07-05 14:34:18 UTC (rev 566) @@ -37,6 +37,9 @@ import org.jboss.ws.jaxrpc.Style; import org.jboss.ws.jaxrpc.TypeMappingImpl; import org.jboss.ws.jaxrpc.Use; +import org.jboss.ws.jaxws.JAXBDeserializerFactory; +import org.jboss.ws.jaxws.JAXBSerializerFactory; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.utils.HolderUtils; import org.jboss.ws.utils.JavaUtils; import org.w3c.dom.Element; @@ -60,7 +63,7 @@ private QName responseName; private String javaName; private Method javaMethod; - private boolean oneWayOperation; + private boolean oneWay; private String soapAction; private List<ParameterMetaData> parameters = new ArrayList<ParameterMetaData>(); private List<FaultMetaData> faults = new ArrayList<FaultMetaData>(); @@ -70,7 +73,7 @@ { UnifiedMetaData umd = new UnifiedMetaData(); ServiceMetaData smd = new ServiceMetaData(umd, new QName("mock-service")); - ServerEndpointMetaData epmd = new ServerEndpointMetaData(smd, new QName("mock-endpoint")); + ServerEndpointMetaData epmd = new ServerEndpointMetaData(smd, new QName("mock-endpoint"), Type.JAXRPC); initOperationMetaData(epmd, qname, javaName); } @@ -140,7 +143,7 @@ { return getStyle() == Style.RPC && getUse() == Use.LITERAL; } - + public boolean isDocumentBare() { return getStyle() == Style.DOCUMENT && getParameterStyle() == ParameterStyle.BARE; @@ -174,36 +177,50 @@ { String methodName = method.getName(); Class[] methodTypes = method.getParameterTypes(); + Class returnType = method.getReturnType(); if (javaName.equals(methodName)) { log.trace("Found java method: " + method); // match document/literal/wrapped - if (isDocumentWrapped() && ParameterWrapping.matchRequestParameters(this, methodTypes)) + if (isDocumentWrapped()) { - log.debug("Found wrapped java method: " + method); - javaMethod = method; - break; + if (ParameterWrapping.matchRequestParameters(this, methodTypes) && ParameterWrapping.matchResponseParameters(this, returnType)) + { + log.debug("Found wrapped java method: " + method); + javaMethod = method; + break; + } } - - // compare params by java type name - if (compareMethodParams(methodTypes, true)) + else { - log.debug("Found best matching java method: " + method); - javaMethod = method; - break; - } + // Match the return parameter + ParameterMetaData returnMetaData = getReturnParameter(); + if (returnMetaData != null) + { + if (!matchParameter(returnMetaData, returnType, true) && !matchParameter(returnMetaData, returnType, false)) + { + log.debug("Unmatched return meta data: " + returnType); + continue; + } + } - // compare params by assignability - if (compareMethodParams(methodTypes, false)) - { - if (javaMethod != null) - throw new WSException("Umbiguous javaMethod: " + method); + // compare params by java type name + if (compareMethodParams(methodTypes, true)) + { + log.debug("Found best matching java method: " + method); + javaMethod = method; + break; + } - log.debug("Found possible matching java method: " + method); - javaMethod = method; - break; + // compare params by assignability + else if (compareMethodParams(methodTypes, false)) + { + log.debug("Found possible matching java method: " + method); + javaMethod = method; + break; + } } } } @@ -248,67 +265,75 @@ if (pass == false) log.trace("Unmatched parameter count: " + parameters.size() + "!=" + methodParams.length); - TypeMappingImpl typeMapping = epMetaData.getServiceMetaData().getTypeMapping(); for (int i = 0; pass && i < methodParams.length; i++) { ParameterMetaData paramMetaData = parameters.get(i); - QName xmlType = paramMetaData.getXmlType(); - String javaType = paramMetaData.getJavaTypeName(); - Class methodParam = methodParams[i]; + pass = matchParameter(paramMetaData, methodParams[i], matchByTypeName); + } + return pass; + } - if (paramMetaData.getMode() != ParameterMode.IN) + private boolean matchParameter(ParameterMetaData paramMetaData, Class methodParam, boolean matchByTypeName) + { + QName xmlType = paramMetaData.getXmlType(); + String javaType = paramMetaData.getJavaTypeName(); + + boolean pass; + if (paramMetaData.getMode() != ParameterMode.IN) + { + if (HolderUtils.isHolderType(methodParam)) { - if (HolderUtils.isHolderType(methodParam)) - { - methodParam = HolderUtils.getValueType(methodParam); - } - else - { - pass = false; - break; - } + methodParam = HolderUtils.getValueType(methodParam); } - - // In case the parameter java type has not been initialized - // This happens when the UMDM is build from WSDL only (i.e. JAXWS Service) - if (javaType == null) + } + + TypeMappingImpl typeMapping = epMetaData.getServiceMetaData().getTypeMapping(); + + // In case the parameter java type has not been initialized + // This happens when the UMDM is build from WSDL only (i.e. JAXWS Service) + if (javaType == null) + { + javaType = methodParam.getName(); + paramMetaData.setJavaTypeName(javaType); + log.debug("Set parameter java type from method param: " + javaType); + + if (epMetaData.getType() == Type.JAXWS) { - javaType = methodParam.getName(); - paramMetaData.setJavaTypeName(javaType); - log.debug("Set parameter java type from method param: " + javaType); + typeMapping.register(methodParam, xmlType, new JAXBSerializerFactory(), new JAXBDeserializerFactory()); } + } - if (matchByTypeName) + if (matchByTypeName) + { + pass = methodParam.getName().equals(javaType); + } + else + { + String paramTypeName = methodParam.getName(); + Class paramType = paramMetaData.getJavaType(); + pass = JavaUtils.isAssignableFrom(methodParam, paramType); + + if (pass == false && typeMapping.isRegistered(methodParam, xmlType)) { - pass = methodParam.getName().equals(javaType); + log.debug("Adjust parameter type from " + paramType.getName() + " to " + paramTypeName); + paramMetaData.setJavaTypeName(paramTypeName); + pass = true; } - else - { - String paramTypeName = methodParam.getName(); - Class paramType = paramMetaData.getJavaType(); - pass = JavaUtils.isAssignableFrom(methodParam, paramType); - if (pass == false && typeMapping.isRegistered(methodParam, xmlType)) - { - log.debug("Adjust parameter type from " + paramType.getName() + " to " + paramTypeName); - paramMetaData.setJavaTypeName(paramTypeName); - pass = true; - } - } + } - String name = (matchByTypeName) ? paramMetaData.getJavaTypeName() : paramMetaData.getJavaType().getName(); - log.trace((pass ? "Matched" : "Unmatched") + " parameter: " + name + " == " + methodParam.getName()); - } + String name = (matchByTypeName) ? paramMetaData.getJavaTypeName() : paramMetaData.getJavaType().getName(); + log.trace((pass ? "Matched" : "Unmatched") + " parameter: " + name + " == " + methodParam.getName()); return pass; } public boolean isOneWayOperation() { - return oneWayOperation; + return oneWay; } public void setOneWayOperation(boolean oneWayOperation) { - this.oneWayOperation = oneWayOperation; + this.oneWay = oneWayOperation; assertOneWayOperation(); } @@ -440,7 +465,7 @@ // INOUT or OUT parameters. private void assertOneWayOperation() { - if (oneWayOperation) + if (oneWay) { if (returnParam != null) throw new WSException("OneWay operations cannot have a return parameter"); @@ -475,11 +500,12 @@ out++; } - if (returnParam != null && ! returnParam.isInHeader()) + if (returnParam != null && !returnParam.isInHeader()) out++; - if (! ((oneWayOperation && in == 1 && out == 0) || (in == 1 && out == 1))) - throw new WSException("The body of a documnet/literal bare message requires only 1 input and only 1 output (or 0 if oneway). method: " + javaName + " in: " + in + " out: " + out); + if (!((oneWay && in == 1 && out == 0) || (in == 1 && out == 1))) + throw new WSException("The body of a documnet/literal bare message requires only 1 input and only 1 output (or 0 if oneway). method: " + javaName + " in: " + + in + " out: " + out); } } @@ -503,8 +529,10 @@ StringBuilder buffer = new StringBuilder("\nOperationMetaData:"); buffer.append("\n qname=" + qname); buffer.append("\n javaName=" + javaName); - buffer.append("\n style=" + getStyle() + "/" + getUse() + (getStyle() == Style.DOCUMENT ? "/" + getParameterStyle() : "")); - buffer.append("\n oneWay=" + oneWayOperation); + buffer.append("\n style=" + getStyle() + "/" + getUse()); + if (getStyle() == Style.DOCUMENT) + buffer.append("/" + getParameterStyle()); + buffer.append("\n oneWay=" + oneWay); buffer.append("\n soapAction=" + soapAction); for (ParameterMetaData param : parameters) { Modified: trunk/src/main/java/org/jboss/ws/metadata/ServerEndpointMetaData.java =================================================================== --- trunk/src/main/java/org/jboss/ws/metadata/ServerEndpointMetaData.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/metadata/ServerEndpointMetaData.java 2006-07-05 14:34:18 UTC (rev 566) @@ -34,6 +34,7 @@ import org.jboss.logging.Logger; import org.jboss.ws.WSException; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.ws.metadata.config.WSConfig; import org.jboss.ws.metadata.config.WSConfigFactory; import org.jboss.ws.metadata.config.WSEndpointConfig; @@ -76,9 +77,9 @@ // The bean that registers with the ServiceEndpointManager private String managedEndpointBean = ServiceEndpoint.class.getName(); - public ServerEndpointMetaData(ServiceMetaData service, QName qname) + public ServerEndpointMetaData(ServiceMetaData service, QName qname, Type type) { - super(service, qname); + super(service, qname, type); } public void setConfigName(String configName) @@ -260,13 +261,13 @@ { StringBuilder buffer = new StringBuilder("\nServerEndpointMetaData:"); buffer.append("\n qname=" + getQName()); + buffer.append("\n type=" + getType()); buffer.append("\n id=" + getServiceEndpointID().getCanonicalName()); buffer.append("\n address=" + getEndpointAddress()); buffer.append("\n linkName=" + getLinkName()); buffer.append("\n implName=" + getServiceEndpointImplName()); buffer.append("\n seiName=" + getServiceEndpointInterfaceName()); buffer.append("\n serviceMode=" + getServiceMode()); - buffer.append("\n annotated=" + isAnnotated()); buffer.append("\n portComponentName=" + getPortComponentName()); buffer.append("\n contextRoot=" + getContextRoot()); buffer.append("\n urlPattern=" + getURLPattern()); Modified: trunk/src/main/java/org/jboss/ws/soap/SOAPMessageContextImpl.java =================================================================== --- trunk/src/main/java/org/jboss/ws/soap/SOAPMessageContextImpl.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/soap/SOAPMessageContextImpl.java 2006-07-05 14:34:18 UTC (rev 566) @@ -35,6 +35,7 @@ import org.jboss.ws.metadata.EndpointMetaData; import org.jboss.ws.metadata.OperationMetaData; import org.jboss.ws.metadata.ServiceMetaData; +import org.jboss.ws.metadata.EndpointMetaData.Type; import org.jboss.xb.binding.NamespaceRegistry; /** @@ -125,7 +126,7 @@ EndpointMetaData epMetaData = getEndpointMetaData(); ServiceMetaData serviceMetaData = epMetaData.getServiceMetaData(); - if (epMetaData.isAnnotated()) + if (epMetaData.getType() == Type.JAXWS) { JAXWSSerializationContext jaxwsContext = new JAXWSSerializationContext(); jaxwsContext.setTypeMapping(serviceMetaData.getTypeMapping()); Modified: trunk/src/main/java/org/jboss/ws/tools/metadata/ToolsEndpointMetaData.java =================================================================== --- trunk/src/main/java/org/jboss/ws/tools/metadata/ToolsEndpointMetaData.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/tools/metadata/ToolsEndpointMetaData.java 2006-07-05 14:34:18 UTC (rev 566) @@ -21,9 +21,10 @@ */ package org.jboss.ws.tools.metadata; +// $Id$ + import javax.xml.namespace.QName; -import org.jboss.ws.Constants; import org.jboss.ws.metadata.EndpointMetaData; import org.jboss.ws.metadata.ServiceMetaData; @@ -37,6 +38,6 @@ public String typeNamespace; public ToolsEndpointMetaData(ServiceMetaData service, QName name) { - super(service, name); + super(service, name, Type.JAXRPC); } } \ No newline at end of file Modified: trunk/src/main/java/org/jboss/ws/utils/JavaUtils.java =================================================================== --- trunk/src/main/java/org/jboss/ws/utils/JavaUtils.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/main/java/org/jboss/ws/utils/JavaUtils.java 2006-07-05 14:34:18 UTC (rev 566) @@ -27,7 +27,6 @@ import java.util.HashMap; import org.jboss.logging.Logger; -import org.jboss.ws.metadata.wsdl.WSDLUtils; /** Java utilities * Modified: trunk/src/test/java/org/jboss/test/ws/jbws871/JBWS871TestCase.java =================================================================== --- trunk/src/test/java/org/jboss/test/ws/jbws871/JBWS871TestCase.java 2006-07-05 12:17:59 UTC (rev 565) +++ trunk/src/test/java/org/jboss/test/ws/jbws871/JBWS871TestCase.java 2006-07-05 14:34:18 UTC (rev 566) @@ -21,10 +21,18 @@ */ package org.jboss.test.ws.jbws871; +import java.io.ByteArrayInputStream; import java.io.File; +import java.io.StringWriter; import java.net.URL; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBElement; +import javax.xml.bind.Marshaller; +import javax.xml.bind.Unmarshaller; import javax.xml.namespace.QName; +import javax.xml.transform.Source; +import javax.xml.transform.stream.StreamSource; import javax.xml.ws.Service; import junit.framework.Test; @@ -62,6 +70,86 @@ } } + public void testNullArray() throws Exception + { + Integer[] intArr = null; + + JAXBContext jbc = JAXBContext.newInstance(Integer[].class); + Marshaller m = jbc.createMarshaller(); + m.setProperty(Marshaller.JAXB_FRAGMENT, true); + StringWriter strw = new StringWriter(); + m.marshal(new JAXBElement(new QName("myarr"), Integer[].class, intArr), strw); + + String xmlFragment = strw.toString(); + // <myarr xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> + // System.out.println(xmlFragment); + + Unmarshaller um = jbc.createUnmarshaller(); + Source source = new StreamSource(new ByteArrayInputStream(xmlFragment.getBytes())); + JAXBElement jbel = um.unmarshal(source, Integer[].class); + assertNull("Null value expected", jbel.getValue()); + } + + public void testEmptyArray() throws Exception + { + Integer[] intArr = new Integer[0]; + + JAXBContext jbc = JAXBContext.newInstance(Integer[].class); + Marshaller m = jbc.createMarshaller(); + m.setProperty(Marshaller.JAXB_FRAGMENT, true); + StringWriter strw = new StringWriter(); + m.marshal(new JAXBElement(new QName("myarr"), Integer[].class, intArr), strw); + + String xmlFragment = strw.toString(); + // <myarr/> + // System.out.println(xmlFragment); + + Unmarshaller um = jbc.createUnmarshaller(); + Source source = new StreamSource(new ByteArrayInputStream(xmlFragment.getBytes())); + JAXBElement jbel = um.unmarshal(source, Integer[].class); + assertEquals(intArr, jbel.getValue()); + } + + public void testSingleValueArray() throws Exception + { + Integer[] intArr = new Integer[] { new Integer(1) }; + + JAXBContext jbc = JAXBContext.newInstance(Integer[].class); + Marshaller m = jbc.createMarshaller(); + m.setProperty(Marshaller.JAXB_FRAGMENT, true); + StringWriter strw = new StringWriter(); + m.marshal(new JAXBElement(new QName("myarr"), Integer[].class, intArr), strw); + + String xmlFragment = strw.toString(); + // <myarr><item>1</item></myarr> + // System.out.println(xmlFragment); + + Unmarshaller um = jbc.createUnmarshaller(); + Source source = new StreamSource(new ByteArrayInputStream(xmlFragment.getBytes())); + JAXBElement jbel = um.unmarshal(source, Integer[].class); + assertEquals(intArr, jbel.getValue()); + } + + public void testMultipleValueArray() throws Exception + { + Integer[] intArr = new Integer[] { new Integer(1), new Integer(2), new Integer(3) }; + + JAXBContext jbc = JAXBContext.newInstance(Integer[].class); + Marshaller m = jbc.createMarshaller(); + m.setProperty(Marshaller.JAXB_FRAGMENT, true); + StringWriter strw = new StringWriter(); + m.marshal(new JAXBElement(new QName("myarr"), Integer[].class, intArr), strw); + + String xmlFragment = strw.toString(); + // <myarr><item>1</item><item>2</item><item>3</item></myarr> + // System.out.println(xmlFragment); + + Unmarshaller um = jbc.createUnmarshaller(); + Source source = new StreamSource(new ByteArrayInputStream(xmlFragment.getBytes())); + JAXBElement jbel = um.unmarshal(source, Integer[].class); + assertEquals(intArr, jbel.getValue()); + } + public void testEchoNullArray() throws Exception { Integer[] outArr = endpoint.intArr("null", null); |
Author: unibrew Date: 2006-07-05 10:21:33 -0400 (Wed, 05 Jul 2006) New Revision: 4915 Modified: labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/ui/action/SplitTopic.java labs/jbossforums/trunk/forums/src/resources/portal-forums-war/WEB-INF/forums-config.xml labs/jbossforums/trunk/forums/src/resources/portal-forums-war/views/moderator/modcp_split.xhtml Log: [JBFORUMS-54] Updating split topic actions. Modified: labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/ui/action/SplitTopic.java =================================================================== --- labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/ui/action/SplitTopic.java 2006-07-05 13:58:30 UTC (rev 4914) +++ labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/ui/action/SplitTopic.java 2006-07-05 14:21:33 UTC (rev 4915) @@ -40,11 +40,12 @@ import org.jboss.portlet.forums.ui.Constants; import org.jboss.portlet.forums.ui.ForumUtil; import org.jboss.portlet.forums.ui.JSFUtil; +import org.jboss.portlet.forums.ui.PortalUtil; /** * SplitTopic is a bean which keeps data and has actions needed to achieve - * spltting topic into two separate topics. - * + * spltting topic into two separate topics. + * * @author <a href="mailto:rys...@jb...">Ryszard Kozmik</a> */ public class SplitTopic extends BaseController { @@ -162,7 +163,7 @@ // Creating new topic in destination forum. Topic newTopic = getForumsModule().createTopic(destForum, - topic.getPoster().getUserId(), + PortalUtil.getUser().getId().toString(), newTopicTitle, topic.getType()); // Getting post id after which the topic must be splitted. @@ -173,10 +174,12 @@ Post tempPost = null; while( it.hasNext() ) { + System.out.println("JESTEM W WHILEu"); tempPost = (Post)it.next(); // searching for post to split after if (tempPost.getId().equals(selectedPostId)) { + System.out.println("JESTEM W IFIE"); break; } } @@ -203,7 +206,7 @@ message = bundle.getString("SUCC_TOPIC_SPLITTED"); FacesContext.getCurrentInstance().addMessage("message", new FacesMessage(FacesMessage.SEVERITY_INFO,message, "moderate")); - return ""; + return "splitted"; } /** @@ -276,7 +279,7 @@ // Creating new topic in selected destination forum. Topic newTopic = getForumsModule().createTopic(destForum, - topic.getPoster().getUserId(), + PortalUtil.getUser().getId().toString(), newTopicTitle, topic.getType()); // Moving all selected posts to new topic. @@ -299,7 +302,7 @@ message = bundle.getString("SUCC_TOPIC_SPLITTED"); FacesContext.getCurrentInstance().addMessage("message", new FacesMessage(FacesMessage.SEVERITY_INFO,message, "moderate")); - return ""; + return "splitted"; } // ---------- Initializing ------------------------------------------------- Modified: labs/jbossforums/trunk/forums/src/resources/portal-forums-war/WEB-INF/forums-config.xml =================================================================== --- labs/jbossforums/trunk/forums/src/resources/portal-forums-war/WEB-INF/forums-config.xml 2006-07-05 13:58:30 UTC (rev 4914) +++ labs/jbossforums/trunk/forums/src/resources/portal-forums-war/WEB-INF/forums-config.xml 2006-07-05 14:21:33 UTC (rev 4915) @@ -305,7 +305,7 @@ <managed-bean> <managed-bean-name>splitTopic</managed-bean-name> <managed-bean-class>org.jboss.portlet.forums.ui.action.SplitTopic</managed-bean-class> - <managed-bean-scope>request</managed-bean-scope> + <managed-bean-scope>session</managed-bean-scope> </managed-bean> <navigation-rule> Modified: labs/jbossforums/trunk/forums/src/resources/portal-forums-war/views/moderator/modcp_split.xhtml =================================================================== --- labs/jbossforums/trunk/forums/src/resources/portal-forums-war/views/moderator/modcp_split.xhtml 2006-07-05 13:58:30 UTC (rev 4914) +++ labs/jbossforums/trunk/forums/src/resources/portal-forums-war/views/moderator/modcp_split.xhtml 2006-07-05 14:21:33 UTC (rev 4915) @@ -36,6 +36,7 @@ <h:messages layout="table" infoStyle="color:green" warnStyle="color:red"/> <h:form> + <input type="hidden" name="t" value="#{splitTopic.topic.id}"/> <table width="100%" cellspacing="2" cellpadding="2" border="0" align="center"> <tr> <td align="left" class="nav"> @@ -67,7 +68,7 @@ </td> <td class="row2" colspan="2"> <h:inputText class="post" size="35" style="width: 350px" maxlength="60" - name="subject" value="#{splitTopic.newTopicTitle}"/> + value="#{splitTopic.newTopicTitle}"/> </td> </tr> <tr> @@ -203,7 +204,7 @@ <tr> <!-- integrate jumpbox here --> <td align="right" valign="top" nowrap="nowrap"> - <ui:include src="/views/jumpbox.xhtml"/> + <!-- <ui:include src="/views/jumpbox.xhtml"/> --> </td> </tr> </table> |
From: <jbo...@li...> - 2006-07-05 13:58:34
|
Author: mar...@jb... Date: 2006-07-05 09:58:30 -0400 (Wed, 05 Jul 2006) New Revision: 4914 Added: labs/jbossesb/branches/refactor/ Log: Copied: labs/jbossesb/branches/refactor (from rev 4913, labs/jbossesb/trunk) |