Return-Path: Delivered-To: apmail-ws-kandula-dev-archive@www.apache.org Received: (qmail 73404 invoked from network); 27 Apr 2010 15:14:02 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 27 Apr 2010 15:14:02 -0000 Received: (qmail 54290 invoked by uid 500); 27 Apr 2010 15:14:01 -0000 Delivered-To: apmail-ws-kandula-dev-archive@ws.apache.org Received: (qmail 54157 invoked by uid 500); 27 Apr 2010 15:14:01 -0000 Mailing-List: contact java-dev-help@axis.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-dev@axis.apache.org Delivered-To: mailing list java-dev@axis.apache.org Received: (qmail 54149 invoked by uid 99); 27 Apr 2010 15:14:01 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 27 Apr 2010 15:14:01 +0000 X-ASF-Spam-Status: No, hits=-2.4 required=10.0 tests=AWL,RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of barrettj@us.ibm.com designates 32.97.110.152 as permitted sender) Received: from [32.97.110.152] (HELO e34.co.us.ibm.com) (32.97.110.152) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 27 Apr 2010 15:13:52 +0000 Received: from d03relay04.boulder.ibm.com (d03relay04.boulder.ibm.com [9.17.195.106]) by e34.co.us.ibm.com (8.14.3/8.13.1) with ESMTP id o3RF6I6H017128 for ; Tue, 27 Apr 2010 09:06:18 -0600 Received: from d03av03.boulder.ibm.com (d03av03.boulder.ibm.com [9.17.195.169]) by d03relay04.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id o3RFDL24107066 for ; Tue, 27 Apr 2010 09:13:25 -0600 Received: from d03av03.boulder.ibm.com (loopback [127.0.0.1]) by d03av03.boulder.ibm.com (8.14.3/8.13.1/NCO v10.0 AVout) with ESMTP id o3R8DIIl008580 for ; Tue, 27 Apr 2010 02:13:19 -0600 Received: from d03nm119.boulder.ibm.com (d03nm119.boulder.ibm.com [9.17.195.145]) by d03av03.boulder.ibm.com (8.14.3/8.13.1/NCO v10.0 AVin) with ESMTP id o3R8DIGJ008567; Tue, 27 Apr 2010 02:13:18 -0600 In-Reply-To: References: <20100422212426.63724238899B@eris.apache.org> To: java-dev@axis.apache.org Cc: barrettj@apache.org MIME-Version: 1.0 Subject: Re: svn commit: r937071 - in /axis/axis2/java/core/trunk/modules: jaxws-integration/ metadata/ metadata/src/org/apache/axis2/jaxws/server/config/ metadata/test/org/apache/axis2/jaxws/description/feature/ X-KeepSent: 54CE6F1F:AE418A23-86257712:00537079; type=4; name=$KeepSent X-Mailer: Lotus Notes Release 8.0.2 HF623 January 16, 2009 From: Jeff Barrett Message-ID: Date: Tue, 27 Apr 2010 10:13:18 -0500 X-MIMETrack: Serialize by Router on D03NM119/03/M/IBM(Release 8.5.1HF41 | October 22, 2009) at 04/27/2010 09:13:19, Serialize complete at 04/27/2010 09:13:19 Content-Type: text/plain; charset="US-ASCII" Andreas, Thanks for fixing this! I had run the tests with Java 1.6 prior to committing, and they passed. Sorry to all for the inconvenience. Thanks, Jeff IBM Software Group - WebSphere Web Services Development Phone: (512) 286-5256 or TieLine: 363-5256 Internet e-mail and Sametime ID: barrettj@us.ibm.com From: Andreas Veithen To: java-dev@axis.apache.org Cc: barrettj@apache.org Date: 04/24/2010 04:22 AM Subject: Re: svn commit: r937071 - in /axis/axis2/java/core/trunk/modules: jaxws-integration/ metadata/ metadata/src/org/apache/axis2/jaxws/server/config/ metadata/test/org/apache/axis2/jaxws/description/feature/ Fixed by adding the JAXB and SAAJ APIs to the endorsed JARs. Andreas On Sat, Apr 24, 2010 at 09:53, Andreas Veithen wrote: > The build failure actually only occurs with Java 1.5. The reason is > that you added JAX-WS to the list of endorsed JARs, but not JAXB. On > 1.5 this doesn't work because JAX-WS cannot see the JAXB classes in > the application classpath. I will try to correct this, but if it gets > more complicated, I will temporarily revert the change and let you fix > it properly. > > Andreas > > On Fri, Apr 23, 2010 at 09:34, Andreas Veithen > wrote: >> This change causes a build failure (large amount of test failures in >> jaxws-integration): >> >> http://hudson.zones.apache.org/hudson/job/Axis2/117/ >> >> Can you please fix this? >> >> Andreas >> >> On Thu, Apr 22, 2010 at 23:24, wrote: >>> Author: barrettj >>> Date: Thu Apr 22 21:24:25 2010 >>> New Revision: 937071 >>> >>> URL: http://svn.apache.org/viewvc?rev=937071&view=rev >>> Log: >>> Add support for JAXWS 2.2 Addressing.responses annotation attribute. Add associated TDD tests. Modify pom.xml to pickup annotations from JAXWS 2.2 jar instead of the JAXWS 2.1 classes in the JDK. >>> >>> Modified: >>> axis/axis2/java/core/trunk/modules/jaxws-integration/pom.xml >>> axis/axis2/java/core/trunk/modules/metadata/pom.xml >>> axis/axis2/java/core/trunk/modules/metadata/src/org/apache/axis2/jaxws/server/config/AddressingConfigurator.java >>> axis/axis2/java/core/trunk/modules/metadata/test/org/apache/axis2/jaxws/description/feature/AddressingFeatureTests.java >>> >>> Modified: axis/axis2/java/core/trunk/modules/jaxws-integration/pom.xml >>> URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws-integration/pom.xml?rev=937071&r1=937070&r2=937071&view=diff >>> ============================================================================== >>> --- axis/axis2/java/core/trunk/modules/jaxws-integration/pom.xml (original) >>> +++ axis/axis2/java/core/trunk/modules/jaxws-integration/pom.xml Thu Apr 22 21:24:25 2010 >>> @@ -34,6 +34,10 @@ >>> >>> >>> org.apache.geronimo.specs >>> + geronimo-jaxws_2.2_spec >>> + >>> + >>> + org.apache.geronimo.specs >>> geronimo-annotation_1.0_spec >>> >>> >>> @@ -114,6 +118,28 @@ >>> >>> >>> >>> + maven-dependency-plugin >>> + >>> + >>> + generate-sources >>> + >>> + copy >>> + >>> + >>> + >>> + >>> + org.apache.geronimo.specs >>> + geronimo-jaxws_2.2_spec >>> + jar >>> + true >>> + target/endorsed >>> + >>> + >>> + >>> + >>> + >>> + >>> + >>> maven-compiler-plugin >>> true >>> >>> @@ -1360,7 +1386,7 @@ >>> true >>> >>> pertest >>> - -Xms256m -Xmx512m >>> + -Xms256m -Xmx512m -Xbootclasspath/p:${basedir}/target/endorsed/geronimo-jaxws_2.2_spec-1.0-SNAPSHOT.jar >>> >>> >>> >>> Modified: axis/axis2/java/core/trunk/modules/metadata/pom.xml >>> URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/metadata/pom.xml?rev=937071&r1=937070&r2=937071&view=diff >>> ============================================================================== >>> --- axis/axis2/java/core/trunk/modules/metadata/pom.xml (original) >>> +++ axis/axis2/java/core/trunk/modules/metadata/pom.xml Thu Apr 22 21:24:25 2010 >>> @@ -143,15 +143,15 @@ >>> copy >>> >>> >>> - >>> - >>> - org.apache.geronimo.specs >>> - geronimo-jaxws_2.2_spec >>> - jar >>> - true >>> - target/endorsed >>> - >>> - >>> + >>> + >>> + org.apache.geronimo.specs >>> + geronimo-jaxws_2.2_spec >>> + jar >>> + true >>> + target/endorsed >>> + >>> + >>> >>> >>> >>> @@ -257,6 +257,9 @@ >>> maven-surefire-plugin >>> true >>> >>> + >>> + -Xbootclasspath/p:${basedir}/target/endorsed/geronimo-jaxws_2.2_spec-1.0-SNAPSHOT.jar >>> + >>> >>> **/*Tests.java >>> >>> >>> Modified: axis/axis2/java/core/trunk/modules/metadata/src/org/apache/axis2/jaxws/server/config/AddressingConfigurator.java >>> URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/metadata/src/org/apache/axis2/jaxws/server/config/AddressingConfigurator.java?rev=937071&r1=937070&r2=937071&view=diff >>> ============================================================================== >>> --- axis/axis2/java/core/trunk/modules/metadata/src/org/apache/axis2/jaxws/server/config/AddressingConfigurator.java (original) >>> +++ axis/axis2/java/core/trunk/modules/metadata/src/org/apache/axis2/jaxws/server/config/AddressingConfigurator.java Thu Apr 22 21:24:25 2010 >>> @@ -38,6 +38,7 @@ import org.apache.axis2.util.Utils; >>> >>> import javax.xml.ws.soap.Addressing; >>> import javax.xml.ws.soap.AddressingFeature; >>> +import javax.xml.ws.soap.AddressingFeature.Responses; >>> >>> /** >>> * This class will enable/disable WS-Addressing for a JAX-WS 2.1 web service >>> @@ -62,6 +63,7 @@ public class AddressingConfigurator impl >>> Parameter namespace = new Parameter(AddressingConstants.WS_ADDRESSING_VERSION, null); >>> Parameter disabled = new Parameter(AddressingConstants.DISABLE_ADDRESSING_FOR_IN_MESSAGES, "false"); >>> Parameter required = new Parameter(AddressingConstants.ADDRESSING_REQUIREMENT_PARAMETER, AddressingConstants.ADDRESSING_UNSPECIFIED); >>> + Parameter responses = null; >>> >>> if (addressing != null && submissionAddressing != null) { >>> //Both annotations must have been specified. >>> @@ -127,11 +129,21 @@ public class AddressingConfigurator impl >>> Messages.getMessage("NoWSAddressingFeatures")); >>> } >>> >>> + // If the Addressing annotation was used, then get the responses value from it and map it to the >>> + // value the addressing handler expects >>> + if (addressing != null) { >>> + responses = new Parameter(AddressingConstants.WSAM_INVOCATION_PATTERN_PARAMETER_NAME, >>> + mapResponseAttributeToAddressing(addressing.responses())); >>> + } >>> + >>> try { >>> AxisService service = endpointDescription.getAxisService(); >>> service.addParameter(namespace); >>> service.addParameter(disabled); >>> service.addParameter(required); >>> + if (responses != null) { >>> + service.addParameter(responses); >>> + } >>> >>> String value = Utils.getParameterValue(disabled); >>> if (JavaUtils.isFalseExplicitly(value)) { >>> @@ -147,6 +159,29 @@ public class AddressingConfigurator impl >>> } >>> } >>> >>> + /** >>> + * Given a value for the Addressing.responses annotation attribute, map it to the corresponding >>> + * Addressing constant to be set on the AxisSservice >>> + * >>> + * @param responses Enum value from the Addressing.responses annotation attribute >>> + * @return String from AddressingContstants corresponding to the responses value. >>> + */ >>> + static private String mapResponseAttributeToAddressing(Responses responses) { >>> + String addressingType = null; >>> + switch (responses) { >>> + case ALL: >>> + addressingType = AddressingConstants.WSAM_INVOCATION_PATTERN_BOTH; >>> + break; >>> + case ANONYMOUS: >>> + addressingType = AddressingConstants.WSAM_INVOCATION_PATTERN_SYNCHRONOUS; >>> + break; >>> + case NON_ANONYMOUS: >>> + addressingType = AddressingConstants.WSAM_INVOCATION_PATTERN_ASYNCHRONOUS; >>> + break; >>> + } >>> + return addressingType; >>> + } >>> + >>> /* >>> * (non-Javadoc) >>> * @see org.apache.axis2.jaxws.feature.ServerConfigurator#supports(java.lang.String) >>> >>> Modified: axis/axis2/java/core/trunk/modules/metadata/test/org/apache/axis2/jaxws/description/feature/AddressingFeatureTests.java >>> URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/metadata/test/org/apache/axis2/jaxws/description/feature/AddressingFeatureTests.java?rev=937071&r1=937070&r2=937071&view=diff >>> ============================================================================== >>> --- axis/axis2/java/core/trunk/modules/metadata/test/org/apache/axis2/jaxws/description/feature/AddressingFeatureTests.java (original) >>> +++ axis/axis2/java/core/trunk/modules/metadata/test/org/apache/axis2/jaxws/description/feature/AddressingFeatureTests.java Thu Apr 22 21:24:25 2010 >>> @@ -21,6 +21,7 @@ package org.apache.axis2.jaxws.descripti >>> >>> import junit.framework.TestCase; >>> import org.apache.axis2.addressing.AddressingConstants; >>> +import org.apache.axis2.jaxws.addressing.SubmissionAddressing; >>> import org.apache.axis2.description.AxisService; >>> import org.apache.axis2.description.Parameter; >>> import org.apache.axis2.jaxws.description.DescriptionFactory; >>> @@ -31,6 +32,7 @@ import org.apache.axis2.util.Utils; >>> import javax.jws.WebService; >>> import javax.xml.namespace.QName; >>> import javax.xml.ws.soap.Addressing; >>> +import javax.xml.ws.soap.AddressingFeature.Responses; >>> >>> public class AddressingFeatureTests extends TestCase { >>> >>> @@ -40,6 +42,10 @@ public class AddressingFeatureTests exte >>> private static final String plainServicePortName = "PlainServicePort"; >>> private static final String disabledServicePortName = "DisabledServicePort"; >>> private static final String requiredServicePortName = "RequiredServicePort"; >>> + private static final String responsesALLServicePortName = "ResponsesALLServicePort"; >>> + private static final String responsesANONServicePortName = "ResponsesANONServicePort"; >>> + private static final String responsesNONANONServicePortName = "ResponsesNONANONServicePort"; >>> + private static final String responsesNoAddressingServicePortName = "ResponsesNoAddressingServicePort"; >>> >>> public void testNoAnnotation() { >>> ServiceDescription sd = DescriptionFactory.createServiceDescription(DefaultService.class); >>> @@ -113,6 +119,84 @@ public class AddressingFeatureTests exte >>> assertEquals(AddressingConstants.ADDRESSING_REQUIRED, required); >>> } >>> >>> + /** >>> + * Validate that annotation value Addressing.responses=ALL is set correctly on the AxisService >>> + */ >>> + public void testResponsesALL() { >>> + ServiceDescription sd = DescriptionFactory.createServiceDescription(ResponsesALLService.class); >>> + EndpointDescription ed = sd.getEndpointDescription(new QName(ns, responsesALLServicePortName)); >>> + assertNotNull(ed); >>> + >>> + AxisService axisService = ed.getAxisService(); >>> + Parameter responsesParam = axisService.getParameter(AddressingConstants.WSAM_INVOCATION_PATTERN_PARAMETER_NAME); >>> + assertNotNull("Responses parameter not set", responsesParam); >>> + >>> + String responsesType = Utils.getParameterValue(responsesParam); >>> + assertEquals("Wrong type of responses returned", AddressingConstants.WSAM_INVOCATION_PATTERN_BOTH, responsesType); >>> + } >>> + >>> + /** >>> + * Validate that annotation value Addressing.responses=ANONYMOUS is set correctly on the AxisService >>> + */ >>> + public void testResponsesANON() { >>> + ServiceDescription sd = DescriptionFactory.createServiceDescription(ResponsesANONService.class); >>> + EndpointDescription ed = sd.getEndpointDescription(new QName(ns, responsesANONServicePortName)); >>> + assertNotNull(ed); >>> + >>> + AxisService axisService = ed.getAxisService(); >>> + Parameter responsesParam = axisService.getParameter(AddressingConstants.WSAM_INVOCATION_PATTERN_PARAMETER_NAME); >>> + assertNotNull("Responses parameter not set", responsesParam); >>> + >>> + String responsesType = Utils.getParameterValue(responsesParam); >>> + assertEquals("Wrong type of responses returned", AddressingConstants.WSAM_INVOCATION_PATTERN_SYNCHRONOUS, responsesType); >>> + } >>> + >>> + /** >>> + * Validate that annotation value Addressing.responses=NON_ANONYMOUS is set correctly on the AxisService >>> + */ >>> + public void testResponsesNONANON() { >>> + ServiceDescription sd = DescriptionFactory.createServiceDescription(ResponsesNONANONService.class); >>> + EndpointDescription ed = sd.getEndpointDescription(new QName(ns, responsesNONANONServicePortName)); >>> + assertNotNull(ed); >>> + >>> + AxisService axisService = ed.getAxisService(); >>> + Parameter responsesParam = axisService.getParameter(AddressingConstants.WSAM_INVOCATION_PATTERN_PARAMETER_NAME); >>> + assertNotNull("Responses parameter not set", responsesParam); >>> + >>> + String responsesType = Utils.getParameterValue(responsesParam); >>> + assertEquals("Wrong type of responses returned", AddressingConstants.WSAM_INVOCATION_PATTERN_ASYNCHRONOUS, responsesType); >>> + } >>> + >>> + /** >>> + * Validate that no annotation for Addressing does not set the associated addressing parameter on the AxisService >>> + */ >>> + public void testResponsesNoAddressing() { >>> + ServiceDescription sd = DescriptionFactory.createServiceDescription(ResponsesNoAddressingService.class); >>> + EndpointDescription ed = sd.getEndpointDescription(new QName(ns, responsesNoAddressingServicePortName)); >>> + assertNotNull(ed); >>> + >>> + AxisService axisService = ed.getAxisService(); >>> + Parameter responsesParam = axisService.getParameter(AddressingConstants.WSAM_INVOCATION_PATTERN_PARAMETER_NAME); >>> + assertNull("Responses parameter was set", responsesParam); >>> + >>> + } >>> + >>> + /** >>> + * Validate that annotation Addressing with no responses attribute explicitly set gets the correct default on the AxisService >>> + */ >>> + public void testResponsesDefault() { >>> + ServiceDescription sd = DescriptionFactory.createServiceDescription(PlainService.class); >>> + EndpointDescription ed = sd.getEndpointDescription(new QName(ns, plainServicePortName)); >>> + assertNotNull(ed); >>> + >>> + AxisService axisService = ed.getAxisService(); >>> + Parameter responsesParam = axisService.getParameter(AddressingConstants.WSAM_INVOCATION_PATTERN_PARAMETER_NAME); >>> + assertNotNull("Responses parameter not set", responsesParam); >>> + >>> + String responsesType = Utils.getParameterValue(responsesParam); >>> + assertEquals("Wrong type of responses returned", AddressingConstants.WSAM_INVOCATION_PATTERN_BOTH, responsesType); >>> + } >>> + >>> @WebService(targetNamespace=ns, portName=defaultServicePortName) >>> class DefaultService { >>> public double getQuote(String symbol) { >>> @@ -143,4 +227,36 @@ public class AddressingFeatureTests exte >>> return 101.01; >>> } >>> } >>> + >>> + @WebService(targetNamespace=ns, portName=responsesALLServicePortName) >>> + @Addressing(required=true, responses=Responses.ALL) >>> + class ResponsesALLService { >>> + public double getQuote(String symbol) { >>> + return 101.01; >>> + } >>> + } >>> + >>> + @WebService(targetNamespace=ns, portName=responsesANONServicePortName) >>> + @Addressing(required=true, responses=Responses.ANONYMOUS) >>> + class ResponsesANONService { >>> + public double getQuote(String symbol) { >>> + return 101.01; >>> + } >>> + } >>> + >>> + @WebService(targetNamespace=ns, portName=responsesNONANONServicePortName) >>> + @Addressing(required=true, responses=Responses.NON_ANONYMOUS) >>> + class ResponsesNONANONService { >>> + public double getQuote(String symbol) { >>> + return 101.01; >>> + } >>> + } >>> + >>> + @WebService(targetNamespace=ns, portName=responsesNoAddressingServicePortName) >>> + @SubmissionAddressing(required=true) >>> + class ResponsesNoAddressingService { >>> + public double getQuote(String symbol) { >>> + return 101.01; >>> + } >>> + } >>> } >>> >>> >>> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org For additional commands, e-mail: java-dev-help@axis.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org For additional commands, e-mail: java-dev-help@axis.apache.org