JBossWS SVN: r4632 - in stack/native/trunk: src/main/java/javax/xml/ws and 7 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-26 09:11:47 -0400 (Wed, 26 Sep 2007)
New Revision: 4632
Added:
stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext21.java
stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider21.java
stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate21.java
Modified:
stack/native/trunk/build.xml
stack/native/trunk/src/main/java/javax/xml/ws/EndpointReference.java
stack/native/trunk/src/main/java/javax/xml/ws/Service.java
stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext.java
stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java
stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java
stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPFaultException.java
stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider.java
stack/native/trunk/src/main/java/javax/xml/ws/spi/ProviderLoader.java
stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate.java
stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ProviderImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ServiceDelegateImpl.java
Log:
TXK signature tests: Fix remeining pkg's: javax.xml.ws.handler, javax.xml.ws.handler.soap, javax.xml.ws.spi
Modified: stack/native/trunk/build.xml
===================================================================
--- stack/native/trunk/build.xml 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/build.xml 2007-09-26 13:11:47 UTC (rev 4632)
@@ -140,7 +140,13 @@
<exclude name="javax/xml/ws/RespectBinding.class"/>
<exclude name="javax/xml/ws/RespectBindingFeature.class"/>
<exclude name="javax/xml/ws/WebServiceFeature.class"/>
+ <exclude name="javax/xml/ws/spi/WebServiceFeatureAnnotation.class"/>
+ <exclude name="javax/xml/ws/soap/MTOMFeature.class"/>
+ <exclude name="javax/xml/ws/soap/AddressingFeature.class"/>
<exclude name="javax/xml/ws/addressing/**"/>
+ <exclude name="javax/xml/ws/soap/Addressing.class"/>
+ <exclude name="javax/xml/ws/soap/MTOM.class"/>
+ <exclude name="javax/xml/ws/soap/MTOMFeature.class"/>
<exclude name="javax/xml/ws/wsaddressing/**"/>
</fileset>
<metainf dir="${core.resources.dir}/jboss-jaxws.jar/META-INF"/>
@@ -178,7 +184,14 @@
<include name="javax/xml/ws/RespectBinding.class"/>
<include name="javax/xml/ws/RespectBindingFeature.class"/>
<include name="javax/xml/ws/WebServiceFeature.class"/>
+ <include name="javax/xml/ws/soap/MTOMFeature.class"/>
+ <include name="javax/xml/ws/soap/AddressingFeature.class"/>
+ <include name="javax/xml/ws/spi/WebServiceFeatureAnnotation.class"/>
<include name="javax/xml/ws/addressing/**"/>
+ <include name="javax/xml/ws/soap/Addressing.class"/>
+ <include name="javax/xml/ws/soap/MTOM.class"/>
+ <include name="javax/xml/ws/soap/MTOMFeature.class"/>
+
<include name="javax/xml/ws/wsaddressing/**"/>
</fileset>
@@ -203,7 +216,13 @@
<include name="javax/xml/ws/RespectBinding.class"/>
<include name="javax/xml/ws/RespectBindingFeature.class"/>
<include name="javax/xml/ws/WebServiceFeature.class"/>
+ <include name="javax/xml/ws/soap/MTOMFeature.class"/>
+ <include name="javax/xml/ws/soap/AddressingFeature.class"/>
+ <include name="javax/xml/ws/spi/WebServiceFeatureAnnotation.class"/>
<include name="javax/xml/ws/addressing/**"/>
+ <include name="javax/xml/ws/soap/Addressing.class"/>
+ <include name="javax/xml/ws/soap/MTOM.class"/>
+ <include name="javax/xml/ws/soap/MTOMFeature.class"/>
<include name="javax/xml/ws/wsaddressing/**"/>
</fileset>
Modified: stack/native/trunk/src/main/java/javax/xml/ws/EndpointReference.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/EndpointReference.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/EndpointReference.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -29,6 +29,7 @@
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamResult;
import javax.xml.ws.spi.Provider;
+import javax.xml.ws.spi.Provider21;
import javax.xml.ws.wsaddressing.W3CEndpointReference;
/**
@@ -108,7 +109,7 @@
*/
public static EndpointReference readFrom(Source eprInfoset)
{
- return Provider.provider().readEndpointReference(eprInfoset);
+ return ((Provider21)Provider.provider()).readEndpointReference(eprInfoset);
}
/**
@@ -173,7 +174,7 @@
**/
public <T> T getPort(Class<T> serviceEndpointInterface, WebServiceFeature... features)
{
- return Provider.provider().getPort(this, serviceEndpointInterface, features);
+ return ((Provider21)Provider.provider()).getPort(this, serviceEndpointInterface, features);
}
/**
Modified: stack/native/trunk/src/main/java/javax/xml/ws/Service.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Service.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Service.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -28,6 +28,8 @@
import javax.xml.ws.handler.HandlerResolver;
import javax.xml.ws.spi.Provider;
import javax.xml.ws.spi.ServiceDelegate;
+import javax.xml.ws.spi.ServiceDelegate21;
+import javax.xml.ws.spi.Provider21;
import java.net.URL;
import java.util.Iterator;
@@ -63,7 +65,7 @@
**/
public class Service
{
- protected ServiceDelegate delegate;
+ ServiceDelegate21 delegate;
/**
* The orientation of a dynamic client or service. MESSAGE provides
@@ -77,7 +79,7 @@
protected Service(java.net.URL wsdlDocumentLocation, QName serviceName)
{
- delegate = Provider.provider().createServiceDelegate(wsdlDocumentLocation, serviceName, this.getClass());
+ delegate = (ServiceDelegate21)Provider.provider().createServiceDelegate(wsdlDocumentLocation, serviceName, this.getClass());
}
/**
Modified: stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -144,18 +144,8 @@
* <p>Type: String
*/
public static final String PATH_INFO = "javax.xml.ws.http.request.pathinfo";
-
+
/**
- * Standard property: WS Addressing Reference Parameters.
- * The list MUST include all SOAP headers marked with the
- * wsa:IsReferenceParameter="true" attribute.
- * <p>Type: List<Element>
- *
- * @since JAX-WS 2.1
- */
- public static final String REFERENCE_PARAMETERS = "javax.xml.ws.reference.parameters";
-
- /**
* Property scope. Properties scoped as <code>APPLICATION</code> are
* visible to handlers,
* client applications and service endpoints; properties scoped as
Added: stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext21.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -0,0 +1,39 @@
+/*
+ * 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 javax.xml.ws.handler;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public interface MessageContext21 extends MessageContext
+{
+ /**
+ * Standard property: WS Addressing Reference Parameters.
+ * The list MUST include all SOAP headers marked with the
+ * wsa:IsReferenceParameter="true" attribute.
+ * <p>Type: List<Element>
+ *
+ * @since JAX-WS 2.1
+ */
+ public static final String REFERENCE_PARAMETERS = "javax.xml.ws.reference.parameters";
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/handler/MessageContext21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -31,7 +31,7 @@
*
* @since JAX-WS 2.0
**/
-public interface HTTPBinding extends Binding21
+public interface HTTPBinding extends Binding
{
/**
Modified: stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -23,20 +23,18 @@
// $Id$
-import java.util.Set;
-
import javax.xml.soap.MessageFactory;
import javax.xml.soap.SOAPFactory;
import javax.xml.ws.Binding;
import javax.xml.ws.WebServiceException;
-import javax.xml.ws.Binding21;
+import java.util.Set;
/** The <code>SOAPBinding</code> interface is an abstraction for
* the SOAP binding.
*
* @since JAX-WS 2.0
**/
-public interface SOAPBinding extends Binding21
+public interface SOAPBinding extends Binding
{
/**
* A constant representing the identity of the SOAP 1.1 over HTTP binding.
Modified: stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPFaultException.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPFaultException.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPFaultException.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -64,21 +64,6 @@
this.fault = fault;
}
- public SOAPFaultException(String message)
- {
- super(message);
- }
-
- public SOAPFaultException(String message, Exception ex)
- {
- super(message, ex);
- }
-
- public SOAPFaultException(Exception ex)
- {
- super(ex);
- }
-
/** Gets the embedded <code>SOAPFault</code> instance.
*
* @return <code>javax.xml.soap.SOAPFault</code> SOAP
Modified: stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -23,18 +23,10 @@
// $Id$
-import java.util.List;
-
import javax.xml.namespace.QName;
-import javax.xml.transform.Source;
import javax.xml.ws.Endpoint;
-import javax.xml.ws.EndpointReference;
import javax.xml.ws.WebServiceException;
-import javax.xml.ws.WebServiceFeature;
-import javax.xml.ws.wsaddressing.W3CEndpointReference;
-import org.w3c.dom.Element;
-
/**
* Service provider for ServiceDelegate and Endpoint objects.
*
@@ -142,159 +134,4 @@
*/
public abstract Endpoint createAndPublishEndpoint(String address, Object implementor);
- /**
- * read an EndpointReference from the infoset contained in
- * <code>eprInfoset</code>.
- *
- * @returns the <code>EndpointReference</code> unmarshalled from
- * <code>eprInfoset</code>. This method never returns <code>null</code>.
- *
- * @throws WebServiceException If there is an error creating the
- * <code>EndpointReference</code> from the specified <code>eprInfoset</code>.
- *
- * @throws NullPointerException If the <code>null</code>
- * <code>eprInfoset</code> value is given.
- *
- * @since JAX-WS 2.1
- **/
- public abstract EndpointReference readEndpointReference(javax.xml.transform.Source eprInfoset);
-
- /**
- * Create an EndpointReference for <code>serviceName</code>
- * service and <code>portName</code> port from the WSDL <code>wsdlDocumentLocation</code>. The instance
- * returned will be of type <code>clazz</code> and contain the <code>referenceParameters</code>
- * reference parameters. This method delegates to the vendor specific
- * implementation of the {@link javax.xml.ws.spi.Provider#createEndpointReference(Class<T>, javax.xml.namespace.QName, javax.xml.namespace.QName, javax.xml.transform.Source, org.w3c.dom.Element...)} method.
- *
- * @param clazz Specifies the type of <code>EndpointReference</code> that MUST be returned.
- * @param serviceName Qualified name of the service in the WSDL.
- * @param portName Qualified name of the endpoint in the WSDL.
- * @param wsdlDocumentLocation URL for the WSDL document location for the service.
- * @param referenceParameters Reference parameters to be associated with the
- * returned <code>EndpointReference</code> instance.
- *
- * @return the EndpointReference created from <code>serviceName</code>, <code>portName</code>,
- * <code>wsdlDocumentLocation</code> and <code>referenceParameters</code>. This method
- * never returns <code>null</code>.
- * @throws WebServiceException
- * <UL>
- * <li>If the <code>serviceName</code> service is not present in the WSDL.
- * <li>If the <code>portName</code> port is not present in <code>serviceName</code> service in the WSDL.
- * <li>If the <code>wsdlDocumentLocation</code> does not represent a valid WSDL.
- * <li>If an error occurs while creating the <code>EndpointReference</code>.
- * <li>If the Class <code>clazz</code> is not supported by this implementation.
- * </UL>
- * @throws java.lang.IllegalArgumentException
- * if any of the <code>clazz</code>, <code>serviceName</code>, <code>portName</code> and <code>wsdlDocumentLocation</code> is null.
- */
- public abstract <T extends EndpointReference> T createEndpointReference(Class<T> clazz, QName serviceName, QName portName, Source wsdlDocumentLocation,
- Element... referenceParameters);
-
- /**
- * The getPort method returns a proxy. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The parameter <code>serviceEndpointInterface</code> specifies
- * the service endpoint interface that is supported by the
- * returned proxy.
- * The parameter <code>endpointReference</code> specifies the
- * endpoint that will be invoked by the returned proxy.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the proxy accordingly from
- * the WSDL Metadata from the <code>EndpointReference</code>.
- *
- *
- * @param endpointReference the EndpointReference that will
- * be invoked by the returned proxy.
- * @param serviceEndpointInterface Service endpoint interface
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object Proxy instance that supports the
- * specified service endpoint interface
- * @throws WebServiceException
- * <UL>
- * <LI>If there is an error during creation
- * of the proxy
- * <LI>If there is any missing WSDL metadata
- * as required by this method
- * <LI>If this
- * <code>endpointReference</code>
- * is illegal
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * is specified
- * <LI>If feature is enabled that is not compatible with
- * this port or is unsupported.
- * </UL>
- *
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T> T getPort(EndpointReference endpointReference, Class<T> serviceEndpointInterface, WebServiceFeature... features);
-
- /**
- * Factory method to create a <code>W3CEndpointReference</code>.
- *
- * <p>
- * This method can be used to create a <code>W3CEndpointReference</code>
- * for any endpoint by specifying the <code>address</code> property along
- * with any other desired properties. This method
- * can also be used to create a <code>W3CEndpointReference</code> for
- * an endpoint that is published by the same Java EE application.
- * To do so the <code>address</code> property can be provided or this
- * method can automatically determine the <code>address</code> of
- * an endpoint that is published by the same Java EE application and is
- * identified by the <code>serviceName</code> and
- * <code>portName</code> propeties. If the <code>address</code> is
- * <code>null</code> and the <code>serviceName</code> and
- * <code>portName</code> do not identify an endpoint published by the
- * same Java EE application, a
- * <code>javax.lang.IllegalArgumentException</code> MUST be thrown.
- *
- * @param address Specifies the address of the target endpoint
- * @param serviceName Qualified name of the service in the WSDL.
- * @param portName Qualified name of the endpoint in the WSDL.
- * @param metadata A list of elements that should be added to the
- * <code>W3CEndpointReference</code> instances <code>wsa:metadata</code>
- * element.
- * @param wsdlDocumentLocation URL for the WSDL document location for
- * the service.
- * @param referenceParameters Reference parameters to be associated
- * with the returned <code>EndpointReference</code> instance.
- *
- * @return the <code>W3CEndpointReference<code> created from
- * <code>serviceName</code>, <code>portName</code>,
- * <code>metadata</code>, <code>wsdlDocumentLocation</code>
- * and <code>referenceParameters</code>. This method
- * never returns <code>null</code>.
- *
- * @throws javax.lang.IllegalArgumentException
- * <ul>
- * <li>If the <code>address</code>, <code>serviceName</code> and
- * <code>portName</code> are all <code>null</code>.
- * <li>If the <code>serviceName</code> service is <code>null</code> and the
- * <code>portName> is NOT <code>null</code>.
- * <li>If the <code>address</code> property is <code>null</code> and
- * the <code>serviceName</code> and <code>portName</code> do not
- * specify a valid endpoint published by the same Java EE
- * application.
- * <li>If the <code>serviceName</code>is NOT <code>null</code>
- * and is not present in the specified WSDL.
- * <li>If the <code>portName</code> port is not <code>null<code> and it
- * is not present in <code>serviceName</code> service in the WSDL.
- * <li>If the <code>wsdlDocumentLocation</code> is NOT <code>null</code>
- * and does not represent a valid WSDL.
- * </ul>
- * @throws WebServiceException If an error occurs while creating the
- * <code>W3CEndpointReference</code>.
- *
- * @since JAX-WS 2.1
- */
- public abstract W3CEndpointReference createW3CEndpointReference(String address, QName serviceName, QName portName, List<Element> metadata,
- String wsdlDocumentLocation, List<Element> referenceParameters);
}
Added: stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider21.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -0,0 +1,194 @@
+/*
+ * 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 javax.xml.ws.spi;
+
+import org.w3c.dom.Element;
+
+import javax.xml.ws.EndpointReference;
+import javax.xml.ws.WebServiceFeature;
+import javax.xml.ws.wsaddressing.W3CEndpointReference;
+import javax.xml.namespace.QName;
+import javax.xml.transform.Source;
+import java.util.List;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public abstract class Provider21 extends Provider
+{
+ /**
+ * The getPort method returns a proxy. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The parameter <code>serviceEndpointInterface</code> specifies
+ * the service endpoint interface that is supported by the
+ * returned proxy.
+ * The parameter <code>endpointReference</code> specifies the
+ * endpoint that will be invoked by the returned proxy.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the proxy accordingly from
+ * the WSDL Metadata from the <code>EndpointReference</code>.
+ *
+ *
+ * @param endpointReference the EndpointReference that will
+ * be invoked by the returned proxy.
+ * @param serviceEndpointInterface Service endpoint interface
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object Proxy instance that supports the
+ * specified service endpoint interface
+ * @throws javax.xml.ws.WebServiceException
+ * <UL>
+ * <LI>If there is an error during creation
+ * of the proxy
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method
+ * <LI>If this
+ * <code>endpointReference</code>
+ * is illegal
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * is specified
+ * <LI>If feature is enabled that is not compatible with
+ * this port or is unsupported.
+ * </UL>
+ *
+ * @see javax.xml.ws.WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T> T getPort(EndpointReference endpointReference, Class<T> serviceEndpointInterface, WebServiceFeature... features);
+
+ /**
+ * Factory method to create a <code>W3CEndpointReference</code>.
+ *
+ * <p>
+ * This method can be used to create a <code>W3CEndpointReference</code>
+ * for any endpoint by specifying the <code>address</code> property along
+ * with any other desired properties. This method
+ * can also be used to create a <code>W3CEndpointReference</code> for
+ * an endpoint that is published by the same Java EE application.
+ * To do so the <code>address</code> property can be provided or this
+ * method can automatically determine the <code>address</code> of
+ * an endpoint that is published by the same Java EE application and is
+ * identified by the <code>serviceName</code> and
+ * <code>portName</code> propeties. If the <code>address</code> is
+ * <code>null</code> and the <code>serviceName</code> and
+ * <code>portName</code> do not identify an endpoint published by the
+ * same Java EE application, a
+ * <code>javax.lang.IllegalArgumentException</code> MUST be thrown.
+ *
+ * @param address Specifies the address of the target endpoint
+ * @param serviceName Qualified name of the service in the WSDL.
+ * @param portName Qualified name of the endpoint in the WSDL.
+ * @param metadata A list of elements that should be added to the
+ * <code>W3CEndpointReference</code> instances <code>wsa:metadata</code>
+ * element.
+ * @param wsdlDocumentLocation URL for the WSDL document location for
+ * the service.
+ * @param referenceParameters Reference parameters to be associated
+ * with the returned <code>EndpointReference</code> instance.
+ *
+ * @return the <code>W3CEndpointReference<code> created from
+ * <code>serviceName</code>, <code>portName</code>,
+ * <code>metadata</code>, <code>wsdlDocumentLocation</code>
+ * and <code>referenceParameters</code>. This method
+ * never returns <code>null</code>.
+ *
+ * @throws javax.lang.IllegalArgumentException
+ * <ul>
+ * <li>If the <code>address</code>, <code>serviceName</code> and
+ * <code>portName</code> are all <code>null</code>.
+ * <li>If the <code>serviceName</code> service is <code>null</code> and the
+ * <code>portName> is NOT <code>null</code>.
+ * <li>If the <code>address</code> property is <code>null</code> and
+ * the <code>serviceName</code> and <code>portName</code> do not
+ * specify a valid endpoint published by the same Java EE
+ * application.
+ * <li>If the <code>serviceName</code>is NOT <code>null</code>
+ * and is not present in the specified WSDL.
+ * <li>If the <code>portName</code> port is not <code>null<code> and it
+ * is not present in <code>serviceName</code> service in the WSDL.
+ * <li>If the <code>wsdlDocumentLocation</code> is NOT <code>null</code>
+ * and does not represent a valid WSDL.
+ * </ul>
+ * @throws javax.xml.ws.WebServiceException If an error occurs while creating the
+ * <code>W3CEndpointReference</code>.
+ *
+ * @since JAX-WS 2.1
+ */
+ public abstract W3CEndpointReference createW3CEndpointReference(String address, QName serviceName, QName portName, List<Element> metadata,
+ String wsdlDocumentLocation, List<Element> referenceParameters);
+
+ /**
+ * read an EndpointReference from the infoset contained in
+ * <code>eprInfoset</code>.
+ *
+ * @returns the <code>EndpointReference</code> unmarshalled from
+ * <code>eprInfoset</code>. This method never returns <code>null</code>.
+ *
+ * @throws javax.xml.ws.WebServiceException If there is an error creating the
+ * <code>EndpointReference</code> from the specified <code>eprInfoset</code>.
+ *
+ * @throws NullPointerException If the <code>null</code>
+ * <code>eprInfoset</code> value is given.
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract EndpointReference readEndpointReference(javax.xml.transform.Source eprInfoset);
+
+ /**
+ * Create an EndpointReference for <code>serviceName</code>
+ * service and <code>portName</code> port from the WSDL <code>wsdlDocumentLocation</code>. The instance
+ * returned will be of type <code>clazz</code> and contain the <code>referenceParameters</code>
+ * reference parameters. This method delegates to the vendor specific
+ * implementation of the {@link javax.xml.ws.spi.Provider#createEndpointReference(Class<T>, javax.xml.namespace.QName, javax.xml.namespace.QName, javax.xml.transform.Source, org.w3c.dom.Element...)} method.
+ *
+ * @param clazz Specifies the type of <code>EndpointReference</code> that MUST be returned.
+ * @param serviceName Qualified name of the service in the WSDL.
+ * @param portName Qualified name of the endpoint in the WSDL.
+ * @param wsdlDocumentLocation URL for the WSDL document location for the service.
+ * @param referenceParameters Reference parameters to be associated with the
+ * returned <code>EndpointReference</code> instance.
+ *
+ * @return the EndpointReference created from <code>serviceName</code>, <code>portName</code>,
+ * <code>wsdlDocumentLocation</code> and <code>referenceParameters</code>. This method
+ * never returns <code>null</code>.
+ * @throws javax.xml.ws.WebServiceException
+ * <UL>
+ * <li>If the <code>serviceName</code> service is not present in the WSDL.
+ * <li>If the <code>portName</code> port is not present in <code>serviceName</code> service in the WSDL.
+ * <li>If the <code>wsdlDocumentLocation</code> does not represent a valid WSDL.
+ * <li>If an error occurs while creating the <code>EndpointReference</code>.
+ * <li>If the Class <code>clazz</code> is not supported by this implementation.
+ * </UL>
+ * @throws java.lang.IllegalArgumentException
+ * if any of the <code>clazz</code>, <code>serviceName</code>, <code>portName</code> and <code>wsdlDocumentLocation</code> is null.
+ */
+ public abstract <T extends EndpointReference> T createEndpointReference(Class<T> clazz, QName serviceName, QName portName, Source wsdlDocumentLocation,
+ Element... referenceParameters);
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/spi/Provider21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/spi/ProviderLoader.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/spi/ProviderLoader.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/spi/ProviderLoader.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -51,7 +51,7 @@
* @author Thomas.Diesler(a)jboss.com
* @since 03-May-2006
*/
-public abstract class ProviderLoader
+abstract class ProviderLoader
{
/**
* This method uses the algirithm described above.
Modified: stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -29,10 +29,8 @@
import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;
import javax.xml.ws.Dispatch;
-import javax.xml.ws.EndpointReference;
import javax.xml.ws.Service;
import javax.xml.ws.WebServiceException;
-import javax.xml.ws.WebServiceFeature;
import javax.xml.ws.handler.HandlerResolver;
/**
@@ -49,593 +47,214 @@
* @since JAX-WS 2.0
*/
public abstract class ServiceDelegate {
-
- protected ServiceDelegate() {
- }
-
- /**
- * The getPort method returns a proxy. A service client
- * uses this proxy to invoke operations on the target
- * service endpoint. The <code>serviceEndpointInterface</code>
- * specifies the service endpoint interface that is supported by
- * the created dynamic proxy instance.
- *
- * @param portName Qualified name of the service endpoint in
- * the WSDL service description
- * @param serviceEndpointInterface Service endpoint interface
- * supported by the dynamic proxy
- * @return Object Proxy instance that
- * supports the specified service endpoint
- * interface
- * @throws WebServiceException This exception is thrown in the
- * following cases:
- * <UL>
- * <LI>If there is an error in creation of
- * the proxy
- * <LI>If there is any missing WSDL metadata
- * as required by this method
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * or <code>portName</code> is specified
- * </UL>
- * @see java.lang.reflect.Proxy
- * @see java.lang.reflect.InvocationHandler
- **/
- public abstract <T> T getPort(QName portName,
- Class<T> serviceEndpointInterface);
-
- /**
- * The getPort method returns a proxy. A service client
- * uses this proxy to invoke operations on the target
- * service endpoint. The <code>serviceEndpointInterface</code>
- * specifies the service endpoint interface that is supported by
- * the created dynamic proxy instance.
- *
- * @param portName Qualified name of the service endpoint in
- * the WSDL service description
- * @param serviceEndpointInterface Service endpoint interface
- * supported by the dynamic proxy or instance
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object Proxy instance that
- * supports the specified service endpoint
- * interface
- * @throws WebServiceException This exception is thrown in the
- * following cases:
- * <UL>
- * <LI>If there is an error in creation of
- * the proxy
- * <LI>If there is any missing WSDL metadata
- * as required by this method
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * or <code>portName</code> is specified
- * <LI>If a feature is enabled that is not compatible
- * with this port or is unsupported.
- * </UL>
- * @see java.lang.reflect.Proxy
- * @see java.lang.reflect.InvocationHandler
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T> T getPort(QName portName,
- Class<T> serviceEndpointInterface, WebServiceFeature... features);
-
- /**
- * The getPort method returns a proxy.
- * The parameter <code>endpointReference</code> specifies the
- * endpoint that will be invoked by the returned proxy. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The <code>endpointReference's</code> address MUST be used
- * for invocations on the endpoint.
- * The parameter <code>serviceEndpointInterface</code> specifies
- * the service endpoint interface that is supported by the
- * returned proxy.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the proxy accordingly from
- * the WSDL associated with this <code>Service</code> instance or
- * from the WSDL Metadata from the <code>endpointReference</code>.
- * If this <code>Service</code> instance has a WSDL and
- * the <code>endpointReference</code>
- * also has a WSDL, then the WSDL from this instance will be used.
- * If this <code>Service</code> instance does not have a WSDL and
- * the <code>endpointReference</code> does have a WSDL, then the
- * WSDL from the <code>endpointReference</code> will be used.
- * The returned proxy should not be reconfigured by the client.
- * If this <code>Service</code> instance has a known proxy
- * port that matches the information contained in
- * the WSDL,
- * then that proxy is returned, otherwise a WebServiceException
- * is thrown.
- * <p>
- * Calling this method has the same behavior as the following
- * <pre>
- * port = service.getPort(portName, serviceEndpointInterface);
- * </pre>
- * where the <code>portName</code> is retrieved from the
- * <code>wsaw:EndpontName</code> attribute of the
- * <code>wsaw:ServiceName</code> element in the
- * metadata of the <code>endpointReference</code> or from the
- * <code>serviceEndpointInterface</code> and the WSDL
- * associated with this <code>Service</code> instance.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
- * </a>.
- *
- * @param endpointReference The <code>EndpointReference</code>
- * for the target service endpoint that will be invoked by the
- * returned proxy.
- * @param serviceEndpointInterface Service endpoint interface.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object Proxy instance that supports the
- * specified service endpoint interface.
- * @throws WebServiceException
- * <UL>
- * <LI>If there is an error during creation
- * of the proxy.
- * <LI>If there is any missing WSDL metadata
- * as required by this method.
- * <LI>If the <code>wsaw:EndpointName</code> is
- * missing from the <code>endpointReference</code>
- * or does not match a wsdl:Port
- * in the WSDL metadata.
- * <LI>If the <code>wsaw:ServiceName</code> in the
- * <code>endpointReference</code> metadata does not
- * match the <code>serviceName</code> of this
- * <code>Service</code> instance.
- * <LI>If an invalid
- * <code>endpointReference</code>
- * is specified.
- * <LI>If an invalid
- * <code>serviceEndpointInterface</code>
- * is specified.
- * <LI>If a feature is enabled that is not compatible
- * with this port or is unsupported.
- * </UL>
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T> T getPort(EndpointReference endpointReference,
- Class<T> serviceEndpointInterface, WebServiceFeature... features);
-
- /**
- * The getPort method returns a proxy. The parameter
- * <code>serviceEndpointInterface</code> specifies the service
- * endpoint interface that is supported by the returned proxy.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the proxy accordingly.
- * The returned proxy should not be reconfigured by the client.
- *
- * @param serviceEndpointInterface Service endpoint interface
- * @return Object instance that supports the
- * specified service endpoint interface
- * @throws WebServiceException
- * <UL>
- * <LI>If there is an error during creation
- * of the proxy
- * <LI>If there is any missing WSDL metadata
- * as required by this method
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * is specified
- * </UL>
- **/
- public abstract <T> T getPort(Class<T> serviceEndpointInterface);
+ protected ServiceDelegate() {
+ }
-
- /**
- * The getPort method returns a proxy. The parameter
- * <code>serviceEndpointInterface</code> specifies the service
- * endpoint interface that is supported by the returned proxy.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the proxy accordingly.
- * The returned proxy should not be reconfigured by the client.
- *
- * @param serviceEndpointInterface Service endpoint interface
- * @param features An array of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object instance that supports the
- * specified service endpoint interface
- * @throws WebServiceException
- * <UL>
- * <LI>If there is an error during creation
- * of the proxy
- * <LI>If there is any missing WSDL metadata
- * as required by this method
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * is specified
- * <LI>If a feature is enabled that is not compatible
- * with this port or is unsupported.
- * </UL>
- *
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T> T getPort(Class<T> serviceEndpointInterface,
- WebServiceFeature... features);
+ /**
+ * The getPort method returns a proxy. A service client
+ * uses this proxy to invoke operations on the target
+ * service endpoint. The <code>serviceEndpointInterface</code>
+ * specifies the service endpoint interface that is supported by
+ * the created dynamic proxy instance.
+ *
+ * @param portName Qualified name of the service endpoint in
+ * the WSDL service description
+ * @param serviceEndpointInterface Service endpoint interface
+ * supported by the dynamic proxy
+ * @return Object Proxy instance that
+ * supports the specified service endpoint
+ * interface
+ * @throws WebServiceException This exception is thrown in the
+ * following cases:
+ * <UL>
+ * <LI>If there is an error in creation of
+ * the proxy
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * or <code>portName</code> is specified
+ * </UL>
+ * @see java.lang.reflect.Proxy
+ * @see java.lang.reflect.InvocationHandler
+ **/
+ public abstract <T> T getPort(QName portName,
+ Class<T> serviceEndpointInterface);
-
-
- /**
- * Creates a new port for the service. Ports created in this way contain
- * no WSDL port type information and can only be used for creating
- * <code>Dispatch</code>instances.
- *
- * @param portName Qualified name for the target service endpoint
- * @param bindingId A URI identifier of a binding.
- * @param endpointAddress Address of the target service endpoint as a URI
- * @throws WebServiceException If any error in the creation of
- * the port
- *
- * @see javax.xml.ws.soap.SOAPBinding#SOAP11HTTP_BINDING
- * @see javax.xml.ws.soap.SOAPBinding#SOAP12HTTP_BINDING
- * @see javax.xml.ws.http.HTTPBinding#HTTP_BINDING
- **/
- public abstract void addPort(QName portName, String bindingId,
- String endpointAddress);
-
-
-
- /**
- * Creates a <code>Dispatch</code> instance for use with objects of
- * the users choosing.
- *
- * @param portName Qualified name for the target service endpoint
- * @param type The class of object used for messages or message
- * payloads. Implementations are required to support
- * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
- * when type is SOAPMessage.
- *
- * @return Dispatch instance
- * @throws WebServiceException If any error in the creation of
- * the <code>Dispatch</code> object
- * @see javax.xml.transform.Source
- * @see javax.xml.soap.SOAPMessage
- **/
- public abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type,
- Service.Mode mode);
-
- /**
- * Creates a <code>Dispatch</code> instance for use with objects of
- * the users choosing.
- *
- * @param portName Qualified name for the target service endpoint
- * @param type The class of object used for messages or message
- * payloads. Implementations are required to support
- * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
- * when type is SOAPMessage.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance
- * @throws WebServiceException If any error in the creation of
- * the <code>Dispatch</code> object or if a
- * feature is enabled that is not compatible with
- * this port or is unsupported.
- *
- * @see javax.xml.transform.Source
- * @see javax.xml.soap.SOAPMessage
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type,
- Service.Mode mode, WebServiceFeature... features);
-
-
- /**
- * Creates a <code>Dispatch</code> instance for use with objects of
- * the users choosing. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The <code>endpointReference's</code> address MUST be used
- * for invocations on the endpoint.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the dispatch accordingly from
- * the WSDL associated with this <code>Service</code> instance or
- * from the WSDL Metadata from the <code>endpointReference</code>.
- * If this <code>Service</code> instance has a WSDL and
- * the <code>endpointReference</code>
- * also has a WSDL, then the WSDL from this instance will be used.
- * If this <code>Service</code> instance does not have a WSDL and
- * the <code>endpointReference</code> does have a WSDL, then the
- * WSDL from the <code>endpointReference</code> will be used.
- * <p>
- * This method behaves the same as calling
- * <pre>
- * dispatch = service.createDispatch(portName, type, mode, features);
- * </pre>
- * where the <code>portName</code> is retrieved from the
- * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
- * element in the
- * metadata of the <code>endpointReference</code>.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
- * </a>.
- *
- * @param endpointReference The <code>EndpointReference</code>
- * for the target service endpoint that will be invoked by the
- * returned <code>Dispatch</code> object.
- * @param type The class of object used to messages or message
- * payloads. Implementations are required to support
- * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
- * when type is SOAPMessage.
- * @param features An array of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance
- * @throws WebServiceException
- * <UL>
- * <LI>If there is any missing WSDL metadata
- * as required by this method.
- * <li>If the <code>wsaw:ServiceName</code> element
- * or the <code>wsaw:EndpointName</code> attribute
- * is missing in the metdata of the
- * <code>endpointReference</code>.
- * <li>If the <code>wsaw:ServiceName</code> does not
- * match the <code>serviceName</code> of this instance.
- * <li>If the <code>wsaw:EndpointName</code> does not
- * match a valid wsdl:Port in the WSDL metadata.
- * <li>If any error in the creation of
- * the <code>Dispatch</code> object.
- * <li>if a feature is enabled that is not
- * compatible with this port or is unsupported.
- * </UL>
- *
- * @see javax.xml.transform.Source
- * @see javax.xml.soap.SOAPMessage
- * @see WebServiceFeature;
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T> Dispatch<T> createDispatch(EndpointReference endpointReference,
- Class<T> type, Service.Mode mode,
- WebServiceFeature... features);
+ /**
+ * The getPort method returns a proxy. The parameter
+ * <code>serviceEndpointInterface</code> specifies the service
+ * endpoint interface that is supported by the returned proxy.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the proxy accordingly.
+ * The returned proxy should not be reconfigured by the client.
+ *
+ * @param serviceEndpointInterface Service endpoint interface
+ * @return Object instance that supports the
+ * specified service endpoint interface
+ * @throws WebServiceException
+ * <UL>
+ * <LI>If there is an error during creation
+ * of the proxy
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * is specified
+ * </UL>
+ **/
+ public abstract <T> T getPort(Class<T> serviceEndpointInterface);
-
- /**
- * Creates a <code>Dispatch</code> instance for use with JAXB
- * generated objects.
- *
- * @param portName Qualified name for the target service endpoint
- * @param context The JAXB context used to marshall and unmarshall
- * messages or message payloads.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body.
- *
- * @return Dispatch instance
- * @throws ServiceException If any error in the creation of
- * the <code>Dispatch</code> object
- *
- * @see javax.xml.bind.JAXBContext
- **/
- public abstract Dispatch<Object> createDispatch(QName portName,
- JAXBContext context, Service.Mode mode);
-
- /**
- * Creates a <code>Dispatch</code> instance for use with JAXB
- * generated objects.
- *
- * @param portName Qualified name for the target service endpoint
- * @param context The JAXB context used to marshall and unmarshall
- * messages or message payloads.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance
- * @throws WebServiceException If any error in the creation of
- * the <code>Dispatch</code> object or if a
- * feature is enabled that is not compatible with
- * this port or is unsupported.
- *
- * @see javax.xml.bind.JAXBContext
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public abstract Dispatch<Object> createDispatch(QName portName,
- JAXBContext context, Service.Mode mode, WebServiceFeature... features);
-
- /**
- * Creates a <code>Dispatch</code> instance for use with JAXB
- * generated objects. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The <code>endpointReference's</code> address MUST be used
- * for invocations on the endpoint.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the dispatch accordingly from
- * the WSDL associated with this <code>Service</code> instance or
- * from the WSDL Metadata from the <code>endpointReference</code>.
- * If this <code>Service</code> instance has a WSDL and
- * the <code>endpointReference</code>
- * also has a WSDL, then the WSDL from this instance will be used.
- * If this <code>Service</code> instance does not have a WSDL and
- * the <code>endpointReference</code> does have a WSDL, then the
- * WSDL from the <code>endpointReference</code> will be used.
- * <p>
- * This method behavies the same as calling
- * <pre>
- * dispatch = service.createDispatch(portName, context, mode, features);
- * </pre>
- * where the <code>portName</code> is retrieved from the
- * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
- * element in the
- * metadata of the <code>endpointReference</code>.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
- * </a>.
- *
- * @param endpointReference The <code>EndpointReference</code>
- * for the target service endpoint that will be invoked by the
- * returned <code>Dispatch</code> object.
- * @param context The JAXB context used to marshall and unmarshall
- * messages or message payloads.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body.
- * @param features An array of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance
- * @throws WebServiceException
- * @throws WebServiceException
- * <UL>
- * <li>If there is any missing WSDL metadata
- * as required by this method.
- * <li>If the <code>wsaw:ServiceName</code> element
- * or the <code>wsaw:EndpointName</code> attribute
- * is missing in the metdata of the
- * <code>endpointReference</code>.
- * <li>If the <code>wsaw:ServiceName</code> does not
- * match the <code>serviceName</code> of this instance.
- * <li>If the <code>wsaw:EndpointName</code> does not
- * match a valid wsdl:Port in the WSDL metadata.
- * <li>If any error in the creation of
- * the <code>Dispatch</code> object.
- * <li>if a feature is enabled that is not
- * compatible with this port or is unsupported.
- * </UL>
- *
- * @see javax.xml.bind.JAXBContext
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public abstract Dispatch<Object> createDispatch(EndpointReference endpointReference,
- JAXBContext context, Service.Mode mode,
- WebServiceFeature... features);
-
-
- /**
- * Gets the name of this service.
- * @return Qualified name of this service
- **/
- public abstract QName getServiceName();
-
- /**
- * Returns an <code>Iterator</code> for the list of
- * <code>QName</code>s of service endpoints grouped by this
- * service
- *
- * @return Returns <code>java.util.Iterator</code> with elements
- * of type <code>javax.xml.namespace.QName</code>
- * @throws WebServiceException If this Service class does not
- * have access to the required WSDL metadata
- **/
- public abstract Iterator<javax.xml.namespace.QName> getPorts();
-
- /**
- * Gets the location of the WSDL document for this Service.
- *
- * @return URL for the location of the WSDL document for
- * this service
- **/
- public abstract java.net.URL getWSDLDocumentLocation();
-
- /**
- * Returns the configured handler resolver.
- *
- * @return HandlerResolver The <code>HandlerResolver</code> being
- * used by this <code>Service</code> instance, or <code>null</code>
- * if there isn't one.
- **/
- public abstract HandlerResolver getHandlerResolver();
-
- /**
- * Sets the <code>HandlerResolver</code> for this <code>Service</code>
- * instance.
- * <p>
- * The handler resolver, if present, will be called once for each
- * proxy or dispatch instance that is created, and the handler chain
- * returned by the resolver will be set on the instance.
- *
- * @param handlerResolver The <code>HandlerResolver</code> to use
- * for all subsequently created proxy/dispatch objects.
- *
- * @see javax.xml.ws.handler.HandlerResolver
- **/
- public abstract void setHandlerResolver(HandlerResolver handlerResolver);
-
- /**
- * Returns the executor for this <code>Service</code>instance.
- *
- * The executor is used for all asynchronous invocations that
- * require callbacks.
- *
- * @return The <code>java.util.concurrent.Executor</code> to be
- * used to invoke a callback.
- *
- * @see java.util.concurrent.Executor
- **/
- public abstract java.util.concurrent.Executor getExecutor();
-
- /**
- * Sets the executor for this <code>Service</code> instance.
- *
- * The executor is used for all asynchronous invocations that
- * require callbacks.
- *
- * @param executor The <code>java.util.concurrent.Executor</code>
- * to be used to invoke a callback.
- *
- * @throws SecurityException If the instance does not support
- * setting an executor for security reasons (e.g. the
- * necessary permissions are missing).
- *
- * @see java.util.concurrent.Executor
- **/
- public abstract void setExecutor(java.util.concurrent.Executor executor);
-
+
+ /**
+ * Creates a new port for the service. Ports created in this way contain
+ * no WSDL port type information and can only be used for creating
+ * <code>Dispatch</code>instances.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param bindingId A URI identifier of a binding.
+ * @param endpointAddress Address of the target service endpoint as a URI
+ * @throws WebServiceException If any error in the creation of
+ * the port
+ *
+ * @see javax.xml.ws.soap.SOAPBinding#SOAP11HTTP_BINDING
+ * @see javax.xml.ws.soap.SOAPBinding#SOAP12HTTP_BINDING
+ * @see javax.xml.ws.http.HTTPBinding#HTTP_BINDING
+ **/
+ public abstract void addPort(QName portName, String bindingId,
+ String endpointAddress);
+
+
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with objects of
+ * the users choosing.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param type The class of object used for messages or message
+ * payloads. Implementations are required to support
+ * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
+ * when type is SOAPMessage.
+ *
+ * @return Dispatch instance
+ * @throws WebServiceException If any error in the creation of
+ * the <code>Dispatch</code> object
+ * @see javax.xml.transform.Source
+ * @see javax.xml.soap.SOAPMessage
+ **/
+ public abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type,
+ Service.Mode mode);
+
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with JAXB
+ * generated objects.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param context The JAXB context used to marshall and unmarshall
+ * messages or message payloads.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body.
+ *
+ * @return Dispatch instance
+ * @throws ServiceException If any error in the creation of
+ * the <code>Dispatch</code> object
+ *
+ * @see javax.xml.bind.JAXBContext
+ **/
+ public abstract Dispatch<Object> createDispatch(QName portName,
+ JAXBContext context, Service.Mode mode);
+
+ /**
+ * Gets the name of this service.
+ * @return Qualified name of this service
+ **/
+ public abstract QName getServiceName();
+
+ /**
+ * Returns an <code>Iterator</code> for the list of
+ * <code>QName</code>s of service endpoints grouped by this
+ * service
+ *
+ * @return Returns <code>java.util.Iterator</code> with elements
+ * of type <code>javax.xml.namespace.QName</code>
+ * @throws WebServiceException If this Service class does not
+ * have access to the required WSDL metadata
+ **/
+ public abstract Iterator<javax.xml.namespace.QName> getPorts();
+
+ /**
+ * Gets the location of the WSDL document for this Service.
+ *
+ * @return URL for the location of the WSDL document for
+ * this service
+ **/
+ public abstract java.net.URL getWSDLDocumentLocation();
+
+ /**
+ * Returns the configured handler resolver.
+ *
+ * @return HandlerResolver The <code>HandlerResolver</code> being
+ * used by this <code>Service</code> instance, or <code>null</code>
+ * if there isn't one.
+ **/
+ public abstract HandlerResolver getHandlerResolver();
+
+ /**
+ * Sets the <code>HandlerResolver</code> for this <code>Service</code>
+ * instance.
+ * <p>
+ * The handler resolver, if present, will be called once for each
+ * proxy or dispatch instance that is created, and the handler chain
+ * returned by the resolver will be set on the instance.
+ *
+ * @param handlerResolver The <code>HandlerResolver</code> to use
+ * for all subsequently created proxy/dispatch objects.
+ *
+ * @see javax.xml.ws.handler.HandlerResolver
+ **/
+ public abstract void setHandlerResolver(HandlerResolver handlerResolver);
+
+ /**
+ * Returns the executor for this <code>Service</code>instance.
+ *
+ * The executor is used for all asynchronous invocations that
+ * require callbacks.
+ *
+ * @return The <code>java.util.concurrent.Executor</code> to be
+ * used to invoke a callback.
+ *
+ * @see java.util.concurrent.Executor
+ **/
+ public abstract java.util.concurrent.Executor getExecutor();
+
+ /**
+ * Sets the executor for this <code>Service</code> instance.
+ *
+ * The executor is used for all asynchronous invocations that
+ * require callbacks.
+ *
+ * @param executor The <code>java.util.concurrent.Executor</code>
+ * to be used to invoke a callback.
+ *
+ * @throws SecurityException If the instance does not support
+ * setting an executor for security reasons (e.g. the
+ * necessary permissions are missing).
+ *
+ * @see java.util.concurrent.Executor
+ **/
+ public abstract void setExecutor(java.util.concurrent.Executor executor);
+
}
Added: stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate21.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -0,0 +1,411 @@
+/*
+ * 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 javax.xml.ws.spi;
+
+import javax.xml.namespace.QName;
+import javax.xml.ws.WebServiceFeature;
+import javax.xml.ws.Dispatch;
+import javax.xml.ws.Service;
+import javax.xml.ws.EndpointReference;
+import javax.xml.bind.JAXBContext;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public abstract class ServiceDelegate21 extends ServiceDelegate
+{
+ /**
+ * The getPort method returns a proxy. A service client
+ * uses this proxy to invoke operations on the target
+ * service endpoint. The <code>serviceEndpointInterface</code>
+ * specifies the service endpoint interface that is supported by
+ * the created dynamic proxy instance.
+ *
+ * @param portName Qualified name of the service endpoint in
+ * the WSDL service description
+ * @param serviceEndpointInterface Service endpoint interface
+ * supported by the dynamic proxy or instance
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object Proxy instance that
+ * supports the specified service endpoint
+ * interface
+ * @throws javax.xml.ws.WebServiceException This exception is thrown in the
+ * following cases:
+ * <UL>
+ * <LI>If there is an error in creation of
+ * the proxy
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * or <code>portName</code> is specified
+ * <LI>If a feature is enabled that is not compatible
+ * with this port or is unsupported.
+ * </UL>
+ * @see java.lang.reflect.Proxy
+ * @see java.lang.reflect.InvocationHandler
+ * @see javax.xml.ws.WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T> T getPort(QName portName,
+ Class<T> serviceEndpointInterface, WebServiceFeature... features);
+
+ /**
+ * The getPort method returns a proxy.
+ * The parameter <code>endpointReference</code> specifies the
+ * endpoint that will be invoked by the returned proxy. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The <code>endpointReference's</code> address MUST be used
+ * for invocations on the endpoint.
+ * The parameter <code>serviceEndpointInterface</code> specifies
+ * the service endpoint interface that is supported by the
+ * returned proxy.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the proxy accordingly from
+ * the WSDL associated with this <code>Service</code> instance or
+ * from the WSDL Metadata from the <code>endpointReference</code>.
+ * If this <code>Service</code> instance has a WSDL and
+ * the <code>endpointReference</code>
+ * also has a WSDL, then the WSDL from this instance will be used.
+ * If this <code>Service</code> instance does not have a WSDL and
+ * the <code>endpointReference</code> does have a WSDL, then the
+ * WSDL from the <code>endpointReference</code> will be used.
+ * The returned proxy should not be reconfigured by the client.
+ * If this <code>Service</code> instance has a known proxy
+ * port that matches the information contained in
+ * the WSDL,
+ * then that proxy is returned, otherwise a WebServiceException
+ * is thrown.
+ * <p>
+ * Calling this method has the same behavior as the following
+ * <pre>
+ * port = service.getPort(portName, serviceEndpointInterface);
+ * </pre>
+ * where the <code>portName</code> is retrieved from the
+ * <code>wsaw:EndpontName</code> attribute of the
+ * <code>wsaw:ServiceName</code> element in the
+ * metadata of the <code>endpointReference</code> or from the
+ * <code>serviceEndpointInterface</code> and the WSDL
+ * associated with this <code>Service</code> instance.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
+ * </a>.
+ *
+ * @param endpointReference The <code>EndpointReference</code>
+ * for the target service endpoint that will be invoked by the
+ * returned proxy.
+ * @param serviceEndpointInterface Service endpoint interface.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object Proxy instance that supports the
+ * specified service endpoint interface.
+ * @throws javax.xml.ws.WebServiceException
+ * <UL>
+ * <LI>If there is an error during creation
+ * of the proxy.
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method.
+ * <LI>If the <code>wsaw:EndpointName</code> is
+ * missing from the <code>endpointReference</code>
+ * or does not match a wsdl:Port
+ * in the WSDL metadata.
+ * <LI>If the <code>wsaw:ServiceName</code> in the
+ * <code>endpointReference</code> metadata does not
+ * match the <code>serviceName</code> of this
+ * <code>Service</code> instance.
+ * <LI>If an invalid
+ * <code>endpointReference</code>
+ * is specified.
+ * <LI>If an invalid
+ * <code>serviceEndpointInterface</code>
+ * is specified.
+ * <LI>If a feature is enabled that is not compatible
+ * with this port or is unsupported.
+ * </UL>
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T> T getPort(EndpointReference endpointReference,
+ Class<T> serviceEndpointInterface, WebServiceFeature... features);
+
+ /**
+ * The getPort method returns a proxy. The parameter
+ * <code>serviceEndpointInterface</code> specifies the service
+ * endpoint interface that is supported by the returned proxy.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the proxy accordingly.
+ * The returned proxy should not be reconfigured by the client.
+ *
+ * @param serviceEndpointInterface Service endpoint interface
+ * @param features An array of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object instance that supports the
+ * specified service endpoint interface
+ * @throws javax.xml.ws.WebServiceException
+ * <UL>
+ * <LI>If there is an error during creation
+ * of the proxy
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * is specified
+ * <LI>If a feature is enabled that is not compatible
+ * with this port or is unsupported.
+ * </UL>
+ *
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T> T getPort(Class<T> serviceEndpointInterface,
+ WebServiceFeature... features);
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with objects of
+ * the users choosing.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param type The class of object used for messages or message
+ * payloads. Implementations are required to support
+ * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
+ * when type is SOAPMessage.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance
+ * @throws javax.xml.ws.WebServiceException If any error in the creation of
+ * the <code>Dispatch</code> object or if a
+ * feature is enabled that is not compatible with
+ * this port or is unsupported.
+ *
+ * @see javax.xml.transform.Source
+ * @see javax.xml.soap.SOAPMessage
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type,
+ Service.Mode mode, WebServiceFeature... features);
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with objects of
+ * the users choosing. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The <code>endpointReference's</code> address MUST be used
+ * for invocations on the endpoint.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the dispatch accordingly from
+ * the WSDL associated with this <code>Service</code> instance or
+ * from the WSDL Metadata from the <code>endpointReference</code>.
+ * If this <code>Service</code> instance has a WSDL and
+ * the <code>endpointReference</code>
+ * also has a WSDL, then the WSDL from this instance will be used.
+ * If this <code>Service</code> instance does not have a WSDL and
+ * the <code>endpointReference</code> does have a WSDL, then the
+ * WSDL from the <code>endpointReference</code> will be used.
+ * <p>
+ * This method behaves the same as calling
+ * <pre>
+ * dispatch = service.createDispatch(portName, type, mode, features);
+ * </pre>
+ * where the <code>portName</code> is retrieved from the
+ * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
+ * element in the
+ * metadata of the <code>endpointReference</code>.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
+ * </a>.
+ *
+ * @param endpointReference The <code>EndpointReference</code>
+ * for the target service endpoint that will be invoked by the
+ * returned <code>Dispatch</code> object.
+ * @param type The class of object used to messages or message
+ * payloads. Implementations are required to support
+ * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
+ * when type is SOAPMessage.
+ * @param features An array of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance
+ * @throws javax.xml.ws.WebServiceException
+ * <UL>
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method.
+ * <li>If the <code>wsaw:ServiceName</code> element
+ * or the <code>wsaw:EndpointName</code> attribute
+ * is missing in the metdata of the
+ * <code>endpointReference</code>.
+ * <li>If the <code>wsaw:ServiceName</code> does not
+ * match the <code>serviceName</code> of this instance.
+ * <li>If the <code>wsaw:EndpointName</code> does not
+ * match a valid wsdl:Port in the WSDL metadata.
+ * <li>If any error in the creation of
+ * the <code>Dispatch</code> object.
+ * <li>if a feature is enabled that is not
+ * compatible with this port or is unsupported.
+ * </UL>
+ *
+ * @see javax.xml.transform.Source
+ * @see javax.xml.soap.SOAPMessage
+ * @see WebServiceFeature;
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T> Dispatch<T> createDispatch(EndpointReference endpointReference,
+ Class<T> type, Service.Mode mode,
+ WebServiceFeature... features);
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with JAXB
+ * generated objects.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param context The JAXB context used to marshall and unmarshall
+ * messages or message payloads.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance
+ * @throws javax.xml.ws.WebServiceException If any error in the creation of
+ * the <code>Dispatch</code> object or if a
+ * feature is enabled that is not compatible with
+ * this port or is unsupported.
+ *
+ * @see javax.xml.bind.JAXBContext
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract Dispatch<Object> createDispatch(QName portName,
+ JAXBContext context, Service.Mode mode, WebServiceFeature... features);
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with JAXB
+ * generated objects. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The <code>endpointReference's</code> address MUST be used
+ * for invocations on the endpoint.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the dispatch accordingly from
+ * the WSDL associated with this <code>Service</code> instance or
+ * from the WSDL Metadata from the <code>endpointReference</code>.
+ * If this <code>Service</code> instance has a WSDL and
+ * the <code>endpointReference</code>
+ * also has a WSDL, then the WSDL from this instance will be used.
+ * If this <code>Service</code> instance does not have a WSDL and
+ * the <code>endpointReference</code> does have a WSDL, then the
+ * WSDL from the <code>endpointReference</code> will be used.
+ * <p>
+ * This method behavies the same as calling
+ * <pre>
+ * dispatch = service.createDispatch(portName, context, mode, features);
+ * </pre>
+ * where the <code>portName</code> is retrieved from the
+ * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
+ * element in the
+ * metadata of the <code>endpointReference</code>.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
+ * </a>.
+ *
+ * @param endpointReference The <code>EndpointReference</code>
+ * for the target service endpoint that will be invoked by the
+ * returned <code>Dispatch</code> object.
+ * @param context The JAXB context used to marshall and unmarshall
+ * messages or message payloads.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body.
+ * @param features An array of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance
+ * @throws javax.xml.ws.WebServiceException
+ * @throws javax.xml.ws.WebServiceException
+ * <UL>
+ * <li>If there is any missing WSDL metadata
+ * as required by this method.
+ * <li>If the <code>wsaw:ServiceName</code> element
+ * or the <code>wsaw:EndpointName</code> attribute
+ * is missing in the metdata of the
+ * <code>endpointReference</code>.
+ * <li>If the <code>wsaw:ServiceName</code> does not
+ * match the <code>serviceName</code> of this instance.
+ * <li>If the <code>wsaw:EndpointName</code> does not
+ * match a valid wsdl:Port in the WSDL metadata.
+ * <li>If any error in the creation of
+ * the <code>Dispatch</code> object.
+ * <li>if a feature is enabled that is not
+ * compatible with this port or is unsupported.
+ * </UL>
+ *
+ * @see javax.xml.bind.JAXBContext
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract Dispatch<Object> createDispatch(EndpointReference endpointReference,
+ JAXBContext context, Service.Mode mode,
+ WebServiceFeature... features);
+
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/spi/ServiceDelegate21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -30,6 +30,7 @@
import javax.xml.namespace.QName;
import javax.xml.ws.WebServiceException;
import javax.xml.ws.spi.Provider;
+import javax.xml.ws.spi.Provider21;
import org.w3c.dom.Element;
@@ -240,7 +241,7 @@
* and is not present in the specified WSDL.
* <li>If the <code>endpointName</code> port is not <code>null<code> and it
* is not present in <code>serviceName</code> service in the WSDL.
- * <li>If the <code>wsdlDocumentLocation</code> is NOT <code>null</code>
+ * <li>If the <code>wsdlDocumentLocation</code> is NOT <code>null</code> Pr
* and does not represent a valid WSDL.
* </ul>
* @throws WebServiceException If an error occurs while creating the
@@ -248,7 +249,7 @@
*
*/
public W3CEndpointReference build() {
- return Provider.provider().createW3CEndpointReference(address,
+ return ((Provider21)Provider.provider()).createW3CEndpointReference(address,
serviceName, endpointName, metadata, wsdlDocumentLocation,
referenceParameters);
}
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -31,6 +31,9 @@
import javax.xml.bind.JAXBContext;
import javax.xml.soap.MimeHeaders;
import javax.xml.soap.SOAPMessage;
+import javax.xml.soap.SOAPFactory;
+import javax.xml.soap.SOAPFault;
+import javax.xml.soap.SOAPException;
import javax.xml.transform.Source;
import javax.xml.ws.AsyncHandler;
import javax.xml.ws.Binding;
@@ -43,11 +46,13 @@
import javax.xml.ws.Service.Mode;
import javax.xml.ws.http.HTTPBinding;
import javax.xml.ws.soap.SOAPFaultException;
+import javax.xml.namespace.QName;
import org.jboss.logging.Logger;
import org.jboss.util.NotImplementedException;
import org.jboss.ws.core.MessageAbstraction;
import org.jboss.ws.core.ConfigProvider;
+import org.jboss.ws.core.soap.SOAPFaultImpl;
import org.jboss.ws.core.client.HTTPRemotingConnection;
import org.jboss.ws.core.client.RemotingConnection;
import org.jboss.ws.core.client.SOAPRemotingConnection;
@@ -251,7 +256,19 @@
{
// jaxws/api/javax_xml_ws/Dispatch/Client.java#invokeTestJAXBNull
if (obj == null)
- throw new SOAPFaultException("Request object cannot be null");
+ {
+ try
+ {
+ SOAPFactory factory = SOAPFactory.newInstance();
+ SOAPFault fault = factory.createFault("Request object cannot be null", new QName("http://org.jboss.ws", "Dispatch"));
+ fault.setFaultActor("client");
+ throw new SOAPFaultException(fault);
+ }
+ catch (SOAPException e)
+ {
+ //
+ }
+ }
String bindingID = ((Binding21)bindingProvider.getBinding()).getBindingID();
if (EndpointMetaData.SUPPORTED_BINDINGS.contains(bindingID) == false)
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ProviderImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ProviderImpl.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ProviderImpl.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -35,6 +35,7 @@
import javax.xml.ws.soap.SOAPBinding;
import javax.xml.ws.spi.Provider;
import javax.xml.ws.spi.ServiceDelegate;
+import javax.xml.ws.spi.Provider21;
import javax.xml.ws.wsaddressing.W3CEndpointReference;
import org.jboss.util.NotImplementedException;
@@ -46,7 +47,7 @@
* @author Thomas.Diesler(a)jboss.com
* @since 03-May-2006
*/
-public class ProviderImpl extends Provider
+public class ProviderImpl extends Provider21
{
// 6.2 Conformance (Concrete javax.xml.ws.spi.Provider required): An implementation MUST provide
// a concrete class that extends javax.xml.ws.spi.Provider. Such a class MUST have a public constructor
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ServiceDelegateImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ServiceDelegateImpl.java 2007-09-26 13:10:41 UTC (rev 4631)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/ServiceDelegateImpl.java 2007-09-26 13:11:47 UTC (rev 4632)
@@ -47,6 +47,7 @@
import javax.xml.ws.Service.Mode;
import javax.xml.ws.handler.HandlerResolver;
import javax.xml.ws.spi.ServiceDelegate;
+import javax.xml.ws.spi.ServiceDelegate21;
import org.jboss.logging.Logger;
import org.jboss.util.NotImplementedException;
@@ -84,7 +85,7 @@
* @author Thomas.Diesler(a)jboss.com
* @since 03-May-2006
*/
-public class ServiceDelegateImpl extends ServiceDelegate
+public class ServiceDelegateImpl extends ServiceDelegate21
{
// provide logging
private final Logger log = Logger.getLogger(ServiceDelegateImpl.class);
17 years, 3 months
JBossWS SVN: r4631 - stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-26 09:10:41 -0400 (Wed, 26 Sep 2007)
New Revision: 4631
Modified:
framework/trunk/src/test/java/org/jboss/test/ws/jaxws/smoke/tools/WSConsumerTestCase.java
stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java
Log:
Fix WSConsumer classloading: previous commit was incomplete
Modified: framework/trunk/src/test/java/org/jboss/test/ws/jaxws/smoke/tools/WSConsumerTestCase.java
===================================================================
--- framework/trunk/src/test/java/org/jboss/test/ws/jaxws/smoke/tools/WSConsumerTestCase.java 2007-09-26 10:14:18 UTC (rev 4630)
+++ framework/trunk/src/test/java/org/jboss/test/ws/jaxws/smoke/tools/WSConsumerTestCase.java 2007-09-26 13:10:41 UTC (rev 4631)
@@ -31,6 +31,7 @@
import java.io.PrintStream;
import java.net.URL;
import java.net.URLClassLoader;
+import java.net.MalformedURLException;
import java.util.ArrayList;
import java.util.List;
import java.lang.reflect.Method;
@@ -247,9 +248,19 @@
consumer.setTargetPackage("org.jboss.test.ws.tools.testTarget");
consumer.setGenerateSource(true);
consumer.setTarget("2.1");
-
- consumeWSDL();
+ try
+ {
+ consumeWSDL();
+ fail("Target 2.1 should not be supported");
+ }
+ catch (Exception e)
+ {
+ File outputDir = new File(System.getProperty("user.dir")+"/wsconsume/java/org/jboss/test/ws/tools/testTarget");
+ outputDir.deleteOnExit();
+ return;
+ }
+
URLClassLoader loader = new URLClassLoader(new URL[] { new URL("file:"+System.getProperty("user.dir")+"/wsconsume/java/") });
String seiClassName = "org.jboss.test.ws.tools.testTarget.TestService";
Class sei = loader.loadClass(seiClassName);
@@ -263,7 +274,7 @@
for(Class c : m.getParameterTypes())
{
if(c.isArray() &&
- c.getComponentType().equals(WebServiceFeature.class))
+ c.getComponentType().equals(WebServiceFeature.class))
{
featureSig = true;
break;
Modified: stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java 2007-09-26 10:14:18 UTC (rev 4630)
+++ stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java 2007-09-26 13:10:41 UTC (rev 4631)
@@ -47,7 +47,7 @@
private String targetPackage;
private PrintStream messageStream;
private String wsdlLocation;
- private List<String> additionalCompilerClassPath;
+ private List<String> additionalCompilerClassPath = new ArrayList<String>();
private String target = "2.0";
@Override
@@ -104,7 +104,7 @@
}
public void setTarget(String target)
- {
+ {
this.target = target;
}
@@ -171,6 +171,9 @@
args.add(outputDir.getAbsolutePath());
// Always set the target
+ if(!target.equals("2.0"))
+ throw new IllegalArgumentException("WSConsume (native) only supports JAX-WS 2.0");
+
args.add("-target");
args.add(target);
17 years, 3 months
JBossWS SVN: r4630 - in stack/native/trunk: ant-import and 9 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-26 06:14:18 -0400 (Wed, 26 Sep 2007)
New Revision: 4630
Added:
stack/native/trunk/src/main/java/javax/xml/ws/Binding21.java
stack/native/trunk/src/main/java/javax/xml/ws/Endpoint21.java
stack/native/trunk/src/main/java/javax/xml/ws/Service21.java
stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext21.java
stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/BindingProvider21.java
Modified:
stack/native/trunk/ant-import-tests/build-testsuite.xml
stack/native/trunk/ant-import/build-bin-dist.xml
stack/native/trunk/ant-import/build-release.xml
stack/native/trunk/build.xml
stack/native/trunk/src/main/java/javax/xml/ws/Binding.java
stack/native/trunk/src/main/java/javax/xml/ws/BindingProvider.java
stack/native/trunk/src/main/java/javax/xml/ws/Endpoint.java
stack/native/trunk/src/main/java/javax/xml/ws/RespectBinding.java
stack/native/trunk/src/main/java/javax/xml/ws/RespectBindingFeature.java
stack/native/trunk/src/main/java/javax/xml/ws/Service.java
stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext.java
stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java
stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingExt.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingProviderImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/EndpointImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EventingService.java
Log:
TCK signature tests: Remove JAX-WS 2.1 aditions from jboss-jaxws.jar.
Modified: stack/native/trunk/ant-import/build-bin-dist.xml
===================================================================
--- stack/native/trunk/ant-import/build-bin-dist.xml 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/ant-import/build-bin-dist.xml 2007-09-26 10:14:18 UTC (rev 4630)
@@ -97,8 +97,8 @@
</fileset>
<fileset dir="${core.dir}/output/lib">
<include name="jboss-jaxrpc.jar"/>
- <include name="jboss-jaxws.jar"/>
- <include name="jboss-saaj.jar"/>
+ <include name="jboss-jaxws.jar"/>
+ <include name="jboss-saaj.jar"/>
<include name="jbossws-client.jar"/>
<include name="jbossws-core.jar"/>
<include name="jbossws-core-scripts.zip"/>
Modified: stack/native/trunk/ant-import/build-release.xml
===================================================================
--- stack/native/trunk/ant-import/build-release.xml 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/ant-import/build-release.xml 2007-09-26 10:14:18 UTC (rev 4630)
@@ -47,7 +47,7 @@
<include name="jbossws-client.jar"/>
<include name="jbossws-core.jar"/>
<include name="jboss-jaxrpc.jar"/>
- <include name="jboss-jaxws.jar"/>
+ <include name="jboss-jaxws.jar"/>
<include name="jboss-saaj.jar"/>
<include name="jbossws-core-src.zip"/>
<include name="jbossws-core-scripts.zip"/>
Modified: stack/native/trunk/ant-import-tests/build-testsuite.xml
===================================================================
--- stack/native/trunk/ant-import-tests/build-testsuite.xml 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/ant-import-tests/build-testsuite.xml 2007-09-26 10:14:18 UTC (rev 4630)
@@ -31,8 +31,8 @@
<pathelement location="${core.dir}/thirdparty/jbossws-common.jar"/>
<pathelement location="${core.dir}/thirdparty/jbossws-spi.jar"/>
<pathelement location="${core.dir}/output/lib/jboss-jaxrpc.jar"/>
- <pathelement location="${core.dir}/output/lib/jboss-jaxws.jar"/>
- <pathelement location="${core.dir}/output/lib/jboss-saaj.jar"/>
+ <pathelement location="${core.dir}/output/lib/jboss-jaxws.jar"/>
+ <pathelement location="${core.dir}/output/lib/jboss-saaj.jar"/>
<pathelement location="${core.dir}/output/lib/jbossws-core.jar"/>
<pathelement location="${core.dir}/output/lib/jbossws-client.jar"/>
</path>
@@ -81,7 +81,7 @@
<classpath refid="tests.client.classpath"/>
</taskdef>
- <wsconsume wsdl="${tests.resources.dir}/benchmark/jaxws/doclit/WEB-INF/wsdl/BenchmarkWebService.wsdl" package="org.jboss.test.ws.benchmark.jaxws.doclit" sourcedestdir="${tests.output.dir}/wsconsume/java" keep="true" verbose="false"/>
+ <wsconsume wsdl="${tests.resources.dir}/benchmark/jaxws/doclit/WEB-INF/wsdl/BenchmarkWebService.wsdl" package="org.jboss.test.ws.benchmark.jaxws.doclit" sourcedestdir="${tests.output.dir}/wsconsume/java" keep="true" verbose="true" fork="false"/>
<wsconsume wsdl="${tests.resources.dir}/interop/soapwsdl/BaseDataTypesDocLitB/WEB-INF/wsdl/service.wsdl" package="org.jboss.test.ws.interop.soapwsdl.basedoclitb" sourcedestdir="${tests.output.dir}/wsconsume/java" keep="true" verbose="false"/>
<wsconsume wsdl="${tests.resources.dir}/interop/soapwsdl/BaseDataTypesDocLitW/WEB-INF/wsdl/service.wsdl" package="org.jboss.test.ws.interop.soapwsdl.basedoclitw" sourcedestdir="${tests.output.dir}/wsconsume/java" keep="true" verbose="false"/>
<wsconsume wsdl="${tests.resources.dir}/interop/soapwsdl/BaseDataTypesRpcLit/WEB-INF/wsdl/service.wsdl" package="org.jboss.test.ws.interop.soapwsdl.baserpclit" sourcedestdir="${tests.output.dir}/wsconsume/java" keep="true" verbose="false"/>
Modified: stack/native/trunk/build.xml
===================================================================
--- stack/native/trunk/build.xml 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/build.xml 2007-09-26 10:14:18 UTC (rev 4630)
@@ -127,23 +127,61 @@
</jar>
<!-- Build jboss-jaxws.jar -->
- <mkdir dir="${core.output.lib.dir}"/>
- <jar jarfile="${core.output.lib.dir}/jboss-jaxws.jar" manifest="${core.output.etc.dir}/default.mf">
- <fileset dir="${core.output.classes.dir}">
- <include name="javax/annotation/**"/>
- <include name="javax/jws/**"/>
- <include name="javax/xml/ws/**"/>
- </fileset>
+ <mkdir dir="${core.output.lib.dir}"/>
+ <jar jarfile="${core.output.lib.dir}/jboss-jaxws.jar" manifest="${core.output.etc.dir}/default.mf">
+ <fileset dir="${core.output.classes.dir}">
+ <include name="javax/annotation/**"/>
+ <include name="javax/jws/**"/>
+ <include name="javax/xml/ws/**"/>
+ <exclude name="javax/xml/ws/**/*21.class"/>
+ <exclude name="javax/xml/ws/Action.class"/>
+ <exclude name="javax/xml/ws/EndpointReference.class"/>
+ <exclude name="javax/xml/ws/FaultAction.class"/>
+ <exclude name="javax/xml/ws/RespectBinding.class"/>
+ <exclude name="javax/xml/ws/RespectBindingFeature.class"/>
+ <exclude name="javax/xml/ws/WebServiceFeature.class"/>
+ <exclude name="javax/xml/ws/addressing/**"/>
+ <exclude name="javax/xml/ws/wsaddressing/**"/>
+ </fileset>
<metainf dir="${core.resources.dir}/jboss-jaxws.jar/META-INF"/>
- </jar>
+ </jar>
- <!-- Build jbossws-core.jar -->
+ <!-- Build jboss-jaxws-ext.jar -->
+ <!--mkdir dir="${core.output.lib.dir}"/>
+ <jar jarfile="${core.output.lib.dir}/jboss-jaxws-ext.jar" manifest="${core.output.etc.dir}/default.mf">
+ <fileset dir="${core.output.classes.dir}">
+ <include name="javax/xml/ws/**/*21.class"/>
+ <include name="javax/xml/ws/Action.class"/>
+ <include name="javax/xml/ws/EndpointReference.class"/>
+ <include name="javax/xml/ws/FaultAction.class"/>
+ <include name="javax/xml/ws/RespectBinding.class"/>
+ <include name="javax/xml/ws/RespectBindingFeature.class"/>
+ <include name="javax/xml/ws/WebServiceFeature.class"/>
+ <include name="javax/xml/ws/addressing/**"/>
+ <include name="javax/xml/ws/wsaddressing/**"/>
+ </fileset>
+ <metainf dir="${core.resources.dir}/jboss-jaxws-ext.jar/META-INF"/>
+ </jar-->
+
+ <!-- Build jbossws-core.jar -->
<mkdir dir="${core.output.lib.dir}"/>
<jar jarfile="${core.output.lib.dir}/jbossws-core.jar" manifest="${core.output.etc.dir}/default.mf">
<fileset dir="${core.output.classes.dir}">
<include name="org/jboss/annotation/**"/>
<include name="org/jboss/ws/**"/>
- </fileset>
+
+ <!-- JAX-WS 2.1 extensions -->
+ <include name="javax/xml/ws/**/*21.class"/>
+ <include name="javax/xml/ws/Action.class"/>
+ <include name="javax/xml/ws/EndpointReference.class"/>
+ <include name="javax/xml/ws/FaultAction.class"/>
+ <include name="javax/xml/ws/RespectBinding.class"/>
+ <include name="javax/xml/ws/RespectBindingFeature.class"/>
+ <include name="javax/xml/ws/WebServiceFeature.class"/>
+ <include name="javax/xml/ws/addressing/**"/>
+ <include name="javax/xml/ws/wsaddressing/**"/>
+
+ </fileset>
<fileset dir="${core.resources.dir}">
<include name="schema/**"/>
<include name="dtd/**"/>
@@ -156,7 +194,19 @@
<fileset dir="${core.output.classes.dir}">
<include name="org/jboss/wsf/**"/>
<include name="org/jboss/ws/**"/>
- </fileset>
+
+ <!-- JAX-WS 2.1 extensions -->
+ <include name="javax/xml/ws/**/*21.class"/>
+ <include name="javax/xml/ws/Action.class"/>
+ <include name="javax/xml/ws/EndpointReference.class"/>
+ <include name="javax/xml/ws/FaultAction.class"/>
+ <include name="javax/xml/ws/RespectBinding.class"/>
+ <include name="javax/xml/ws/RespectBindingFeature.class"/>
+ <include name="javax/xml/ws/WebServiceFeature.class"/>
+ <include name="javax/xml/ws/addressing/**"/>
+ <include name="javax/xml/ws/wsaddressing/**"/>
+
+ </fileset>
<fileset dir="${core.resources.dir}">
<include name="schema/**"/>
<include name="dtd/**"/>
Modified: stack/native/trunk/src/main/java/javax/xml/ws/Binding.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Binding.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Binding.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -53,14 +53,4 @@
* chain.
*/
public void setHandlerChain(java.util.List<javax.xml.ws.handler.Handler> chain);
-
- /**
- * Get the URI for this binding instance.
- *
- * @return String The binding identifier for the port.
- * Never returns <code>null</code>
- *
- * @since JAX-WS 2.1
- */
- String getBindingID();
}
Added: stack/native/trunk/src/main/java/javax/xml/ws/Binding21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Binding21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Binding21.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -0,0 +1,39 @@
+/*
+ * 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 javax.xml.ws;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public interface Binding21 extends Binding
+{
+ /**
+ * Get the URI for this binding instance.
+ *
+ * @return String The binding identifier for the port.
+ * Never returns <code>null</code>
+ *
+ * @since JAX-WS 2.1
+ */
+ String getBindingID();
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/Binding21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/BindingProvider.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/BindingProvider.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/BindingProvider.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -25,8 +25,6 @@
import java.util.Map;
-import javax.xml.ws.wsaddressing.W3CEndpointReference;
-
/** The <code>BindingProvider</code> interface provides access to the
* protocol binding and associated context objects for request and
* response message processing.
@@ -108,68 +106,4 @@
* @return The Binding for this binding provider.
**/
Binding getBinding();
-
- /**
- * Returns the <code>EndpointReference</code> associated with
- * this <code>BindingProvider</code> instance.
- * <p>
- * If the Binding for this <code>bindingProvider</code> is
- * either SOAP1.1/HTTP or SOAP1.2/HTTP, then a
- * <code>W3CEndpointReference</code> MUST be returned.
- * If the returned <code>EndpointReference</code> is a
- * <code>W3CEndpointReference</code> it MUST contain
- * the <code>wsaw:ServiceName</code> element and the
- * <code>wsaw:EndpointName</code> attribute on the
- * <code>wsaw:ServiceName</code>. It SHOULD contain
- * the embedded WSDL in the <code>wsa:Metadata</code> element
- * if there is an associated WSDL. The
- * <code>wsaw:InterfaceName</code> MAY also be present.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
- * WS-Addressing - WSDL 1.0</a>.
- *
- * @return EndpointReference of the target endpoint associated with this
- * <code>BindingProvider</code> instance.
- *
- * @throws java.lang.UnsupportedOperationException If this
- * <code>BindingProvider</code> uses the XML/HTTP binding.
- *
- * @see W3CEndpointReference
- *
- * @since JAX-WS 2.1
- */
- public EndpointReference getEndpointReference();
-
- /**
- * Returns the <code>EndpointReference</code> associated with
- * this <code>BindingProvider</code> instance. The instance
- * returned will be of type <code>clazz</code>.
- * <p>
- * If the returned <code>EndpointReference</code> is a
- * <code>W3CEndpointReference</code> it MUST contain
- * the <code>wsaw:ServiceName</code> element and the
- * <code>wsaw:EndpointName</code> attribute on the
- * <code>wsaw:ServiceName</code>. It SHOULD contain
- * the embedded WSDL in the <code>wsa:Metadata</code> element
- * if there is an associated WSDL. The
- * <code>wsaw:InterfaceName</code> MAY also be present.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
- * WS-Addressing - WSDL 1.0</a>.
- *
- * @param clazz Specifies the type of <code>EndpointReference</code>
- * that MUST be returned.
-
- * @return EndpointReference of the target endpoint associated with this
- * <code>BindingProvider</code> instance. MUST be of type
- * <code>clazz</code>.
-
- * @throws WebServiceException If the Class <code>clazz</code>
- * is not supported by this implementation.
- * @throws java.lang.UnsupportedOperationException If this
- * <code>BindingProvider</code> uses the XML/HTTP binding.
- *
- * @since JAX-WS 2.1
- */
- public <T extends EndpointReference> T getEndpointReference(Class<T> clazz);
}
Modified: stack/native/trunk/src/main/java/javax/xml/ws/Endpoint.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Endpoint.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Endpoint.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -23,15 +23,11 @@
// $Id$
+import javax.xml.ws.soap.SOAPBinding;
+import javax.xml.ws.spi.Provider;
import java.util.List;
import java.util.Map;
-import javax.xml.ws.soap.SOAPBinding;
-import javax.xml.ws.spi.Provider;
-import javax.xml.ws.wsaddressing.W3CEndpointReference;
-
-import org.w3c.dom.Element;
-
/**
* A Web service endpoint.
*
@@ -298,77 +294,4 @@
**/
public abstract void setProperties(Map<String, Object> properties);
- /**
- * Returns the <code>EndpointReference</code> associated with
- * this <code>Endpoint</code> instance.
- * <p>
- * If the Binding for this <code>bindingProvider</code> is
- * either SOAP1.1/HTTP or SOAP1.2/HTTP, then a
- * <code>W3CEndpointReference</code> MUST be returned.
- * If the returned <code>EndpointReference</code> is a
- * <code>W3CEndpointReference</code> it MUST contain
- * the <code>wsaw:ServiceName</code> element and the
- * <code>wsaw:EndpointName</code> attribute on the
- * <code>wsaw:ServiceName</code>. It SHOULD contain
- * the embedded WSDL in the <code>wsa:Metadata</code> element
- * if there is an associated WSDL. The
- * <code>wsaw:InterfaceName</code> MAY also be present.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
- * WS-Addressing - WSDL 1.0</a>.
- *
- * @param referenceParameters Reference parameters to be associated with the
- * returned <code>EndpointReference</code> instance.
- * @return EndpointReference of this <code>Endpoint</code> instance.
- * If the returned <code>EndpointReference</code> is of type
- * <code>W3CEndpointReference</code> then it MUST contain the
- * the specified <code>referenceParameters</code>.
-
- * @throws WebServiceException If any error in the creation of
- * the <code>EndpointReference</code> or if the <code>Endpoint</code> is
- * not in the published state.
- * @throws UnsupportedOperationException If this <code>BindingProvider</code>
- * uses the XML/HTTP binding.
- *
- * @see W3CEndpointReference
- *
- * @since JAX-WS 2.1
- **/
- public abstract EndpointReference getEndpointReference(Element... referenceParameters);
-
- /**
- * Returns the <code>EndpointReference</code> associated with
- * this <code>Endpoint</code> instance.
- * <p>
- * If the returned <code>EndpointReference</code> is a
- * <code>W3CEndpointReference</code> it MUST contain
- * the <code>wsaw:ServiceName</code> element and the
- * <code>wsaw:EndpointName</code> attribute on the
- * <code>wsaw:ServiceName</code>. It SHOULD contain
- * the embedded WSDL in the <code>wsa:Metadata</code> element
- * if there is an associated WSDL. The
- * <code>wsaw:InterfaceName</code> MAY also be present.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
- * WS-Addressing - WSDL 1.0</a>.
- *
- * @param referenceParameters Reference parameters to be associated with the
- * returned <code>EndpointReference</code> instance.
- * @return EndpointReference of type <code>clazz</code> of this
- * <code>Endpoint<code> instance.
- * If the returned <code>EndpointReference</code> is of type
- * <code>W3CEndpointReference</code> then it MUST contain the
- * the specified <code>referenceParameters</code>.
-
- * @throws WebServiceException If any error in the creation of
- * the <code>EndpointReference</code> or if the <code>Endpoint</code> is
- * not in the published state or if the <code>clazz</code> is not a supported
- * <code>EndpointReference</code> type.
- * @throws UnsupportedOperationException If this <code>BindingProvider</code>
- * uses the XML/HTTP binding.
- *
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T extends EndpointReference> T getEndpointReference(Class<T> clazz, Element... referenceParameters);
}
Added: stack/native/trunk/src/main/java/javax/xml/ws/Endpoint21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Endpoint21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Endpoint21.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -0,0 +1,105 @@
+/*
+ * 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 javax.xml.ws;
+
+import org.w3c.dom.Element;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public abstract class Endpoint21 extends Endpoint
+{
+ /**
+ * Returns the <code>EndpointReference</code> associated with
+ * this <code>Endpoint</code> instance.
+ * <p>
+ * If the Binding for this <code>bindingProvider</code> is
+ * either SOAP1.1/HTTP or SOAP1.2/HTTP, then a
+ * <code>W3CEndpointReference</code> MUST be returned.
+ * If the returned <code>EndpointReference</code> is a
+ * <code>W3CEndpointReference</code> it MUST contain
+ * the <code>wsaw:ServiceName</code> element and the
+ * <code>wsaw:EndpointName</code> attribute on the
+ * <code>wsaw:ServiceName</code>. It SHOULD contain
+ * the embedded WSDL in the <code>wsa:Metadata</code> element
+ * if there is an associated WSDL. The
+ * <code>wsaw:InterfaceName</code> MAY also be present.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
+ * WS-Addressing - WSDL 1.0</a>.
+ *
+ * @param referenceParameters Reference parameters to be associated with the
+ * returned <code>EndpointReference</code> instance.
+ * @return EndpointReference of this <code>Endpoint</code> instance.
+ * If the returned <code>EndpointReference</code> is of type
+ * <code>W3CEndpointReference</code> then it MUST contain the
+ * the specified <code>referenceParameters</code>.
+
+ * @throws WebServiceException If any error in the creation of
+ * the <code>EndpointReference</code> or if the <code>Endpoint</code> is
+ * not in the published state.
+ * @throws UnsupportedOperationException If this <code>BindingProvider</code>
+ * uses the XML/HTTP binding.
+ *
+ * @see javax.xml.ws.wsaddressing.W3CEndpointReference
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract EndpointReference getEndpointReference(Element... referenceParameters);
+
+ /**
+ * Returns the <code>EndpointReference</code> associated with
+ * this <code>Endpoint</code> instance.
+ * <p>
+ * If the returned <code>EndpointReference</code> is a
+ * <code>W3CEndpointReference</code> it MUST contain
+ * the <code>wsaw:ServiceName</code> element and the
+ * <code>wsaw:EndpointName</code> attribute on the
+ * <code>wsaw:ServiceName</code>. It SHOULD contain
+ * the embedded WSDL in the <code>wsa:Metadata</code> element
+ * if there is an associated WSDL. The
+ * <code>wsaw:InterfaceName</code> MAY also be present.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
+ * WS-Addressing - WSDL 1.0</a>.
+ *
+ * @param referenceParameters Reference parameters to be associated with the
+ * returned <code>EndpointReference</code> instance.
+ * @return EndpointReference of type <code>clazz</code> of this
+ * <code>Endpoint<code> instance.
+ * If the returned <code>EndpointReference</code> is of type
+ * <code>W3CEndpointReference</code> then it MUST contain the
+ * the specified <code>referenceParameters</code>.
+
+ * @throws WebServiceException If any error in the creation of
+ * the <code>EndpointReference</code> or if the <code>Endpoint</code> is
+ * not in the published state or if the <code>clazz</code> is not a supported
+ * <code>EndpointReference</code> type.
+ * @throws UnsupportedOperationException If this <code>BindingProvider</code>
+ * uses the XML/HTTP binding.
+ *
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T extends EndpointReference> T getEndpointReference(Class<T> clazz, Element... referenceParameters);
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/Endpoint21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/RespectBinding.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/RespectBinding.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/RespectBinding.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -57,7 +57,7 @@
* <li>{@link Service#getPort(EndpointReference,Class,WebServiceFeature...)}
* <li>{@link Service#createDispatch(QName,Class,
* Service.Mode mode,WebServiceFeature...)}
- * <li>{@link Service#createDispatch(EndpointReference,
+ * <li>{@link Service21#createDispatch(EndpointReference,
* Class,Service.Mode,
* WebServiceFeature...)}
* <li>{@link Service#createDispatch(QName,
Modified: stack/native/trunk/src/main/java/javax/xml/ws/RespectBindingFeature.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/RespectBindingFeature.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/RespectBindingFeature.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -52,7 +52,7 @@
* <li>{@link Service#getPort(EndpointReference,Class,WebServiceFeature...)}
* <li>{@link Service#createDispatch(QName,Class,
* Service.Mode mode,WebServiceFeature...)}
- * <li>{@link Service#createDispatch(EndpointReference,
+ * <li>{@link Service21#createDispatch(EndpointReference,
* Class,Service.Mode,
* WebServiceFeature...)}
* <li>{@link Service#createDispatch(QName,
Modified: stack/native/trunk/src/main/java/javax/xml/ws/Service.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Service.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Service.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -23,16 +23,13 @@
// $Id$
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.net.URL;
-import java.util.Iterator;
-
import javax.xml.bind.JAXBContext;
import javax.xml.namespace.QName;
import javax.xml.ws.handler.HandlerResolver;
import javax.xml.ws.spi.Provider;
import javax.xml.ws.spi.ServiceDelegate;
+import java.net.URL;
+import java.util.Iterator;
/**
* <code>Service</code> objects provide the client view of a Web service.
@@ -117,47 +114,6 @@
}
/**
- * The getPort method returns a proxy. A service client
- * uses this proxy to invoke operations on the target
- * service endpoint. The <code>serviceEndpointInterface</code>
- * specifies the service endpoint interface that is supported by
- * the created dynamic proxy instance.
- *
- * @param portName Qualified name of the service endpoint in
- * the WSDL service description.
- * @param serviceEndpointInterface Service endpoint interface
- * supported by the dynamic proxy instance.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object Proxy instance that
- * supports the specified service endpoint
- * interface.
- * @throws WebServiceException This exception is thrown in the
- * following cases:
- * <UL>
- * <LI>If there is an error in creation of
- * the proxy.
- * <LI>If there is any missing WSDL metadata
- * as required by this method.
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * or <code>portName</code> is specified.
- * <LI>If a feature is enabled that is not compatible
- * with this port or is unsupported.
- * </UL>
- * @see java.lang.reflect.Proxy
- * @see java.lang.reflect.InvocationHandler
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public <T> T getPort(QName portName, Class<T> serviceEndpointInterface, WebServiceFeature... features)
- {
- return delegate.getPort(portName, serviceEndpointInterface, features);
- }
-
- /**
* The getPort method returns a proxy. The parameter
* <code>serviceEndpointInterface</code> specifies the service
* endpoint interface that is supported by the returned proxy.
@@ -185,129 +141,7 @@
return delegate.getPort(serviceEndpointInterface);
}
- /**
- * The getPort method returns a proxy. The parameter
- * <code>serviceEndpointInterface</code> specifies the service
- * endpoint interface that is supported by the returned proxy.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the proxy accordingly.
- * The returned proxy should not be reconfigured by the client.
- *
- * @param serviceEndpointInterface Service endpoint interface.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object instance that supports the
- * specified service endpoint interface.
- * @throws WebServiceException
- * <UL>
- * <LI>If there is an error during creation
- * of the proxy.
- * <LI>If there is any missing WSDL metadata
- * as required by this method.
- * <LI>If an illegal
- * <code>serviceEndpointInterface</code>
- * is specified.
- * <LI>If a feature is enabled that is not compatible
- * with this port or is unsupported.
- * </UL>
- *
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public <T> T getPort(Class<T> serviceEndpointInterface, WebServiceFeature... features)
- {
- return delegate.getPort(serviceEndpointInterface, features);
- }
-
/**
- * The getPort method returns a proxy.
- * The parameter <code>endpointReference</code> specifies the
- * endpoint that will be invoked by the returned proxy. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The <code>endpointReference's</code> address MUST be used
- * for invocations on the endpoint.
- * The parameter <code>serviceEndpointInterface</code> specifies
- * the service endpoint interface that is supported by the
- * returned proxy.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the proxy accordingly from
- * the WSDL associated with this <code>Service</code> instance or
- * from the WSDL Metadata from the <code>endpointReference</code>.
- * If this <code>Service</code> instance has a WSDL and
- * the <code>endpointReference</code>
- * also has a WSDL, then the WSDL from this instance will be used.
- * If this <code>Service</code> instance does not have a WSDL and
- * the <code>endpointReference</code> does have a WSDL, then the
- * WSDL from the <code>endpointReference</code> will be used.
- * The returned proxy should not be reconfigured by the client.
- * If this <code>Service</code> instance has a known proxy
- * port that matches the information contained in
- * the WSDL,
- * then that proxy is returned, otherwise a WebServiceException
- * is thrown.
- * <p>
- * Calling this method has the same behavior as the following
- * <pre>
- * port = service.getPort(portName, serviceEndpointInterface);
- * </pre>
- * where the <code>portName</code> is retrieved from the
- * <code>wsaw:EndpontName</code> attribute of the
- * <code>wsaw:ServiceName</code> element in the
- * metadata of the <code>endpointReference</code> or from the
- * <code>serviceEndpointInterface</code> and the WSDL
- * associated with this <code>Service</code> instance.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
- * </a>.
- *
- * @param endpointReference The <code>EndpointReference</code>
- * for the target service endpoint that will be invoked by the
- * returned proxy.
- * @param serviceEndpointInterface Service endpoint interface.
- * @param features An array of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- * @return Object Proxy instance that supports the
- * specified service endpoint interface.
- * @throws WebServiceException
- * <UL>
- * <LI>If there is an error during creation
- * of the proxy.
- * <LI>If there is any missing WSDL metadata
- * as required by this method.
- * <LI>If the <code>wsaw:EndpointName</code> is
- * missing from the <code>endpointReference</code>
- * or does not match a wsdl:Port
- * in the WSDL metadata.
- * <LI>If the <code>wsaw:ServiceName</code> in the
- * <code>endpointReference</code> metadata does not
- * match the <code>serviceName</code> of this
- * <code>Service</code> instance.
- * <LI>If an invalid
- * <code>endpointReference</code>
- * is specified.
- * <LI>If an invalid
- * <code>serviceEndpointInterface</code>
- * is specified.
- * <LI>If a feature is enabled that is not compatible
- * with this port or is unsupported.
- * </UL>
- *
- * @since JAX-WS 2.1
- **/
- public <T> T getPort(EndpointReference endpointReference, Class<T> serviceEndpointInterface, WebServiceFeature... features)
- {
- return delegate.getPort(endpointReference, serviceEndpointInterface, features);
- }
-
- /**
* Creates a new port for the service. Ports created in this way contain
* no WSDL port type information and can only be used for creating
* <code>Dispatch</code>instances.
@@ -357,120 +191,6 @@
}
/**
- * Creates a <code>Dispatch</code> instance for use with objects of
- * the users choosing.
- *
- * @param portName Qualified name for the target service endpoint
- * @param type The class of object used for messages or message
- * payloads. Implementations are required to support
- * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
- * when type is SOAPMessage.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance.
- * @throws WebServiceException If any error in the creation of
- * the <code>Dispatch</code> object or if a
- * feature is enabled that is not compatible with
- * this port or is unsupported.
- *
- * @see javax.xml.transform.Source
- * @see javax.xml.soap.SOAPMessage
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public <T> Dispatch<T> createDispatch(QName portName, Class<T> type, Service.Mode mode, WebServiceFeature... features)
- {
- return delegate.createDispatch(portName, type, mode, features);
- }
-
- /**
- * Creates a <code>Dispatch</code> instance for use with objects of
- * the users choosing. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The <code>endpointReference's</code> address MUST be used
- * for invocations on the endpoint.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the dispatch accordingly from
- * the WSDL associated with this <code>Service</code> instance or
- * from the WSDL Metadata from the <code>endpointReference</code>.
- * If this <code>Service</code> instance has a WSDL and
- * the <code>endpointReference</code>
- * also has a WSDL, then the WSDL from this instance will be used.
- * If this <code>Service</code> instance does not have a WSDL and
- * the <code>endpointReference</code> does have a WSDL, then the
- * WSDL from the <code>endpointReference</code> will be used.
- * <p>
- * This method behaves the same as calling
- * <pre>
- * dispatch = service.createDispatch(portName, type, mode, features);
- * </pre>
- * where the <code>portName</code> is retrieved from the
- * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
- * element in the
- * metadata of the <code>endpointReference</code>.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
- * </a>.
- *
- * @param endpointReference The <code>EndpointReference</code>
- * for the target service endpoint that will be invoked by the
- * returned <code>Dispatch</code> object.
- * @param type The class of object used to messages or message
- * payloads. Implementations are required to support
- * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
- * when type is SOAPMessage.
- * @param features An array of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance
- * @throws WebServiceException
- * <UL>
- * <LI>If there is any missing WSDL metadata
- * as required by this method.
- * <li>If the <code>wsaw:ServiceName</code> element
- * or the <code>wsaw:EndpointName</code> attribute
- * is missing in the metdata of the
- * <code>endpointReference</code>.
- * <li>If the <code>wsaw:ServiceName</code> does not
- * match the <code>serviceName</code> of this instance.
- * <li>If the <code>wsaw:EndpointName</code> does not
- * match a valid wsdl:Port in the WSDL metadata.
- * <li>If any error in the creation of
- * the <code>Dispatch</code> object.
- * <li>if a feature is enabled that is not
- * compatible with this port or is unsupported.
- * </UL>
- *
- * @see javax.xml.transform.Source
- * @see javax.xml.soap.SOAPMessage
- * @see WebServiceFeature;
- *
- * @since JAX-WS 2.1
- **/
- public <T> Dispatch<T> createDispatch(EndpointReference endpointReference, Class<T> type, Service.Mode mode, WebServiceFeature... features)
- {
- return delegate.createDispatch(endpointReference, type, mode, features);
- }
-
- /**
* Creates a <code>Dispatch</code> instance for use with JAXB
* generated objects.
*
@@ -495,115 +215,6 @@
}
/**
- * Creates a <code>Dispatch</code> instance for use with JAXB
- * generated objects.
- *
- * @param portName Qualified name for the target service endpoint
- * @param context The JAXB context used to marshall and unmarshall
- * messages or message payloads.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body.
- * @param features A list of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance.
- * @throws WebServiceException If any error in the creation of
- * the <code>Dispatch</code> object or if a
- * feature is enabled that is not compatible with
- * this port or is unsupported.
- *
- * @see javax.xml.bind.JAXBContext
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
- {
- return delegate.createDispatch(portName, context, mode, features);
- }
-
- /**
- * Creates a <code>Dispatch</code> instance for use with JAXB
- * generated objects. If there
- * are any reference parameters in the
- * <code>endpointReference</code>, then those reference
- * parameters MUST appear as SOAP headers, indicating them to be
- * reference parameters, on all messages sent to the endpoint.
- * The <code>endpointReference's</code> address MUST be used
- * for invocations on the endpoint.
- * In the implementation of this method, the JAX-WS
- * runtime system takes the responsibility of selecting a protocol
- * binding (and a port) and configuring the dispatch accordingly from
- * the WSDL associated with this <code>Service</code> instance or
- * from the WSDL Metadata from the <code>endpointReference</code>.
- * If this <code>Service</code> instance has a WSDL and
- * the <code>endpointReference</code>
- * also has a WSDL, then the WSDL from this instance will be used.
- * If this <code>Service</code> instance does not have a WSDL and
- * the <code>endpointReference</code> does have a WSDL, then the
- * WSDL from the <code>endpointReference</code> will be used.
- * <p>
- * This method behavies the same as calling
- * <pre>
- * dispatch = service.createDispatch(portName, context, mode, features);
- * </pre>
- * where the <code>portName</code> is retrieved from the
- * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
- * element in the
- * metadata of the <code>endpointReference</code>.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
- * </a>.
- *
- * @param endpointReference The <code>EndpointReference</code>
- * for the target service endpoint that will be invoked by the
- * returned <code>Dispatch</code> object.
- * @param context The JAXB context used to marshall and unmarshall
- * messages or message payloads.
- * @param mode Controls whether the created dispatch instance is message
- * or payload oriented, i.e. whether the user will work with complete
- * protocol messages or message payloads. E.g. when using the SOAP
- * protocol, this parameter controls whether the user will work with
- * SOAP messages or the contents of a SOAP body.
- * @param features An array of WebServiceFeatures to configure on the
- * proxy. Supported features not in the <code>features
- * </code> parameter will have their default values.
- *
- * @return Dispatch instance
- * @throws WebServiceException
- * @throws WebServiceException
- * <UL>
- * <li>If there is any missing WSDL metadata
- * as required by this method.
- * <li>If the <code>wsaw:ServiceName</code> element
- * or the <code>wsaw:EndpointName</code> attribute
- * is missing in the metdata of the
- * <code>endpointReference</code>.
- * <li>If the <code>wsaw:ServiceName</code> does not
- * match the <code>serviceName</code> of this instance.
- * <li>If the <code>wsaw:EndpointName</code> does not
- * match a valid wsdl:Port in the WSDL metadata.
- * <li>If any error in the creation of
- * the <code>Dispatch</code> object.
- * <li>if a feature is enabled that is not
- * compatible with this port or is unsupported.
- * </UL>
- *
- * @see javax.xml.bind.JAXBContext
- * @see WebServiceFeature
- *
- * @since JAX-WS 2.1
- **/
- public Dispatch<Object> createDispatch(EndpointReference endpointReference, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
- {
- return delegate.createDispatch(endpointReference, context, mode, features);
- }
-
- /**
* Gets the name of this service.
* @return Qualified name of this service
**/
Added: stack/native/trunk/src/main/java/javax/xml/ws/Service21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/Service21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/Service21.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -0,0 +1,426 @@
+/*
+ * 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 javax.xml.ws;
+
+import javax.xml.namespace.QName;
+import javax.xml.bind.JAXBContext;
+import java.net.URL;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public abstract class Service21 extends Service
+{
+
+ protected Service21(URL wsdlDocumentLocation, QName serviceName)
+ {
+ super(wsdlDocumentLocation, serviceName);
+ }
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with objects of
+ * the users choosing. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The <code>endpointReference's</code> address MUST be used
+ * for invocations on the endpoint.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the dispatch accordingly from
+ * the WSDL associated with this <code>Service</code> instance or
+ * from the WSDL Metadata from the <code>endpointReference</code>.
+ * If this <code>Service</code> instance has a WSDL and
+ * the <code>endpointReference</code>
+ * also has a WSDL, then the WSDL from this instance will be used.
+ * If this <code>Service</code> instance does not have a WSDL and
+ * the <code>endpointReference</code> does have a WSDL, then the
+ * WSDL from the <code>endpointReference</code> will be used.
+ * <p>
+ * This method behaves the same as calling
+ * <pre>
+ * dispatch = service.createDispatch(portName, type, mode, features);
+ * </pre>
+ * where the <code>portName</code> is retrieved from the
+ * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
+ * element in the
+ * metadata of the <code>endpointReference</code>.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
+ * </a>.
+ *
+ * @param endpointReference The <code>EndpointReference</code>
+ * for the target service endpoint that will be invoked by the
+ * returned <code>Dispatch</code> object.
+ * @param type The class of object used to messages or message
+ * payloads. Implementations are required to support
+ * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
+ * when type is SOAPMessage.
+ * @param features An array of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance
+ * @throws WebServiceException
+ * <UL>
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method.
+ * <li>If the <code>wsaw:ServiceName</code> element
+ * or the <code>wsaw:EndpointName</code> attribute
+ * is missing in the metdata of the
+ * <code>endpointReference</code>.
+ * <li>If the <code>wsaw:ServiceName</code> does not
+ * match the <code>serviceName</code> of this instance.
+ * <li>If the <code>wsaw:EndpointName</code> does not
+ * match a valid wsdl:Port in the WSDL metadata.
+ * <li>If any error in the creation of
+ * the <code>Dispatch</code> object.
+ * <li>if a feature is enabled that is not
+ * compatible with this port or is unsupported.
+ * </UL>
+ *
+ * @see javax.xml.transform.Source
+ * @see javax.xml.soap.SOAPMessage
+ * @see WebServiceFeature;
+ *
+ * @since JAX-WS 2.1
+ **/
+ public <T> Dispatch<T> createDispatch(EndpointReference endpointReference, Class<T> type, Service.Mode mode, WebServiceFeature... features)
+ {
+ return delegate.createDispatch(endpointReference, type, mode, features);
+ }
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with JAXB
+ * generated objects. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The <code>endpointReference's</code> address MUST be used
+ * for invocations on the endpoint.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the dispatch accordingly from
+ * the WSDL associated with this <code>Service</code> instance or
+ * from the WSDL Metadata from the <code>endpointReference</code>.
+ * If this <code>Service</code> instance has a WSDL and
+ * the <code>endpointReference</code>
+ * also has a WSDL, then the WSDL from this instance will be used.
+ * If this <code>Service</code> instance does not have a WSDL and
+ * the <code>endpointReference</code> does have a WSDL, then the
+ * WSDL from the <code>endpointReference</code> will be used.
+ * <p>
+ * This method behavies the same as calling
+ * <pre>
+ * dispatch = service.createDispatch(portName, context, mode, features);
+ * </pre>
+ * where the <code>portName</code> is retrieved from the
+ * <code>wsaw:EndpointName</code> attribute of the <code>wsaw:ServiceName</code>
+ * element in the
+ * metadata of the <code>endpointReference</code>.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
+ * </a>.
+ *
+ * @param endpointReference The <code>EndpointReference</code>
+ * for the target service endpoint that will be invoked by the
+ * returned <code>Dispatch</code> object.
+ * @param context The JAXB context used to marshall and unmarshall
+ * messages or message payloads.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body.
+ * @param features An array of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance
+ * @throws WebServiceException
+ * @throws WebServiceException
+ * <UL>
+ * <li>If there is any missing WSDL metadata
+ * as required by this method.
+ * <li>If the <code>wsaw:ServiceName</code> element
+ * or the <code>wsaw:EndpointName</code> attribute
+ * is missing in the metdata of the
+ * <code>endpointReference</code>.
+ * <li>If the <code>wsaw:ServiceName</code> does not
+ * match the <code>serviceName</code> of this instance.
+ * <li>If the <code>wsaw:EndpointName</code> does not
+ * match a valid wsdl:Port in the WSDL metadata.
+ * <li>If any error in the creation of
+ * the <code>Dispatch</code> object.
+ * <li>if a feature is enabled that is not
+ * compatible with this port or is unsupported.
+ * </UL>
+ *
+ * @see javax.xml.bind.JAXBContext
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public Dispatch<Object> createDispatch(EndpointReference endpointReference, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
+ {
+ return delegate.createDispatch(endpointReference, context, mode, features);
+ }
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with objects of
+ * the users choosing.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param type The class of object used for messages or message
+ * payloads. Implementations are required to support
+ * javax.xml.transform.Source and javax.xml.soap.SOAPMessage.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
+ * when type is SOAPMessage.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance.
+ * @throws WebServiceException If any error in the creation of
+ * the <code>Dispatch</code> object or if a
+ * feature is enabled that is not compatible with
+ * this port or is unsupported.
+ *
+ * @see javax.xml.transform.Source
+ * @see javax.xml.soap.SOAPMessage
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public <T> Dispatch<T> createDispatch(QName portName, Class<T> type, Service.Mode mode, WebServiceFeature... features)
+ {
+ return delegate.createDispatch(portName, type, mode, features);
+ }
+
+ /**
+ * Creates a <code>Dispatch</code> instance for use with JAXB
+ * generated objects.
+ *
+ * @param portName Qualified name for the target service endpoint
+ * @param context The JAXB context used to marshall and unmarshall
+ * messages or message payloads.
+ * @param mode Controls whether the created dispatch instance is message
+ * or payload oriented, i.e. whether the user will work with complete
+ * protocol messages or message payloads. E.g. when using the SOAP
+ * protocol, this parameter controls whether the user will work with
+ * SOAP messages or the contents of a SOAP body.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ *
+ * @return Dispatch instance.
+ * @throws WebServiceException If any error in the creation of
+ * the <code>Dispatch</code> object or if a
+ * feature is enabled that is not compatible with
+ * this port or is unsupported.
+ *
+ * @see javax.xml.bind.JAXBContext
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
+ {
+ return delegate.createDispatch(portName, context, mode, features);
+ }
+
+
+ /**
+ * The getPort method returns a proxy. The parameter
+ * <code>serviceEndpointInterface</code> specifies the service
+ * endpoint interface that is supported by the returned proxy.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the proxy accordingly.
+ * The returned proxy should not be reconfigured by the client.
+ *
+ * @param serviceEndpointInterface Service endpoint interface.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object instance that supports the
+ * specified service endpoint interface.
+ * @throws WebServiceException
+ * <UL>
+ * <LI>If there is an error during creation
+ * of the proxy.
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method.
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * is specified.
+ * <LI>If a feature is enabled that is not compatible
+ * with this port or is unsupported.
+ * </UL>
+ *
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public <T> T getPort(Class<T> serviceEndpointInterface, WebServiceFeature... features)
+ {
+ return delegate.getPort(serviceEndpointInterface, features);
+ }
+
+ /**
+ * The getPort method returns a proxy.
+ * The parameter <code>endpointReference</code> specifies the
+ * endpoint that will be invoked by the returned proxy. If there
+ * are any reference parameters in the
+ * <code>endpointReference</code>, then those reference
+ * parameters MUST appear as SOAP headers, indicating them to be
+ * reference parameters, on all messages sent to the endpoint.
+ * The <code>endpointReference's</code> address MUST be used
+ * for invocations on the endpoint.
+ * The parameter <code>serviceEndpointInterface</code> specifies
+ * the service endpoint interface that is supported by the
+ * returned proxy.
+ * In the implementation of this method, the JAX-WS
+ * runtime system takes the responsibility of selecting a protocol
+ * binding (and a port) and configuring the proxy accordingly from
+ * the WSDL associated with this <code>Service</code> instance or
+ * from the WSDL Metadata from the <code>endpointReference</code>.
+ * If this <code>Service</code> instance has a WSDL and
+ * the <code>endpointReference</code>
+ * also has a WSDL, then the WSDL from this instance will be used.
+ * If this <code>Service</code> instance does not have a WSDL and
+ * the <code>endpointReference</code> does have a WSDL, then the
+ * WSDL from the <code>endpointReference</code> will be used.
+ * The returned proxy should not be reconfigured by the client.
+ * If this <code>Service</code> instance has a known proxy
+ * port that matches the information contained in
+ * the WSDL,
+ * then that proxy is returned, otherwise a WebServiceException
+ * is thrown.
+ * <p>
+ * Calling this method has the same behavior as the following
+ * <pre>
+ * port = service.getPort(portName, serviceEndpointInterface);
+ * </pre>
+ * where the <code>portName</code> is retrieved from the
+ * <code>wsaw:EndpontName</code> attribute of the
+ * <code>wsaw:ServiceName</code> element in the
+ * metadata of the <code>endpointReference</code> or from the
+ * <code>serviceEndpointInterface</code> and the WSDL
+ * associated with this <code>Service</code> instance.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">WS-Addressing - WSDL 1.0
+ * </a>.
+ *
+ * @param endpointReference The <code>EndpointReference</code>
+ * for the target service endpoint that will be invoked by the
+ * returned proxy.
+ * @param serviceEndpointInterface Service endpoint interface.
+ * @param features An array of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object Proxy instance that supports the
+ * specified service endpoint interface.
+ * @throws WebServiceException
+ * <UL>
+ * <LI>If there is an error during creation
+ * of the proxy.
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method.
+ * <LI>If the <code>wsaw:EndpointName</code> is
+ * missing from the <code>endpointReference</code>
+ * or does not match a wsdl:Port
+ * in the WSDL metadata.
+ * <LI>If the <code>wsaw:ServiceName</code> in the
+ * <code>endpointReference</code> metadata does not
+ * match the <code>serviceName</code> of this
+ * <code>Service</code> instance.
+ * <LI>If an invalid
+ * <code>endpointReference</code>
+ * is specified.
+ * <LI>If an invalid
+ * <code>serviceEndpointInterface</code>
+ * is specified.
+ * <LI>If a feature is enabled that is not compatible
+ * with this port or is unsupported.
+ * </UL>
+ *
+ * @since JAX-WS 2.1
+ **/
+ public <T> T getPort(EndpointReference endpointReference, Class<T> serviceEndpointInterface, WebServiceFeature... features)
+ {
+ return delegate.getPort(endpointReference, serviceEndpointInterface, features);
+ }
+
+ /**
+ * The getPort method returns a proxy. A service client
+ * uses this proxy to invoke operations on the target
+ * service endpoint. The <code>serviceEndpointInterface</code>
+ * specifies the service endpoint interface that is supported by
+ * the created dynamic proxy instance.
+ *
+ * @param portName Qualified name of the service endpoint in
+ * the WSDL service description.
+ * @param serviceEndpointInterface Service endpoint interface
+ * supported by the dynamic proxy instance.
+ * @param features A list of WebServiceFeatures to configure on the
+ * proxy. Supported features not in the <code>features
+ * </code> parameter will have their default values.
+ * @return Object Proxy instance that
+ * supports the specified service endpoint
+ * interface.
+ * @throws WebServiceException This exception is thrown in the
+ * following cases:
+ * <UL>
+ * <LI>If there is an error in creation of
+ * the proxy.
+ * <LI>If there is any missing WSDL metadata
+ * as required by this method.
+ * <LI>If an illegal
+ * <code>serviceEndpointInterface</code>
+ * or <code>portName</code> is specified.
+ * <LI>If a feature is enabled that is not compatible
+ * with this port or is unsupported.
+ * </UL>
+ * @see java.lang.reflect.Proxy
+ * @see java.lang.reflect.InvocationHandler
+ * @see WebServiceFeature
+ *
+ * @since JAX-WS 2.1
+ **/
+ public <T> T getPort(QName portName, Class<T> serviceEndpointInterface, WebServiceFeature... features)
+ {
+ return delegate.getPort(portName, serviceEndpointInterface, features);
+ }
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/Service21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -23,13 +23,9 @@
// $Id$
+import javax.xml.ws.handler.MessageContext;
import java.security.Principal;
-import javax.xml.ws.handler.MessageContext;
-import javax.xml.ws.wsaddressing.W3CEndpointReference;
-
-import org.w3c.dom.Element;
-
/**
* A <code>WebServiceContext</code> makes it possible for
* a web service endpoint implementation class to access
@@ -98,76 +94,4 @@
**/
public boolean isUserInRole(String role);
- /**
- * Returns the <code>WEndpointReference</code> for this
- * endpoint.
- * <p>
- * If the Binding for this <code>bindingProvider</code> is
- * either SOAP1.1/HTTP or SOAP1.2/HTTP, then a
- * <code>W3CEndpointReference</code> MUST be returned.
- * If the returned <code>EndpointReference</code> is a
- * <code>W3CEndpointReference</code> it MUST contain
- * the <code>wsaw:ServiceName</code> element and the
- * <code>wsaw:EndpointName</code> attribute on the
- * <code>wsaw:ServiceName</code>. It SHOULD contain
- * the embedded WSDL in the <code>wsa:Metadata</code> element
- * if there is an associated WSDL. The
- * <code>wsaw:InterfaceName</code> MAY also be present.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
- * WS-Addressing - WSDL 1.0</a>.
- *
- * @param referenceParameters Reference parameters to be associated with the
- * returned <code>EndpointReference</code> instance.
- * @return EndpointReference of the endpoint associated with this
- * <code>WebServiceContext</code>.
- * If the returned <code>EndpointReference</code> is of type
- * <code>W3CEndpointReference</code> then it MUST contain the
- * the specified <code>referenceParameters</code>.
- *
- * @throws IllegalStateException This exception is thrown
- * if the method is called while no request is
- * being serviced.
- *
- * @see W3CEndpointReference
- *
- * @since JAX-WS 2.1
- */
- public EndpointReference getEndpointReference(Element... referenceParameters);
-
- /**
- * Returns the <code>EndpointReference</code> associated with
- * this endpoint.
- * <p>
- * If the returned <code>EndpointReference</code> is a
- * <code>W3CEndpointReference</code> it MUST contain
- * the <code>wsaw:ServiceName</code> element and the
- * <code>wsaw:EndpointName</code> attribute on the
- * <code>wsaw:ServiceName</code>. It SHOULD contain
- * the embedded WSDL in the <code>wsa:Metadata</code> element
- * if there is an associated WSDL. The
- * <code>wsaw:InterfaceName</code> MAY also be present.
- * <br>
- * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
- * WS-Addressing - WSDL 1.0</a>.
- *
- * @param clazz The type of <code>EndpointReference</code> that
- * MUST be returned.
- * @param referenceParameters Reference parameters to be associated with the
- * returned <code>EndpointReference</code> instance.
- * @return EndpointReference of type <code>clazz</code> of the endpoint
- * associated with this <code>WebServiceContext</code> instance.
- * If the returned <code>EndpointReference</code> is of type
- * <code>W3CEndpointReference</code> then it MUST contain the
- * the specified <code>referenceParameters</code>.
- *
- * @throws IllegalStateException This exception is thrown
- * if the method is called while no request is
- * being serviced.
- * @throws WebServiceException If the <code>clazz</code> type of
- * <code>EndpointReference</code> is not supported.
- *
- * @since JAX-WS 2.1
- **/
- public abstract <T extends EndpointReference> T getEndpointReference(Class<T> clazz, Element... referenceParameters);
}
Added: stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext21.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -0,0 +1,104 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.ws;
+
+import org.w3c.dom.Element;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public interface WebServiceContext21 extends WebServiceContext
+{
+ /**
+ * Returns the <code>WEndpointReference</code> for this
+ * endpoint.
+ * <p>
+ * If the Binding for this <code>bindingProvider</code> is
+ * either SOAP1.1/HTTP or SOAP1.2/HTTP, then a
+ * <code>W3CEndpointReference</code> MUST be returned.
+ * If the returned <code>EndpointReference</code> is a
+ * <code>W3CEndpointReference</code> it MUST contain
+ * the <code>wsaw:ServiceName</code> element and the
+ * <code>wsaw:EndpointName</code> attribute on the
+ * <code>wsaw:ServiceName</code>. It SHOULD contain
+ * the embedded WSDL in the <code>wsa:Metadata</code> element
+ * if there is an associated WSDL. The
+ * <code>wsaw:InterfaceName</code> MAY also be present.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
+ * WS-Addressing - WSDL 1.0</a>.
+ *
+ * @param referenceParameters Reference parameters to be associated with the
+ * returned <code>EndpointReference</code> instance.
+ * @return EndpointReference of the endpoint associated with this
+ * <code>WebServiceContext</code>.
+ * If the returned <code>EndpointReference</code> is of type
+ * <code>W3CEndpointReference</code> then it MUST contain the
+ * the specified <code>referenceParameters</code>.
+ *
+ * @throws IllegalStateException This exception is thrown
+ * if the method is called while no request is
+ * being serviced.
+ *
+ * @see javax.xml.ws.wsaddressing.W3CEndpointReference
+ *
+ * @since JAX-WS 2.1
+ */
+ public EndpointReference getEndpointReference(Element... referenceParameters);
+
+ /**
+ * Returns the <code>EndpointReference</code> associated with
+ * this endpoint.
+ * <p>
+ * If the returned <code>EndpointReference</code> is a
+ * <code>W3CEndpointReference</code> it MUST contain
+ * the <code>wsaw:ServiceName</code> element and the
+ * <code>wsaw:EndpointName</code> attribute on the
+ * <code>wsaw:ServiceName</code>. It SHOULD contain
+ * the embedded WSDL in the <code>wsa:Metadata</code> element
+ * if there is an associated WSDL. The
+ * <code>wsaw:InterfaceName</code> MAY also be present.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
+ * WS-Addressing - WSDL 1.0</a>.
+ *
+ * @param clazz The type of <code>EndpointReference</code> that
+ * MUST be returned.
+ * @param referenceParameters Reference parameters to be associated with the
+ * returned <code>EndpointReference</code> instance.
+ * @return EndpointReference of type <code>clazz</code> of the endpoint
+ * associated with this <code>WebServiceContext</code> instance.
+ * If the returned <code>EndpointReference</code> is of type
+ * <code>W3CEndpointReference</code> then it MUST contain the
+ * the specified <code>referenceParameters</code>.
+ *
+ * @throws IllegalStateException This exception is thrown
+ * if the method is called while no request is
+ * being serviced.
+ * @throws WebServiceException If the <code>clazz</code> type of
+ * <code>EndpointReference</code> is not supported.
+ *
+ * @since JAX-WS 2.1
+ **/
+ public abstract <T extends EndpointReference> T getEndpointReference(Class<T> clazz, Element... referenceParameters);
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/WebServiceContext21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/http/HTTPBinding.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -24,13 +24,15 @@
// $Id$
import javax.xml.ws.Binding;
+import javax.xml.ws.Binding21;
/** The <code>HTTPBinding</code> interface is an
* abstraction for the XML/HTTP binding.
*
* @since JAX-WS 2.0
**/
-public interface HTTPBinding extends Binding {
+public interface HTTPBinding extends Binding21
+{
/**
* A constant representing the identity of the XML/HTTP binding.
Modified: stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/javax/xml/ws/soap/SOAPBinding.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -29,13 +29,14 @@
import javax.xml.soap.SOAPFactory;
import javax.xml.ws.Binding;
import javax.xml.ws.WebServiceException;
+import javax.xml.ws.Binding21;
/** The <code>SOAPBinding</code> interface is an abstraction for
* the SOAP binding.
*
* @since JAX-WS 2.0
**/
-public interface SOAPBinding extends Binding
+public interface SOAPBinding extends Binding21
{
/**
* A constant representing the identity of the SOAP 1.1 over HTTP binding.
Added: stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/BindingProvider21.java
===================================================================
--- stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/BindingProvider21.java (rev 0)
+++ stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/BindingProvider21.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -0,0 +1,96 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.ws.wsaddressing;
+
+import javax.xml.ws.BindingProvider;
+import javax.xml.ws.EndpointReference;
+
+/**
+ * @author Heiko.Braun(a)jboss.com
+ * @version $Revision$
+ */
+public interface BindingProvider21 extends BindingProvider
+{
+ /**
+ * Returns the <code>EndpointReference</code> associated with
+ * this <code>BindingProvider</code> instance.
+ * <p>
+ * If the Binding for this <code>bindingProvider</code> is
+ * either SOAP1.1/HTTP or SOAP1.2/HTTP, then a
+ * <code>W3CEndpointReference</code> MUST be returned.
+ * If the returned <code>EndpointReference</code> is a
+ * <code>W3CEndpointReference</code> it MUST contain
+ * the <code>wsaw:ServiceName</code> element and the
+ * <code>wsaw:EndpointName</code> attribute on the
+ * <code>wsaw:ServiceName</code>. It SHOULD contain
+ * the embedded WSDL in the <code>wsa:Metadata</code> element
+ * if there is an associated WSDL. The
+ * <code>wsaw:InterfaceName</code> MAY also be present.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
+ * WS-Addressing - WSDL 1.0</a>.
+ *
+ * @return EndpointReference of the target endpoint associated with this
+ * <code>BindingProvider</code> instance.
+ *
+ * @throws java.lang.UnsupportedOperationException If this
+ * <code>BindingProvider</code> uses the XML/HTTP binding.
+ *
+ * @see W3CEndpointReference
+ *
+ * @since JAX-WS 2.1
+ */
+ public EndpointReference getEndpointReference();
+
+ /**
+ * Returns the <code>EndpointReference</code> associated with
+ * this <code>BindingProvider</code> instance. The instance
+ * returned will be of type <code>clazz</code>.
+ * <p>
+ * If the returned <code>EndpointReference</code> is a
+ * <code>W3CEndpointReference</code> it MUST contain
+ * the <code>wsaw:ServiceName</code> element and the
+ * <code>wsaw:EndpointName</code> attribute on the
+ * <code>wsaw:ServiceName</code>. It SHOULD contain
+ * the embedded WSDL in the <code>wsa:Metadata</code> element
+ * if there is an associated WSDL. The
+ * <code>wsaw:InterfaceName</code> MAY also be present.
+ * <br>
+ * See <a href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/">
+ * WS-Addressing - WSDL 1.0</a>.
+ *
+ * @param clazz Specifies the type of <code>EndpointReference</code>
+ * that MUST be returned.
+
+ * @return EndpointReference of the target endpoint associated with this
+ * <code>BindingProvider</code> instance. MUST be of type
+ * <code>clazz</code>.
+
+ * @throws javax.xml.ws.WebServiceException If the Class <code>clazz</code>
+ * is not supported by this implementation.
+ * @throws java.lang.UnsupportedOperationException If this
+ * <code>BindingProvider</code> uses the XML/HTTP binding.
+ *
+ * @since JAX-WS 2.1
+ */
+ public <T extends EndpointReference> T getEndpointReference(Class<T> clazz);
+}
Property changes on: stack/native/trunk/src/main/java/javax/xml/ws/wsaddressing/BindingProvider21.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingExt.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingExt.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingExt.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -24,6 +24,7 @@
import java.util.List;
import javax.xml.ws.Binding;
+import javax.xml.ws.Binding21;
import javax.xml.ws.handler.Handler;
import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerMetaData.HandlerType;
@@ -36,7 +37,7 @@
* @author Thomas.Diesler(a)jboss.com
* @since 04-Jul-2006
*/
-public interface BindingExt extends Binding
+public interface BindingExt extends Binding21
{
List<Handler> getHandlerChain(HandlerType handlerType);
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingProviderImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingProviderImpl.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/binding/BindingProviderImpl.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -30,6 +30,7 @@
import javax.xml.ws.BindingProvider;
import javax.xml.ws.EndpointReference;
import javax.xml.ws.WebServiceException;
+import javax.xml.ws.wsaddressing.BindingProvider21;
import javax.xml.ws.Service.Mode;
import javax.xml.ws.http.HTTPBinding;
@@ -45,7 +46,7 @@
* @author Thomas.Diesler(a)jboss.com
* @since 04-Jul-2006
*/
-public class BindingProviderImpl extends CommonBindingProvider implements BindingProvider
+public class BindingProviderImpl extends CommonBindingProvider implements BindingProvider21
{
private Map<String, Object> requestContext = new HashMap<String, Object>();
private Map<String, Object> responseContext = new HashMap<String, Object>();
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -37,6 +37,7 @@
import javax.xml.ws.BindingProvider;
import javax.xml.ws.EndpointReference;
import javax.xml.ws.WebServiceException;
+import javax.xml.ws.wsaddressing.BindingProvider21;
import javax.xml.ws.handler.Handler;
import javax.xml.ws.handler.HandlerResolver;
import javax.xml.ws.handler.MessageContext;
@@ -73,7 +74,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 04-Jul-2006
*/
-public class ClientImpl extends CommonClient implements BindingProvider, Configurable
+public class ClientImpl extends CommonClient implements BindingProvider21, Configurable
{
// provide logging
private static Logger log = Logger.getLogger(ClientImpl.class);
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/DispatchImpl.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -39,6 +39,7 @@
import javax.xml.ws.EndpointReference;
import javax.xml.ws.Response;
import javax.xml.ws.WebServiceException;
+import javax.xml.ws.Binding21;
import javax.xml.ws.Service.Mode;
import javax.xml.ws.http.HTTPBinding;
import javax.xml.ws.soap.SOAPFaultException;
@@ -121,7 +122,7 @@
// with a quoted empty string value, if in the corresponding WSDL description,
// the soapAction attribute of soapbind:operation is either not present, or
// present with an empty string as its value.
- String bindingID = bindingProvider.getBinding().getBindingID();
+ String bindingID = ((Binding21)bindingProvider.getBinding()).getBindingID();
if (bindingID.indexOf("soap") > 0)
{
String soapAction = null;
@@ -144,7 +145,7 @@
private RemotingConnection getRemotingConnection()
{
- String bindingID = bindingProvider.getBinding().getBindingID();
+ String bindingID = ((Binding21)bindingProvider.getBinding()).getBindingID();
if (EndpointMetaData.SUPPORTED_BINDINGS.contains(bindingID) == false)
throw new IllegalStateException("Unsupported binding: " + bindingID);
@@ -252,7 +253,7 @@
if (obj == null)
throw new SOAPFaultException("Request object cannot be null");
- String bindingID = bindingProvider.getBinding().getBindingID();
+ String bindingID = ((Binding21)bindingProvider.getBinding()).getBindingID();
if (EndpointMetaData.SUPPORTED_BINDINGS.contains(bindingID) == false)
throw new IllegalStateException("Unsupported binding: " + bindingID);
@@ -274,7 +275,7 @@
private Object getReturnObject(MessageAbstraction resMsg)
{
- String bindingID = bindingProvider.getBinding().getBindingID();
+ String bindingID = ((Binding21)bindingProvider.getBinding()).getBindingID();
if (EndpointMetaData.SUPPORTED_BINDINGS.contains(bindingID) == false)
throw new IllegalStateException("Unsupported binding: " + bindingID);
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/EndpointImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/EndpointImpl.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/spi/EndpointImpl.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -23,40 +23,37 @@
// $Id$
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.StringTokenizer;
-import java.util.concurrent.Executor;
-
-import javax.xml.transform.Source;
-import javax.xml.ws.Binding;
-import javax.xml.ws.BindingProvider;
-import javax.xml.ws.Endpoint;
-import javax.xml.ws.EndpointReference;
-import javax.xml.ws.WebServicePermission;
-
import org.jboss.logging.Logger;
import org.jboss.util.NotImplementedException;
import org.jboss.ws.core.jaxws.binding.BindingProviderImpl;
import org.jboss.wsf.spi.SPIProvider;
import org.jboss.wsf.spi.SPIProviderResolver;
import org.jboss.wsf.spi.http.HttpContext;
-import org.jboss.wsf.spi.http.HttpContextFactory;
import org.jboss.wsf.spi.http.HttpServer;
import org.jboss.wsf.spi.http.HttpServerFactory;
-import org.jboss.wsf.spi.management.ServerConfigFactory;
import org.w3c.dom.Element;
+import javax.xml.transform.Source;
+import javax.xml.ws.Binding;
+import javax.xml.ws.BindingProvider;
+import javax.xml.ws.Endpoint21;
+import javax.xml.ws.EndpointReference;
+import javax.xml.ws.WebServicePermission;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.StringTokenizer;
+import java.util.concurrent.Executor;
+
/**
* A Web service endpoint implementation.
*
* @author Thomas.Diesler(a)jboss.com
* @since 07-Jul-2006
*/
-public class EndpointImpl extends Endpoint
+public class EndpointImpl extends Endpoint21
{
// provide logging
private final Logger log = Logger.getLogger(EndpointImpl.class);
@@ -101,7 +98,7 @@
* implementation using some default configuration. In order to get more control over the server configuration,
* please use the javax.xml.ws.Endpoint#publish(Object) method instead.
*
- * @param URI specifying the address to use. The address must be compatible with the binding specified at the time the endpoint was created.
+ * @param address specifying the address to use. The address must be compatible with the binding specified at the time the endpoint was created.
*/
@Override
public void publish(String address)
@@ -139,7 +136,7 @@
* A server context encapsulates the server infrastructure and addressing information for a particular transport.
* For a call to this method to succeed, the server context passed as an argument to it must be compatible with the endpoint's binding.
*
- * @param serverContext An object representing a server context to be used for publishing the endpoint.
+ * @param context An object representing a server context to be used for publishing the endpoint.
*/
@Override
public void publish(Object context)
Modified: stack/native/trunk/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EventingService.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EventingService.java 2007-09-26 10:13:10 UTC (rev 4629)
+++ stack/native/trunk/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EventingService.java 2007-09-26 10:14:18 UTC (rev 4630)
@@ -28,6 +28,7 @@
import javax.xml.ws.Service;
import javax.xml.ws.WebEndpoint;
import javax.xml.ws.WebServiceClient;
+import javax.xml.ws.Service21;
/**
@@ -38,7 +39,7 @@
*/
@WebServiceClient(name = "EventingService", targetNamespace = "http://schemas.xmlsoap.org/ws/2004/08/eventing", wsdlLocation = "wind.wsdl")
public class EventingService
- extends Service
+ extends Service21
{
private final static URL WSDL_LOCATION;
17 years, 3 months
JBossWS SVN: r4629 - stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-26 06:13:10 -0400 (Wed, 26 Sep 2007)
New Revision: 4629
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java
Log:
Fix WSConsumeTask classloading when running non-forked
Modified: stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java 2007-09-26 07:50:15 UTC (rev 4628)
+++ stack/native/trunk/src/main/java/org/jboss/ws/tools/jaxws/impl/SunRIConsumerImpl.java 2007-09-26 10:13:10 UTC (rev 4629)
@@ -176,13 +176,26 @@
// finally the WSDL file
args.add(wsdl.toString());
-
+
+ // See WsimportTool#compileGeneratedClasses()
+ if(!additionalCompilerClassPath.isEmpty())
+ {
+ StringBuffer javaCP = new StringBuffer();
+ for(String s : additionalCompilerClassPath)
+ {
+ javaCP.append(s).append(File.pathSeparator);
+ }
+ System.setProperty("java.class.path", javaCP.toString());
+ }
+
try
{
// enforce woodstox
if (null == System.getProperty("javax.xml.stream.XMLInputFactory"))
System.setProperty("javax.xml.stream.XMLInputFactory", "com.ctc.wstx.stax.WstxInputFactory");
+
+
WsimportTool compileTool = new WsimportTool(stream);
boolean success = compileTool.run(args.toArray(new String[args.size()]));
17 years, 3 months
JBossWS SVN: r4628 - projects/wiki/skins/devmo/css.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-09-26 03:50:15 -0400 (Wed, 26 Sep 2007)
New Revision: 4628
Modified:
projects/wiki/skins/devmo/css/wiki.css
Log:
Increase code snippet font-size
Modified: projects/wiki/skins/devmo/css/wiki.css
===================================================================
--- projects/wiki/skins/devmo/css/wiki.css 2007-09-25 17:01:03 UTC (rev 4627)
+++ projects/wiki/skins/devmo/css/wiki.css 2007-09-26 07:50:15 UTC (rev 4628)
@@ -41,7 +41,7 @@
background: url(images/page-background.gif) repeat-x top left;
margin: 0;
padding: 2em 0 2em;
- font-size: 0.95em;
+ font-size: 0.95em;
}
.article p {
margin: 10px 0 10px 0; padding: 0;
@@ -457,14 +457,18 @@
}
pre {
- background: #EEE;
- font-size: 0.8em;
+ background: #EEE;
+ font-size: 1.0em;
line-height: 1.1em;
border: dashed #666 1px;
padding: 15px 20px 15px 20px;
- overflow: auto;
+ overflow: auto;
}
+/* enscript customizations */
+pre a { text-decoration:none; }
+hr {border:none;}
+
.prewrong {
padding: 0; margin: 0;
}
17 years, 3 months
JBossWS SVN: r4627 - in stack/cxf/trunk: ant-import and 1 other directory.
by jbossws-commits@lists.jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2007-09-25 13:01:03 -0400 (Tue, 25 Sep 2007)
New Revision: 4627
Modified:
stack/cxf/trunk/ant-import/build-thirdparty.xml
stack/cxf/trunk/version.properties
Log:
Update cxf thirdparty versions
Check availability of build artifacts
Modified: stack/cxf/trunk/ant-import/build-thirdparty.xml
===================================================================
--- stack/cxf/trunk/ant-import/build-thirdparty.xml 2007-09-25 12:00:21 UTC (rev 4626)
+++ stack/cxf/trunk/ant-import/build-thirdparty.xml 2007-09-25 17:01:03 UTC (rev 4627)
@@ -141,8 +141,41 @@
<!-- Copy the cxf jars -->
<target name="cxf-copy-jars" depends="cxf-maven-build">
<mkdir dir="${thirdparty.dir}"/>
+
+ <property name="cxf.distribution.lib" value="${apache.cxf.dir}/distribution/target/apache-cxf-${cxf.version}.dir/apache-cxf-${cxf.version}/lib"/>
+
+ <available property="cxf.available" filepath="${cxf.distribution.lib}" file="cxf-${cxf.version}.jar"/>
+ <available property="geronimo-javamail.available" filepath="${cxf.distribution.lib}" file="geronimo-javamail_${cxf.geronimo.javamail}.jar"/>
+ <available property="geronimo-ws-metadata.available" filepath="${cxf.distribution.lib}" file="geronimo-ws-metadata_${cxf.geronimo.ws.metadata}.jar"/>
+ <available property="jaxws-api.available" filepath="${cxf.distribution.lib}" file="jaxws-api-${cxf.jaxws.api}.jar"/>
+ <available property="jdom.available" filepath="${cxf.distribution.lib}" file="jdom-${cxf.jdom}.jar"/>
+ <available property="neethi.available" filepath="${cxf.distribution.lib}" file="neethi-${cxf.neethi}.jar"/>
+ <available property="saaj-api.available" filepath="${cxf.distribution.lib}" file="saaj-api-${cxf.saaj}.jar"/>
+ <available property="saaj-impl.available" filepath="${cxf.distribution.lib}" file="saaj-impl-${cxf.saaj}.jar"/>
+ <available property="spring-beans.available" filepath="${cxf.distribution.lib}" file="spring-beans-${cxf.spring}.jar"/>
+ <available property="spring-context.available" filepath="${cxf.distribution.lib}" file="spring-context-${cxf.spring}.jar"/>
+ <available property="spring-core.available" filepath="${cxf.distribution.lib}" file="spring-core-${cxf.spring}.jar"/>
+ <available property="xbean.available" filepath="${cxf.distribution.lib}" file="xbean-${cxf.xbean}.jar"/>
+ <available property="xml-resolver.available" filepath="${cxf.distribution.lib}" file="xml-resolver-${cxf.xml.resolver}.jar"/>
+ <available property="XmlSchema.available" filepath="${cxf.distribution.lib}" file="XmlSchema-${cxf.xmlschema}.jar"/>
+
+ <fail message="cxf-${cxf.version}.jar not available" unless="cxf.available"/>
+ <fail message="geronimo-javamail_${cxf.geronimo.javamail}.jar not available" unless="geronimo-javamail.available"/>
+ <fail message="geronimo-ws-metadata_${cxf.geronimo.ws.metadata}.jar not available" unless="geronimo-ws-metadata.available"/>
+ <fail message="jaxws-api-${cxf.jaxws.api}.jar not available" unless="jaxws-api.available"/>
+ <fail message="jdom-${cxf.jdom}.jar not available" unless="jdom.available"/>
+ <fail message="neethi-${cxf.neethi}.jar not available" unless="neethi.available"/>
+ <fail message="saaj-api-${cxf.saaj}.jar not available" unless="saaj-api.available"/>
+ <fail message="saaj-impl-${cxf.saaj}.jar not available" unless="saaj-impl.available"/>
+ <fail message="spring-beans-${cxf.spring}.jar not available" unless="spring-beans.available"/>
+ <fail message="spring-context-${cxf.spring}.jar not available" unless="spring-context.available"/>
+ <fail message="spring-core-${cxf.spring}.jar not available" unless="spring-core.available"/>
+ <fail message="xbean-${cxf.xbean}.jar not available" unless="xbean.available"/>
+ <fail message="xml-resolver-${cxf.xml.resolver}.jar not available" unless="xml-resolver.available"/>
+ <fail message="XmlSchema-${cxf.xmlschema}.jar not available" unless="XmlSchema.available"/>
+
<copy todir="${thirdparty.dir}">
- <fileset dir="${apache.cxf.dir}/distribution/target/apache-cxf-${cxf.version}.dir/apache-cxf-${cxf.version}/lib">
+ <fileset dir="${cxf.distribution.lib}">
<include name="cxf-${cxf.version}.jar"/>
<include name="geronimo-javamail_${cxf.geronimo.javamail}.jar"/>
<include name="geronimo-ws-metadata_${cxf.geronimo.ws.metadata}.jar"/>
Modified: stack/cxf/trunk/version.properties
===================================================================
--- stack/cxf/trunk/version.properties 2007-09-25 12:00:21 UTC (rev 4626)
+++ stack/cxf/trunk/version.properties 2007-09-25 17:01:03 UTC (rev 4627)
@@ -21,11 +21,11 @@
cxf.version=2.1-incubator-SNAPSHOT
cxf.geronimo.javamail=1.4_spec-1.0-M1
cxf.geronimo.ws.metadata=2.0_spec-1.1.1
-cxf.jaxws.api=2.0
+cxf.jaxws.api=2.1
cxf.jdom=1.0
cxf.neethi=2.0.2
cxf.saaj=1.3
-cxf.spring=2.0.4
+cxf.spring=2.0.6
cxf.xbean=2.2.0
cxf.xml.resolver=1.2
cxf.xmlschema=1.2
17 years, 3 months
JBossWS SVN: r4626 - stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jbws1762.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2007-09-25 08:00:21 -0400 (Tue, 25 Sep 2007)
New Revision: 4626
Added:
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jbws1762/JBWS1762TestCase3.java
Log:
[JBWS-1762] test must be executed at least three times
Added: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jbws1762/JBWS1762TestCase3.java
===================================================================
--- stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jbws1762/JBWS1762TestCase3.java (rev 0)
+++ stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jbws1762/JBWS1762TestCase3.java 2007-09-25 12:00:21 UTC (rev 4626)
@@ -0,0 +1,30 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws1762;
+
+/**
+ * [JBWS-1762] web.xml modified to web.xml.org - subsequent runs fail
+ *
+ * @author Richard.Opalka(a)jboss.com
+ * @since 25-Sep-2007
+ */
+public class JBWS1762TestCase3 extends JBWS1762TestCase1 {}
Property changes on: stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/jbws1762/JBWS1762TestCase3.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
17 years, 3 months
JBossWS SVN: r4625 - container/jboss40/branches/ropalka/trunk.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2007-09-25 07:10:06 -0400 (Tue, 25 Sep 2007)
New Revision: 4625
Added:
container/jboss40/branches/ropalka/trunk/mergeinfo.txt
Log:
adding merge information file to my branch
Added: container/jboss40/branches/ropalka/trunk/mergeinfo.txt
===================================================================
--- container/jboss40/branches/ropalka/trunk/mergeinfo.txt (rev 0)
+++ container/jboss40/branches/ropalka/trunk/mergeinfo.txt 2007-09-25 11:10:06 UTC (rev 4625)
@@ -0,0 +1 @@
+svn merge -r4622:4623 https://svn.jboss.org/repos/jbossws/container/jboss40/branches/ropalka/trunk
Property changes on: container/jboss40/branches/ropalka/trunk/mergeinfo.txt
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
17 years, 3 months
JBossWS SVN: r4624 - container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2007-09-25 07:07:56 -0400 (Tue, 25 Sep 2007)
New Revision: 4624
Modified:
container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java
container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java
container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java
container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java
container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java
container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java
Log:
[JBWS-1762] fix of the issue for jboss40 integration layer - merge to trunk
Modified: container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java
===================================================================
--- container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java 2007-09-25 11:05:47 UTC (rev 4623)
+++ container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java 2007-09-25 11:07:56 UTC (rev 4624)
@@ -21,6 +21,16 @@
*/
package org.jboss.wsf.container.jboss40;
+import java.io.File;
+import java.io.FileInputStream;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.dom4j.Document;
+import org.dom4j.Element;
+import org.dom4j.io.SAXReader;
import org.jboss.deployment.DeploymentInfo;
import org.jboss.metadata.WebMetaData;
@@ -60,4 +70,38 @@
return servletName;
}
}
+
+ // JBWS 1762
+ Map<String, String> getServletClassMap(URL resource)
+ {
+ if (resource == null)
+ return null;
+
+ File origWebXml = new File(resource.getFile());
+ if (origWebXml.isDirectory())
+ return null;
+
+ Map<String, String> retVal = new HashMap<String, String>();
+ try
+ {
+ FileInputStream source = new FileInputStream(origWebXml);
+ SAXReader reader = new SAXReader();
+ Document document = reader.read(source);
+ Element root = document.getRootElement();
+ for (Iterator it = root.elementIterator("servlet"); it.hasNext();)
+ {
+ Element servlet = (Element)it.next();
+ String servletName = servlet.element("servlet-name").getTextTrim();
+ Element servletClass = servlet.element("servlet-class");
+ retVal.put(servletName, servletClass == null ? null : servletClass.getTextTrim());
+ }
+ }
+ catch (Exception ignore)
+ {
+ return null;
+ }
+
+ return retVal.size() > 0 ? retVal : null;
+ }
+
}
Modified: container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java
===================================================================
--- container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java 2007-09-25 11:05:47 UTC (rev 4623)
+++ container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java 2007-09-25 11:07:56 UTC (rev 4624)
@@ -87,7 +87,7 @@
if (servletLink == null)
throw new IllegalStateException("servlet-link cannot be null");
- Servlet servlet = getServletForName(webMetaData, servletLink);
+ Servlet servlet = getServletForName(webMetaData, di.annotationsCl, servletLink, dep);
String servletClass = servlet.getServletClass();
try
@@ -114,9 +114,22 @@
return dep;
}
- private Servlet getServletForName(WebMetaData wmd, String servletLink)
+ private Servlet getServletForName(WebMetaData wmd, ClassLoader loader, String servletLink, Deployment dep)
{
- Iterator it = wmd.getServletClassMap().entrySet().iterator();
+ // JBWS 1762
+ Map servletClassMap = getServletClassMap(loader.getResource("WEB-INF/web.xml.org"));
+
+ if (servletClassMap != null)
+ {
+ if (dep != null)
+ dep.setProperty("org.jboss.ws.webapp.modify", "false");
+ }
+ else
+ {
+ servletClassMap = wmd.getServletClassMap();
+ }
+
+ Iterator it = servletClassMap.entrySet().iterator();
while (it.hasNext())
{
Map.Entry entry = (Entry)it.next();
Modified: container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java
===================================================================
--- container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java 2007-09-25 11:05:47 UTC (rev 4623)
+++ container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java 2007-09-25 11:07:56 UTC (rev 4624)
@@ -73,7 +73,7 @@
// Copy the attachments
dep.addAttachment(WebMetaData.class, webMetaData);
- List<Servlet> servlets = getRelevantServlets(webMetaData, di.annotationsCl);
+ List<Servlet> servlets = getRelevantServlets(webMetaData, di.annotationsCl, dep);
for (Servlet servlet : servlets)
{
String servletName = servlet.getServletName();
@@ -98,7 +98,7 @@
try
{
WebMetaData webMetaData = (WebMetaData)unit.metaData;
- List<Servlet> servlets = getRelevantServlets(webMetaData, unit.annotationsCl);
+ List<Servlet> servlets = getRelevantServlets(webMetaData, unit.annotationsCl, null);
isWebServiceDeployment = servlets.size() > 0;
}
catch (Exception ex)
@@ -109,10 +109,23 @@
return isWebServiceDeployment;
}
- private List<Servlet> getRelevantServlets(WebMetaData webMetaData, ClassLoader loader)
+ private List<Servlet> getRelevantServlets(WebMetaData webMetaData, ClassLoader loader, Deployment dep)
{
+ // JBWS 1762
+ Map servletClassMap = getServletClassMap(loader.getResource("WEB-INF/web.xml.org"));
+
+ if (servletClassMap != null)
+ {
+ if (dep != null)
+ dep.setProperty("org.jboss.ws.webapp.modify", "false");
+ }
+ else
+ {
+ servletClassMap = webMetaData.getServletClassMap();
+ }
+
List<Servlet> servlets = new ArrayList<Servlet>();
- Iterator it = webMetaData.getServletClassMap().entrySet().iterator();
+ Iterator it = servletClassMap.entrySet().iterator();
while (it.hasNext())
{
Map.Entry entry = (Entry)it.next();
Modified: container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java
===================================================================
--- container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java 2007-09-25 11:05:47 UTC (rev 4623)
+++ container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java 2007-09-25 11:07:56 UTC (rev 4624)
@@ -23,12 +23,6 @@
//$Id: ModifyWebMetaDataDeployer.java 3772 2007-07-01 19:29:13Z thomas.diesler(a)jboss.com $
-import java.io.File;
-import java.io.FileInputStream;
-import java.net.URL;
-
-import javax.xml.ws.WebServiceException;
-
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.deployment.DeploymentAspect;
import org.jboss.wsf.spi.deployment.Endpoint;
@@ -68,35 +62,4 @@
}
}
- public void destroy(Deployment dep)
- {
- URL warURL = (URL)dep.getProperty("org.jboss.ws.webapp.url");
- File warFile = new File(warURL.getFile());
- if (warFile.isDirectory() == false)
- throw new WebServiceException("Expected a war directory: " + warURL);
-
- File webXML = new File(warURL.getFile() + "/WEB-INF/web.xml");
- if (webXML.isFile() == false)
- throw new WebServiceException("Cannot find web.xml: " + webXML);
-
- try
- {
- // On destroy remove the modified web.xml and rollback web.xml.org to web.xml
- File orgWebXML = new File(webXML.getCanonicalPath() + ".org");
- webXML.delete();
-
- // Rename the web.xml.org
- if (orgWebXML.renameTo(webXML) == false)
- throw new WebServiceException("Cannot rename web.xml: " + orgWebXML);
- }
- catch (RuntimeException rte)
- {
- throw rte;
- }
- catch (Exception e)
- {
- throw new WebServiceException(e);
- }
- }
-
}
\ No newline at end of file
Modified: container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java
===================================================================
--- container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java 2007-09-25 11:05:47 UTC (rev 4623)
+++ container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java 2007-09-25 11:07:56 UTC (rev 4624)
@@ -64,6 +64,8 @@
log.debug("publishServiceEndpoint: " + warURL);
try
{
+ // JBWS 1762
+ dep.setProperty("org.jboss.ws.webapp.descriptor.suffix", ".ejb.org");
webXMLRewriter.rewriteWebXml(dep);
DeploymentInfo auxdi = new DeploymentInfo(warURL, null, MBeanServerLocator.locateJBoss());
Modified: container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java
===================================================================
--- container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java 2007-09-25 11:05:47 UTC (rev 4623)
+++ container/jboss40/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java 2007-09-25 11:07:56 UTC (rev 4624)
@@ -75,15 +75,24 @@
try
{
- // After redeployment there might be a stale copy of the original web.xml.org, we delete it
- File orgWebXML = new File(webXML.getCanonicalPath() + ".org");
- orgWebXML.delete();
+ FileInputStream stream = new FileInputStream(webXML);
+ String modifyProperty = (String)dep.getProperty("org.jboss.ws.webapp.modify");
+
+ // JBWS 1762
+ if ((modifyProperty == null) || (!modifyProperty.equals("false")))
+ {
+ String suffix = (String)dep.getProperty("org.jboss.ws.webapp.descriptor.suffix");
+ if (suffix == null)
+ suffix = ".org";
+ File orgWebXML = new File(webXML.getCanonicalPath() + suffix);
- // Rename the web.xml
- if (webXML.renameTo(orgWebXML) == false)
- throw new WebServiceException("Cannot rename web.xml: " + orgWebXML);
+ // Rename the web.xml
+ if (webXML.renameTo(orgWebXML) == false)
+ throw new WebServiceException("Cannot rename web.xml: " + orgWebXML);
+
+ stream = new FileInputStream(orgWebXML);
+ }
- FileInputStream stream = new FileInputStream(orgWebXML);
return rewriteWebXml(stream, webXML, dep);
}
catch (RuntimeException rte)
@@ -110,11 +119,15 @@
RewriteResults results = desciptorModifier.modifyDescriptor(dep, document);
results.webXML = destFile.toURL();
- FileOutputStream fos = new FileOutputStream(destFile);
- OutputFormat format = OutputFormat.createPrettyPrint();
- XMLWriter writer = new XMLWriter(fos, format);
- writer.write(document);
- writer.close();
+ String modifyProperty = (String)dep.getProperty("org.jboss.ws.webapp.modify");
+ if ((modifyProperty == null) || (!modifyProperty.equals("false")))
+ {
+ FileOutputStream fos = new FileOutputStream(destFile);
+ OutputFormat format = OutputFormat.createPrettyPrint();
+ XMLWriter writer = new XMLWriter(fos, format);
+ writer.write(document);
+ writer.close();
+ }
return results;
}
17 years, 3 months
JBossWS SVN: r4623 - container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40.
by jbossws-commits@lists.jboss.org
Author: richard.opalka(a)jboss.com
Date: 2007-09-25 07:05:47 -0400 (Tue, 25 Sep 2007)
New Revision: 4623
Modified:
container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java
container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java
container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java
container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java
container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java
container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java
Log:
[JBWS-1762] fix of the issue for jboss40 integration layer
Modified: container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java
===================================================================
--- container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java 2007-09-25 10:22:51 UTC (rev 4622)
+++ container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/AbstractDeployerHookJSE.java 2007-09-25 11:05:47 UTC (rev 4623)
@@ -21,6 +21,16 @@
*/
package org.jboss.wsf.container.jboss40;
+import java.io.File;
+import java.io.FileInputStream;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.dom4j.Document;
+import org.dom4j.Element;
+import org.dom4j.io.SAXReader;
import org.jboss.deployment.DeploymentInfo;
import org.jboss.metadata.WebMetaData;
@@ -60,4 +70,38 @@
return servletName;
}
}
+
+ // JBWS 1762
+ Map<String, String> getServletClassMap(URL resource)
+ {
+ if (resource == null)
+ return null;
+
+ File origWebXml = new File(resource.getFile());
+ if (origWebXml.isDirectory())
+ return null;
+
+ Map<String, String> retVal = new HashMap<String, String>();
+ try
+ {
+ FileInputStream source = new FileInputStream(origWebXml);
+ SAXReader reader = new SAXReader();
+ Document document = reader.read(source);
+ Element root = document.getRootElement();
+ for (Iterator it = root.elementIterator("servlet"); it.hasNext();)
+ {
+ Element servlet = (Element)it.next();
+ String servletName = servlet.element("servlet-name").getTextTrim();
+ Element servletClass = servlet.element("servlet-class");
+ retVal.put(servletName, servletClass == null ? null : servletClass.getTextTrim());
+ }
+ }
+ catch (Exception ignore)
+ {
+ return null;
+ }
+
+ return retVal.size() > 0 ? retVal : null;
+ }
+
}
Modified: container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java
===================================================================
--- container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java 2007-09-25 10:22:51 UTC (rev 4622)
+++ container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXRPCDeployerHookPreJSE.java 2007-09-25 11:05:47 UTC (rev 4623)
@@ -87,7 +87,7 @@
if (servletLink == null)
throw new IllegalStateException("servlet-link cannot be null");
- Servlet servlet = getServletForName(webMetaData, servletLink);
+ Servlet servlet = getServletForName(webMetaData, di.annotationsCl, servletLink, dep);
String servletClass = servlet.getServletClass();
try
@@ -114,9 +114,22 @@
return dep;
}
- private Servlet getServletForName(WebMetaData wmd, String servletLink)
+ private Servlet getServletForName(WebMetaData wmd, ClassLoader loader, String servletLink, Deployment dep)
{
- Iterator it = wmd.getServletClassMap().entrySet().iterator();
+ // JBWS 1762
+ Map servletClassMap = getServletClassMap(loader.getResource("WEB-INF/web.xml.org"));
+
+ if (servletClassMap != null)
+ {
+ if (dep != null)
+ dep.setProperty("org.jboss.ws.webapp.modify", "false");
+ }
+ else
+ {
+ servletClassMap = wmd.getServletClassMap();
+ }
+
+ Iterator it = servletClassMap.entrySet().iterator();
while (it.hasNext())
{
Map.Entry entry = (Entry)it.next();
Modified: container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java
===================================================================
--- container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java 2007-09-25 10:22:51 UTC (rev 4622)
+++ container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/JAXWSDeployerHookPreJSE.java 2007-09-25 11:05:47 UTC (rev 4623)
@@ -73,7 +73,7 @@
// Copy the attachments
dep.addAttachment(WebMetaData.class, webMetaData);
- List<Servlet> servlets = getRelevantServlets(webMetaData, di.annotationsCl);
+ List<Servlet> servlets = getRelevantServlets(webMetaData, di.annotationsCl, dep);
for (Servlet servlet : servlets)
{
String servletName = servlet.getServletName();
@@ -98,7 +98,7 @@
try
{
WebMetaData webMetaData = (WebMetaData)unit.metaData;
- List<Servlet> servlets = getRelevantServlets(webMetaData, unit.annotationsCl);
+ List<Servlet> servlets = getRelevantServlets(webMetaData, unit.annotationsCl, null);
isWebServiceDeployment = servlets.size() > 0;
}
catch (Exception ex)
@@ -109,10 +109,23 @@
return isWebServiceDeployment;
}
- private List<Servlet> getRelevantServlets(WebMetaData webMetaData, ClassLoader loader)
+ private List<Servlet> getRelevantServlets(WebMetaData webMetaData, ClassLoader loader, Deployment dep)
{
+ // JBWS 1762
+ Map servletClassMap = getServletClassMap(loader.getResource("WEB-INF/web.xml.org"));
+
+ if (servletClassMap != null)
+ {
+ if (dep != null)
+ dep.setProperty("org.jboss.ws.webapp.modify", "false");
+ }
+ else
+ {
+ servletClassMap = webMetaData.getServletClassMap();
+ }
+
List<Servlet> servlets = new ArrayList<Servlet>();
- Iterator it = webMetaData.getServletClassMap().entrySet().iterator();
+ Iterator it = servletClassMap.entrySet().iterator();
while (it.hasNext())
{
Map.Entry entry = (Entry)it.next();
Modified: container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java
===================================================================
--- container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java 2007-09-25 10:22:51 UTC (rev 4622)
+++ container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/ModifyWebMetaDataDeploymentAspect.java 2007-09-25 11:05:47 UTC (rev 4623)
@@ -23,12 +23,6 @@
//$Id: ModifyWebMetaDataDeployer.java 3772 2007-07-01 19:29:13Z thomas.diesler(a)jboss.com $
-import java.io.File;
-import java.io.FileInputStream;
-import java.net.URL;
-
-import javax.xml.ws.WebServiceException;
-
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.deployment.DeploymentAspect;
import org.jboss.wsf.spi.deployment.Endpoint;
@@ -68,35 +62,4 @@
}
}
- public void destroy(Deployment dep)
- {
- URL warURL = (URL)dep.getProperty("org.jboss.ws.webapp.url");
- File warFile = new File(warURL.getFile());
- if (warFile.isDirectory() == false)
- throw new WebServiceException("Expected a war directory: " + warURL);
-
- File webXML = new File(warURL.getFile() + "/WEB-INF/web.xml");
- if (webXML.isFile() == false)
- throw new WebServiceException("Cannot find web.xml: " + webXML);
-
- try
- {
- // On destroy remove the modified web.xml and rollback web.xml.org to web.xml
- File orgWebXML = new File(webXML.getCanonicalPath() + ".org");
- webXML.delete();
-
- // Rename the web.xml.org
- if (orgWebXML.renameTo(webXML) == false)
- throw new WebServiceException("Cannot rename web.xml: " + orgWebXML);
- }
- catch (RuntimeException rte)
- {
- throw rte;
- }
- catch (Exception e)
- {
- throw new WebServiceException(e);
- }
- }
-
}
\ No newline at end of file
Modified: container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java
===================================================================
--- container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java 2007-09-25 10:22:51 UTC (rev 4622)
+++ container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebAppDeploymentAspect.java 2007-09-25 11:05:47 UTC (rev 4623)
@@ -64,6 +64,8 @@
log.debug("publishServiceEndpoint: " + warURL);
try
{
+ // JBWS 1762
+ dep.setProperty("org.jboss.ws.webapp.descriptor.suffix", ".ejb.org");
webXMLRewriter.rewriteWebXml(dep);
DeploymentInfo auxdi = new DeploymentInfo(warURL, null, MBeanServerLocator.locateJBoss());
Modified: container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java
===================================================================
--- container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java 2007-09-25 10:22:51 UTC (rev 4622)
+++ container/jboss40/branches/ropalka/trunk/src/main/java/org/jboss/wsf/container/jboss40/WebXMLRewriterImpl.java 2007-09-25 11:05:47 UTC (rev 4623)
@@ -75,15 +75,24 @@
try
{
- // After redeployment there might be a stale copy of the original web.xml.org, we delete it
- File orgWebXML = new File(webXML.getCanonicalPath() + ".org");
- orgWebXML.delete();
+ FileInputStream stream = new FileInputStream(webXML);
+ String modifyProperty = (String)dep.getProperty("org.jboss.ws.webapp.modify");
+
+ // JBWS 1762
+ if ((modifyProperty == null) || (!modifyProperty.equals("false")))
+ {
+ String suffix = (String)dep.getProperty("org.jboss.ws.webapp.descriptor.suffix");
+ if (suffix == null)
+ suffix = ".org";
+ File orgWebXML = new File(webXML.getCanonicalPath() + suffix);
- // Rename the web.xml
- if (webXML.renameTo(orgWebXML) == false)
- throw new WebServiceException("Cannot rename web.xml: " + orgWebXML);
+ // Rename the web.xml
+ if (webXML.renameTo(orgWebXML) == false)
+ throw new WebServiceException("Cannot rename web.xml: " + orgWebXML);
+
+ stream = new FileInputStream(orgWebXML);
+ }
- FileInputStream stream = new FileInputStream(orgWebXML);
return rewriteWebXml(stream, webXML, dep);
}
catch (RuntimeException rte)
@@ -110,11 +119,15 @@
RewriteResults results = desciptorModifier.modifyDescriptor(dep, document);
results.webXML = destFile.toURL();
- FileOutputStream fos = new FileOutputStream(destFile);
- OutputFormat format = OutputFormat.createPrettyPrint();
- XMLWriter writer = new XMLWriter(fos, format);
- writer.write(document);
- writer.close();
+ String modifyProperty = (String)dep.getProperty("org.jboss.ws.webapp.modify");
+ if ((modifyProperty == null) || (!modifyProperty.equals("false")))
+ {
+ FileOutputStream fos = new FileOutputStream(destFile);
+ OutputFormat format = OutputFormat.createPrettyPrint();
+ XMLWriter writer = new XMLWriter(fos, format);
+ writer.write(document);
+ writer.close();
+ }
return results;
}
17 years, 3 months