JBossWS SVN: r2006 - trunk/build/etc/hudson.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-19 05:11:35 -0500 (Fri, 19 Jan 2007)
New Revision: 2006
Modified:
trunk/build/etc/hudson/AS-5.x.properties
Log:
fixed path structure
Modified: trunk/build/etc/hudson/AS-5.x.properties
===================================================================
--- trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 10:05:39 UTC (rev 2005)
+++ trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 10:11:35 UTC (rev 2006)
@@ -7,7 +7,7 @@
# Required JBoss Home
-jboss50.home=../../../AS-5.x/workspace/trunk/build/output/jboss-5.0.0.Beta2/
+jboss50.home=../../../../AS-5.x/workspace/trunk/build/output/jboss-5.0.0.Beta2/
#jboss42.home=/home/hbraun/dev/prj/jbossas/branches/Branch_4_0/build/output/jboss-4.0.5.SP1-ejb3/
#jboss40.home=/home/hbraun/dev/prj/jbossas/branches/Branch_4_0/build/output/jboss-4.0.5.SP1-ejb3/
19 years, 3 months
JBossWS SVN: r2005 - trunk/build/etc/hudson.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-19 05:05:39 -0500 (Fri, 19 Jan 2007)
New Revision: 2005
Modified:
trunk/build/etc/hudson/AS-5.x.properties
Log:
Testing hudson commit listener
Modified: trunk/build/etc/hudson/AS-5.x.properties
===================================================================
--- trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 10:00:12 UTC (rev 2004)
+++ trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 10:05:39 UTC (rev 2005)
@@ -5,6 +5,7 @@
## $Id: ant.properties.example 1783 2007-01-04 12:46:32Z thomas.diesler(a)jboss.com $
+
# Required JBoss Home
jboss50.home=../../../AS-5.x/workspace/trunk/build/output/jboss-5.0.0.Beta2/
#jboss42.home=/home/hbraun/dev/prj/jbossas/branches/Branch_4_0/build/output/jboss-4.0.5.SP1-ejb3/
19 years, 3 months
JBossWS SVN: r2004 - trunk/build/etc/hudson.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-19 05:00:12 -0500 (Fri, 19 Jan 2007)
New Revision: 2004
Modified:
trunk/build/etc/hudson/AS-5.x.properties
Log:
Commments
Modified: trunk/build/etc/hudson/AS-5.x.properties
===================================================================
--- trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 09:45:46 UTC (rev 2003)
+++ trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 10:00:12 UTC (rev 2004)
@@ -1,8 +1,10 @@
+
#
-# A sample ant properties file
+# The default HUdson build properties for the AS-5.x module
#
-# $Id: ant.properties.example 1783 2007-01-04 12:46:32Z thomas.diesler(a)jboss.com $
+## $Id: ant.properties.example 1783 2007-01-04 12:46:32Z thomas.diesler(a)jboss.com $
+
# Required JBoss Home
jboss50.home=../../../AS-5.x/workspace/trunk/build/output/jboss-5.0.0.Beta2/
#jboss42.home=/home/hbraun/dev/prj/jbossas/branches/Branch_4_0/build/output/jboss-4.0.5.SP1-ejb3/
19 years, 3 months
JBossWS SVN: r2003 - in trunk: build/etc/hudson and 1 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-19 04:45:46 -0500 (Fri, 19 Jan 2007)
New Revision: 2003
Added:
trunk/build/etc/hudson/
trunk/build/etc/hudson/AS-5.x.properties
Modified:
trunk/jbossws-tests/ant-import/build-jars-jaxws.xml
Log:
default build properties
Added: trunk/build/etc/hudson/AS-5.x.properties
===================================================================
--- trunk/build/etc/hudson/AS-5.x.properties (rev 0)
+++ trunk/build/etc/hudson/AS-5.x.properties 2007-01-19 09:45:46 UTC (rev 2003)
@@ -0,0 +1,37 @@
+#
+# A sample ant properties file
+#
+# $Id: ant.properties.example 1783 2007-01-04 12:46:32Z thomas.diesler(a)jboss.com $
+
+# Required JBoss Home
+jboss50.home=../../../AS-5.x/workspace/trunk/build/output/jboss-5.0.0.Beta2/
+#jboss42.home=/home/hbraun/dev/prj/jbossas/branches/Branch_4_0/build/output/jboss-4.0.5.SP1-ejb3/
+#jboss40.home=/home/hbraun/dev/prj/jbossas/branches/Branch_4_0/build/output/jboss-4.0.5.SP1-ejb3/
+
+# The JBoss server under test. This can be [jboss50|jboss42|jboss40|tomcat]
+jbossws.integration.target=jboss50
+
+# The JBoss server instance
+jboss.server.instance=default
+
+# Tomcat Home
+tomcat.home=/usr/java/tomcat
+tomcat.manager.username=manager
+tomcat.manager.password=manager
+
+# JBoss Repository
+#jboss.repository=/tmp
+jboss.repository=http://repository.jboss.com
+
+# JBossWS Release
+jbossws.portal.content=/tmp
+jboss.local.repository=/tmp
+
+# Force thirdparty HTTP get
+#force.thirdparty.get=true
+
+# Java Compiler options
+javac.debug=yes
+javac.deprecation=no
+javac.fail.onerror=yes
+javac.verbose=no
Modified: trunk/jbossws-tests/ant-import/build-jars-jaxws.xml
===================================================================
--- trunk/jbossws-tests/ant-import/build-jars-jaxws.xml 2007-01-19 04:25:55 UTC (rev 2002)
+++ trunk/jbossws-tests/ant-import/build-jars-jaxws.xml 2007-01-19 09:45:46 UTC (rev 2003)
@@ -713,8 +713,8 @@
</war>
<!-- Please add alphabetically -->
-
+
<!-- jaxws-wseventing -->
<war warfile="${tests.output.dir}/libs/jaxws-wseventing.war"
webxml="${tests.output.dir}/resources/jaxws/wseventing/WEB-INF/web.xml">
19 years, 3 months
JBossWS SVN: r2002 - trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws.
by jbossws-commits@lists.jboss.org
Author: jason.greene(a)jboss.com
Date: 2007-01-18 23:25:55 -0500 (Thu, 18 Jan 2007)
New Revision: 2002
Modified:
trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java
Log:
Add missing javadoc
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java 2007-01-19 04:17:16 UTC (rev 2001)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java 2007-01-19 04:25:55 UTC (rev 2002)
@@ -39,7 +39,11 @@
import com.sun.xml.bind.api.JAXBRIContext;
-
+/**
+ * JAXBWSDLGenerator provides a JAXB based WSDLGenerator.
+ *
+ * @author <a href="jason.greene(a)jboss.com">Jason T. Greene</a>
+ */
public class JAXBWSDLGenerator extends WSDLGenerator
{
private JAXBRIContext ctx;
19 years, 3 months
JBossWS SVN: r2001 - in trunk/jbossws-core/src/main/java/org/jboss/ws: tools/helpers and 2 other directories.
by jbossws-commits@lists.jboss.org
Author: jason.greene(a)jboss.com
Date: 2007-01-18 23:17:16 -0500 (Thu, 18 Jan 2007)
New Revision: 2001
Added:
trunk/jbossws-core/src/main/java/org/jboss/ws/tools/wsdl/WSDLGenerator.java
Removed:
trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/WSDLGenerator.java
Modified:
trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/builder/jaxws/JAXWSWebServiceMetaDataBuilder.java
trunk/jbossws-core/src/main/java/org/jboss/ws/tools/helpers/JavaToWSDLHelper.java
trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java
Log:
Move WSDLGenerator
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/builder/jaxws/JAXWSWebServiceMetaDataBuilder.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/builder/jaxws/JAXWSWebServiceMetaDataBuilder.java 2007-01-19 03:39:10 UTC (rev 2000)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/builder/jaxws/JAXWSWebServiceMetaDataBuilder.java 2007-01-19 04:17:16 UTC (rev 2001)
@@ -35,7 +35,7 @@
import org.jboss.ws.metadata.wsse.WSSecurityConfigFactory;
import org.jboss.ws.metadata.wsse.WSSecurityConfiguration;
import org.jboss.ws.tools.jaxws.JAXBWSDLGenerator;
-import org.jboss.ws.tools.jaxws.WSDLGenerator;
+import org.jboss.ws.tools.wsdl.WSDLGenerator;
import org.jboss.ws.tools.wsdl.WSDLWriter;
import org.jboss.ws.tools.wsdl.WSDLWriterResolver;
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/tools/helpers/JavaToWSDLHelper.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/tools/helpers/JavaToWSDLHelper.java 2007-01-19 03:39:10 UTC (rev 2000)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/tools/helpers/JavaToWSDLHelper.java 2007-01-19 04:17:16 UTC (rev 2001)
@@ -69,7 +69,7 @@
import org.jboss.ws.tools.JavaToXSD;
import org.jboss.ws.tools.interfaces.JavaToXSDIntf;
import org.jboss.ws.tools.interfaces.SchemaCreatorIntf;
-import org.jboss.ws.tools.jaxws.WSDLGenerator;
+import org.jboss.ws.tools.wsdl.WSDLGenerator;
/**
* Java To WSDL Helper which uses UnifiedMetaData
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java 2007-01-19 03:39:10 UTC (rev 2000)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/JAXBWSDLGenerator.java 2007-01-19 04:17:16 UTC (rev 2001)
@@ -33,6 +33,7 @@
import org.jboss.ws.WSException;
import org.jboss.ws.extensions.security.Util;
import org.jboss.ws.metadata.wsdl.DOMTypes;
+import org.jboss.ws.tools.wsdl.WSDLGenerator;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
Deleted: trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/WSDLGenerator.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/WSDLGenerator.java 2007-01-19 03:39:10 UTC (rev 2000)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/WSDLGenerator.java 2007-01-19 04:17:16 UTC (rev 2001)
@@ -1,355 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.ws.tools.jaxws;
-
-import java.util.Iterator;
-
-import javax.xml.namespace.QName;
-import javax.xml.rpc.ParameterMode;
-
-import org.jboss.ws.Constants;
-import org.jboss.ws.core.jaxrpc.Style;
-import org.jboss.ws.metadata.umdm.EndpointMetaData;
-import org.jboss.ws.metadata.umdm.FaultMetaData;
-import org.jboss.ws.metadata.umdm.OperationMetaData;
-import org.jboss.ws.metadata.umdm.ParameterMetaData;
-import org.jboss.ws.metadata.umdm.ServiceMetaData;
-import org.jboss.ws.metadata.wsdl.NCName;
-import org.jboss.ws.metadata.wsdl.WSDLBinding;
-import org.jboss.ws.metadata.wsdl.WSDLBindingFault;
-import org.jboss.ws.metadata.wsdl.WSDLBindingOperation;
-import org.jboss.ws.metadata.wsdl.WSDLBindingOperationInput;
-import org.jboss.ws.metadata.wsdl.WSDLBindingOperationOutput;
-import org.jboss.ws.metadata.wsdl.WSDLDefinitions;
-import org.jboss.ws.metadata.wsdl.WSDLEndpoint;
-import org.jboss.ws.metadata.wsdl.WSDLImport;
-import org.jboss.ws.metadata.wsdl.WSDLInterface;
-import org.jboss.ws.metadata.wsdl.WSDLInterfaceFault;
-import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperation;
-import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperationInput;
-import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperationOutfault;
-import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperationOutput;
-import org.jboss.ws.metadata.wsdl.WSDLRPCPart;
-import org.jboss.ws.metadata.wsdl.WSDLRPCSignatureItem;
-import org.jboss.ws.metadata.wsdl.WSDLSOAPHeader;
-import org.jboss.ws.metadata.wsdl.WSDLService;
-import org.jboss.ws.metadata.wsdl.WSDLRPCSignatureItem.Direction;
-
-
-/**
- * Generates a WSDL object model.
- *
- * @author <a href="mailto:jason.greene@jboss.com">Jason T. Greene</a>
- * @version $Revision$
- */
-public abstract class WSDLGenerator
-{
- protected WSDLDefinitions wsdl;
-
- protected abstract void processTypes();
-
- protected void processEndpoint(WSDLService service, EndpointMetaData endpoint)
- {
- WSDLEndpoint wsdlEndpoint = new WSDLEndpoint(service);
- wsdlEndpoint.setQName(endpoint.getPortName());
- wsdlEndpoint.setName(new NCName(endpoint.getPortName().getLocalPart()));
- String address = endpoint.getEndpointAddress();
- wsdlEndpoint.setAddress(address == null ? "REPLACE_WITH_ACTUAL_URL" : address);
- service.addEndpoint(wsdlEndpoint);
-
- WSDLInterface wsdlInterface = new WSDLInterface(wsdl);
- QName interfaceQName = endpoint.getPortTypeName();
- wsdlInterface.setQName(interfaceQName);
- wsdlInterface.setName(new NCName(interfaceQName));
- wsdl.addInterface(wsdlInterface);
-
- // Add imports
- if (!interfaceQName.getNamespaceURI().equals(endpoint.getServiceMetaData().getServiceName().getNamespaceURI()))
- {
- WSDLImport wsdlImport = new WSDLImport(wsdl);
- wsdlImport.setLocation(interfaceQName.getLocalPart() + "_PortType");
- wsdlImport.setNamespace(interfaceQName.getNamespaceURI());
- wsdl.addImport(wsdlImport);
- wsdl.registerNamespaceURI(interfaceQName.getNamespaceURI(), null);
- }
-
- WSDLBinding wsdlBinding = new WSDLBinding(wsdl);
- QName bindingQName = new QName(interfaceQName.getNamespaceURI(), interfaceQName.getLocalPart() + "Binding");
- wsdlBinding.setQName(bindingQName);
- wsdlBinding.setName(new NCName(bindingQName.getLocalPart()));
- wsdlBinding.setInterfaceName(interfaceQName);
- wsdl.addBinding(wsdlBinding);
- wsdlEndpoint.setBinding(bindingQName);
-
- for (OperationMetaData operation : endpoint.getOperations())
- {
- processOperation(wsdlInterface, wsdlBinding, operation);
- }
- }
-
- protected void processOperation(WSDLInterface wsdlInterface, WSDLBinding wsdlBinding, OperationMetaData operation)
- {
- WSDLInterfaceOperation interfaceOperation = new WSDLInterfaceOperation(wsdlInterface);
- WSDLBindingOperation bindingOperation = new WSDLBindingOperation(wsdlBinding);
-
- interfaceOperation.setName(new NCName(operation.getQName().getLocalPart()));
- interfaceOperation.setPattern(operation.isOneWay() ? Constants.WSDL20_PATTERN_IN_ONLY
- : Constants.WSDL20_PATTERN_IN_OUT);
-
- bindingOperation.setRef(operation.getQName());
- bindingOperation.setSOAPAction(operation.getSOAPAction());
-
- if (operation.getStyle() == Style.DOCUMENT)
- processOperationDOC(interfaceOperation, bindingOperation, operation);
- else
- processOperationRPC(interfaceOperation, bindingOperation, operation);
-
- for (FaultMetaData fault : operation.getFaults())
- {
- WSDLInterfaceFault interfaceFault = new WSDLInterfaceFault(wsdlInterface);
- interfaceFault.setElement(fault.getXmlName());
- interfaceFault.setName(new NCName(fault.getXmlName().getLocalPart()));
- wsdlInterface.addFault(interfaceFault);
-
- QName ref = new QName(wsdl.getTargetNamespace(), interfaceFault.getName().toString());
- WSDLInterfaceOperationOutfault outfault = new WSDLInterfaceOperationOutfault(interfaceOperation);
- outfault.setRef(ref);
- interfaceOperation.addOutfault(outfault);
-
- WSDLBindingFault bindingFault = new WSDLBindingFault(wsdlBinding);
- bindingFault.setRef(ref);
- wsdlBinding.addFault(bindingFault);
- }
-
- wsdlInterface.addOperation(interfaceOperation);
- wsdlBinding.addOperation(bindingOperation);
- }
-
- protected void addSignatureItem(WSDLInterfaceOperation operation, ParameterMetaData param, boolean isReturn)
- {
- Direction direction;
- if (isReturn)
- {
- direction = Direction.RETURN;
- }
- else if (param.getMode() == ParameterMode.INOUT)
- {
- direction = Direction.INOUT;
- }
- else if (param.getMode() == ParameterMode.OUT)
- {
- direction = Direction.OUT;
- }
- else
- {
- direction = Direction.IN;
- }
-
- operation.addRpcSignatureItem(new WSDLRPCSignatureItem(param.getPartName(), direction));
- }
-
- protected void processOperationDOC(WSDLInterfaceOperation interfaceOperation, WSDLBindingOperation bindingOperation, OperationMetaData operation)
- {
- interfaceOperation.setStyle(Constants.URI_STYLE_DOCUMENT);
-
- WSDLInterfaceOperationInput input = new WSDLInterfaceOperationInput(interfaceOperation);
- WSDLBindingOperationInput bindingInput = new WSDLBindingOperationInput(bindingOperation);
-
- WSDLInterfaceOperationOutput output = null;
- WSDLBindingOperationOutput bindingOutput = null;
-
- boolean twoWay = !operation.isOneWay();
- if (twoWay)
- {
- output = new WSDLInterfaceOperationOutput(interfaceOperation);
- bindingOutput = new WSDLBindingOperationOutput(bindingOperation);
-
- ParameterMetaData returnParameter = operation.getReturnParameter();
- if (returnParameter != null)
- {
- QName xmlName = returnParameter.getXmlName();
- String partName = returnParameter.getPartName();
- if (returnParameter.isInHeader())
- {
- WSDLSOAPHeader header = new WSDLSOAPHeader(xmlName, partName);
- header.setIncludeInSignature(true);
- bindingOutput.addSoapHeader(header);
- }
- else
- {
- output.setElement(xmlName);
- output.setPartName(partName);
- }
- addSignatureItem(interfaceOperation, returnParameter, true);
- }
-
- // If there is no return parameter, it will most likely be set later with an INOUT or OUT parameter.
- // Otherwise, a null element means there is a 0 body element part, which is allowed by BP 1.0
- interfaceOperation.addOutput(output);
- bindingOperation.addOutput(bindingOutput);
- }
-
- for (ParameterMetaData param : operation.getParameters())
- {
- if (param.isInHeader())
- {
- WSDLSOAPHeader header = new WSDLSOAPHeader(param.getXmlName(), param.getPartName());
- header.setIncludeInSignature(true);
- if (param.getMode() != ParameterMode.OUT)
- bindingInput.addSoapHeader(header);
- if (twoWay && param.getMode() != ParameterMode.IN)
- bindingOutput.addSoapHeader(header);
- }
- else
- {
- if (param.getMode() != ParameterMode.OUT)
- {
- input.setElement(param.getXmlName());
- input.setPartName(param.getPartName());
- }
- if (twoWay && param.getMode() != ParameterMode.IN)
- {
- output.setElement(param.getXmlName());
- output.setPartName(param.getPartName());
- }
- }
- addSignatureItem(interfaceOperation, param, false);
- }
-
- interfaceOperation.addInput(input);
- bindingOperation.addInput(bindingInput);
- }
-
- protected void processOperationRPC(WSDLInterfaceOperation interfaceOperation, WSDLBindingOperation bindingOperation, OperationMetaData operation)
- {
- interfaceOperation.setStyle(Constants.URI_STYLE_RPC);
-
- WSDLInterfaceOperationInput input = new WSDLInterfaceOperationInput(interfaceOperation);
- WSDLBindingOperationInput bindingInput = new WSDLBindingOperationInput(bindingOperation);
- QName operationName = operation.getQName();
- input.setElement(operationName);
-
- WSDLInterfaceOperationOutput output = null;
- WSDLBindingOperationOutput bindingOutput = null;
-
- boolean twoWay = !operation.isOneWay();
- if (twoWay)
- {
- output = new WSDLInterfaceOperationOutput(interfaceOperation);
- bindingOutput = new WSDLBindingOperationOutput(bindingOperation);
- output.setElement(new QName(operationName.getNamespaceURI(), operationName.getLocalPart() + "Response"));
-
- ParameterMetaData returnParameter = operation.getReturnParameter();
- if (returnParameter != null)
- {
- QName xmlName = returnParameter.getXmlName();
- String partName = returnParameter.getPartName();
- if (returnParameter.isInHeader())
- {
- WSDLSOAPHeader header = new WSDLSOAPHeader(xmlName, partName);
- header.setIncludeInSignature(true);
- bindingOutput.addSoapHeader(header);
- }
- else
- {
- WSDLRPCPart part = new WSDLRPCPart(returnParameter.getPartName(), returnParameter.getXmlType());
- output.addChildPart(part);
- }
- addSignatureItem(interfaceOperation, returnParameter, true);
- }
-
- interfaceOperation.addOutput(output);
- bindingOperation.addOutput(bindingOutput);
- }
-
- for (ParameterMetaData param : operation.getParameters())
- {
- if (param.isInHeader())
- {
- WSDLSOAPHeader header = new WSDLSOAPHeader(param.getXmlName(), param.getPartName());
- header.setIncludeInSignature(true);
- if (param.getMode() != ParameterMode.OUT)
- bindingInput.addSoapHeader(header);
- if (twoWay && param.getMode() != ParameterMode.IN)
- bindingOutput.addSoapHeader(header);
- }
- else
- {
- WSDLRPCPart part = new WSDLRPCPart(param.getPartName(), param.getXmlType());
- if (param.getMode() != ParameterMode.OUT)
- input.addChildPart(part);
- if (twoWay && param.getMode() != ParameterMode.IN)
- output.addChildPart(part);
- }
- addSignatureItem(interfaceOperation, param, false);
- }
-
- interfaceOperation.addInput(input);
- bindingOperation.addInput(bindingInput);
- }
-
- protected void processService(ServiceMetaData service)
- {
-
- WSDLService wsdlService = new WSDLService(wsdl);
- wsdlService.setQName(service.getServiceName());
- wsdlService.setName(new NCName(service.getServiceName().getLocalPart()));
- wsdl.addService(wsdlService);
-
- EndpointMetaData endpoint = null;
- for (Iterator<EndpointMetaData> iter = service.getEndpoints().iterator(); iter.hasNext();)
- {
- endpoint = iter.next();
- processEndpoint(wsdlService, endpoint);
- }
-
- if (endpoint == null)
- throw new IllegalStateException("A service must have an endpoint");
-
- wsdlService.setInterfaceName(endpoint.getPortName());
- }
-
- /**
- * Generate a WSDL object model from the passed in ServiceMetaData.
- *
- * @param service the service
- * @return the WSDL object model
- */
- public WSDLDefinitions generate(ServiceMetaData service)
- {
- // For now only WSDL 1.1
- wsdl = new WSDLDefinitions();
- wsdl.setWsdlNamespace(Constants.NS_WSDL11);
-
- // One WSDL per service
- String ns = service.getServiceName().getNamespaceURI();
- wsdl.setTargetNamespace(ns);
- wsdl.registerNamespaceURI(ns, "tns");
- wsdl.registerNamespaceURI(Constants.NS_SOAP11, "soap");
- wsdl.registerNamespaceURI(Constants.NS_SCHEMA_XSD, "xsd");
-
- processTypes();
- processService(service);
-
- return wsdl;
- }
-}
Copied: trunk/jbossws-core/src/main/java/org/jboss/ws/tools/wsdl/WSDLGenerator.java (from rev 1991, trunk/jbossws-core/src/main/java/org/jboss/ws/tools/jaxws/WSDLGenerator.java)
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/tools/wsdl/WSDLGenerator.java (rev 0)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/tools/wsdl/WSDLGenerator.java 2007-01-19 04:17:16 UTC (rev 2001)
@@ -0,0 +1,355 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.ws.tools.wsdl;
+
+import java.util.Iterator;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.ParameterMode;
+
+import org.jboss.ws.Constants;
+import org.jboss.ws.core.jaxrpc.Style;
+import org.jboss.ws.metadata.umdm.EndpointMetaData;
+import org.jboss.ws.metadata.umdm.FaultMetaData;
+import org.jboss.ws.metadata.umdm.OperationMetaData;
+import org.jboss.ws.metadata.umdm.ParameterMetaData;
+import org.jboss.ws.metadata.umdm.ServiceMetaData;
+import org.jboss.ws.metadata.wsdl.NCName;
+import org.jboss.ws.metadata.wsdl.WSDLBinding;
+import org.jboss.ws.metadata.wsdl.WSDLBindingFault;
+import org.jboss.ws.metadata.wsdl.WSDLBindingOperation;
+import org.jboss.ws.metadata.wsdl.WSDLBindingOperationInput;
+import org.jboss.ws.metadata.wsdl.WSDLBindingOperationOutput;
+import org.jboss.ws.metadata.wsdl.WSDLDefinitions;
+import org.jboss.ws.metadata.wsdl.WSDLEndpoint;
+import org.jboss.ws.metadata.wsdl.WSDLImport;
+import org.jboss.ws.metadata.wsdl.WSDLInterface;
+import org.jboss.ws.metadata.wsdl.WSDLInterfaceFault;
+import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperation;
+import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperationInput;
+import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperationOutfault;
+import org.jboss.ws.metadata.wsdl.WSDLInterfaceOperationOutput;
+import org.jboss.ws.metadata.wsdl.WSDLRPCPart;
+import org.jboss.ws.metadata.wsdl.WSDLRPCSignatureItem;
+import org.jboss.ws.metadata.wsdl.WSDLSOAPHeader;
+import org.jboss.ws.metadata.wsdl.WSDLService;
+import org.jboss.ws.metadata.wsdl.WSDLRPCSignatureItem.Direction;
+
+
+/**
+ * Generates a WSDL object model.
+ *
+ * @author <a href="mailto:jason.greene@jboss.com">Jason T. Greene</a>
+ * @version $Revision$
+ */
+public abstract class WSDLGenerator
+{
+ protected WSDLDefinitions wsdl;
+
+ protected abstract void processTypes();
+
+ protected void processEndpoint(WSDLService service, EndpointMetaData endpoint)
+ {
+ WSDLEndpoint wsdlEndpoint = new WSDLEndpoint(service);
+ wsdlEndpoint.setQName(endpoint.getPortName());
+ wsdlEndpoint.setName(new NCName(endpoint.getPortName().getLocalPart()));
+ String address = endpoint.getEndpointAddress();
+ wsdlEndpoint.setAddress(address == null ? "REPLACE_WITH_ACTUAL_URL" : address);
+ service.addEndpoint(wsdlEndpoint);
+
+ WSDLInterface wsdlInterface = new WSDLInterface(wsdl);
+ QName interfaceQName = endpoint.getPortTypeName();
+ wsdlInterface.setQName(interfaceQName);
+ wsdlInterface.setName(new NCName(interfaceQName));
+ wsdl.addInterface(wsdlInterface);
+
+ // Add imports
+ if (!interfaceQName.getNamespaceURI().equals(endpoint.getServiceMetaData().getServiceName().getNamespaceURI()))
+ {
+ WSDLImport wsdlImport = new WSDLImport(wsdl);
+ wsdlImport.setLocation(interfaceQName.getLocalPart() + "_PortType");
+ wsdlImport.setNamespace(interfaceQName.getNamespaceURI());
+ wsdl.addImport(wsdlImport);
+ wsdl.registerNamespaceURI(interfaceQName.getNamespaceURI(), null);
+ }
+
+ WSDLBinding wsdlBinding = new WSDLBinding(wsdl);
+ QName bindingQName = new QName(interfaceQName.getNamespaceURI(), interfaceQName.getLocalPart() + "Binding");
+ wsdlBinding.setQName(bindingQName);
+ wsdlBinding.setName(new NCName(bindingQName.getLocalPart()));
+ wsdlBinding.setInterfaceName(interfaceQName);
+ wsdl.addBinding(wsdlBinding);
+ wsdlEndpoint.setBinding(bindingQName);
+
+ for (OperationMetaData operation : endpoint.getOperations())
+ {
+ processOperation(wsdlInterface, wsdlBinding, operation);
+ }
+ }
+
+ protected void processOperation(WSDLInterface wsdlInterface, WSDLBinding wsdlBinding, OperationMetaData operation)
+ {
+ WSDLInterfaceOperation interfaceOperation = new WSDLInterfaceOperation(wsdlInterface);
+ WSDLBindingOperation bindingOperation = new WSDLBindingOperation(wsdlBinding);
+
+ interfaceOperation.setName(new NCName(operation.getQName().getLocalPart()));
+ interfaceOperation.setPattern(operation.isOneWay() ? Constants.WSDL20_PATTERN_IN_ONLY
+ : Constants.WSDL20_PATTERN_IN_OUT);
+
+ bindingOperation.setRef(operation.getQName());
+ bindingOperation.setSOAPAction(operation.getSOAPAction());
+
+ if (operation.getStyle() == Style.DOCUMENT)
+ processOperationDOC(interfaceOperation, bindingOperation, operation);
+ else
+ processOperationRPC(interfaceOperation, bindingOperation, operation);
+
+ for (FaultMetaData fault : operation.getFaults())
+ {
+ WSDLInterfaceFault interfaceFault = new WSDLInterfaceFault(wsdlInterface);
+ interfaceFault.setElement(fault.getXmlName());
+ interfaceFault.setName(new NCName(fault.getXmlName().getLocalPart()));
+ wsdlInterface.addFault(interfaceFault);
+
+ QName ref = new QName(wsdl.getTargetNamespace(), interfaceFault.getName().toString());
+ WSDLInterfaceOperationOutfault outfault = new WSDLInterfaceOperationOutfault(interfaceOperation);
+ outfault.setRef(ref);
+ interfaceOperation.addOutfault(outfault);
+
+ WSDLBindingFault bindingFault = new WSDLBindingFault(wsdlBinding);
+ bindingFault.setRef(ref);
+ wsdlBinding.addFault(bindingFault);
+ }
+
+ wsdlInterface.addOperation(interfaceOperation);
+ wsdlBinding.addOperation(bindingOperation);
+ }
+
+ protected void addSignatureItem(WSDLInterfaceOperation operation, ParameterMetaData param, boolean isReturn)
+ {
+ Direction direction;
+ if (isReturn)
+ {
+ direction = Direction.RETURN;
+ }
+ else if (param.getMode() == ParameterMode.INOUT)
+ {
+ direction = Direction.INOUT;
+ }
+ else if (param.getMode() == ParameterMode.OUT)
+ {
+ direction = Direction.OUT;
+ }
+ else
+ {
+ direction = Direction.IN;
+ }
+
+ operation.addRpcSignatureItem(new WSDLRPCSignatureItem(param.getPartName(), direction));
+ }
+
+ protected void processOperationDOC(WSDLInterfaceOperation interfaceOperation, WSDLBindingOperation bindingOperation, OperationMetaData operation)
+ {
+ interfaceOperation.setStyle(Constants.URI_STYLE_DOCUMENT);
+
+ WSDLInterfaceOperationInput input = new WSDLInterfaceOperationInput(interfaceOperation);
+ WSDLBindingOperationInput bindingInput = new WSDLBindingOperationInput(bindingOperation);
+
+ WSDLInterfaceOperationOutput output = null;
+ WSDLBindingOperationOutput bindingOutput = null;
+
+ boolean twoWay = !operation.isOneWay();
+ if (twoWay)
+ {
+ output = new WSDLInterfaceOperationOutput(interfaceOperation);
+ bindingOutput = new WSDLBindingOperationOutput(bindingOperation);
+
+ ParameterMetaData returnParameter = operation.getReturnParameter();
+ if (returnParameter != null)
+ {
+ QName xmlName = returnParameter.getXmlName();
+ String partName = returnParameter.getPartName();
+ if (returnParameter.isInHeader())
+ {
+ WSDLSOAPHeader header = new WSDLSOAPHeader(xmlName, partName);
+ header.setIncludeInSignature(true);
+ bindingOutput.addSoapHeader(header);
+ }
+ else
+ {
+ output.setElement(xmlName);
+ output.setPartName(partName);
+ }
+ addSignatureItem(interfaceOperation, returnParameter, true);
+ }
+
+ // If there is no return parameter, it will most likely be set later with an INOUT or OUT parameter.
+ // Otherwise, a null element means there is a 0 body element part, which is allowed by BP 1.0
+ interfaceOperation.addOutput(output);
+ bindingOperation.addOutput(bindingOutput);
+ }
+
+ for (ParameterMetaData param : operation.getParameters())
+ {
+ if (param.isInHeader())
+ {
+ WSDLSOAPHeader header = new WSDLSOAPHeader(param.getXmlName(), param.getPartName());
+ header.setIncludeInSignature(true);
+ if (param.getMode() != ParameterMode.OUT)
+ bindingInput.addSoapHeader(header);
+ if (twoWay && param.getMode() != ParameterMode.IN)
+ bindingOutput.addSoapHeader(header);
+ }
+ else
+ {
+ if (param.getMode() != ParameterMode.OUT)
+ {
+ input.setElement(param.getXmlName());
+ input.setPartName(param.getPartName());
+ }
+ if (twoWay && param.getMode() != ParameterMode.IN)
+ {
+ output.setElement(param.getXmlName());
+ output.setPartName(param.getPartName());
+ }
+ }
+ addSignatureItem(interfaceOperation, param, false);
+ }
+
+ interfaceOperation.addInput(input);
+ bindingOperation.addInput(bindingInput);
+ }
+
+ protected void processOperationRPC(WSDLInterfaceOperation interfaceOperation, WSDLBindingOperation bindingOperation, OperationMetaData operation)
+ {
+ interfaceOperation.setStyle(Constants.URI_STYLE_RPC);
+
+ WSDLInterfaceOperationInput input = new WSDLInterfaceOperationInput(interfaceOperation);
+ WSDLBindingOperationInput bindingInput = new WSDLBindingOperationInput(bindingOperation);
+ QName operationName = operation.getQName();
+ input.setElement(operationName);
+
+ WSDLInterfaceOperationOutput output = null;
+ WSDLBindingOperationOutput bindingOutput = null;
+
+ boolean twoWay = !operation.isOneWay();
+ if (twoWay)
+ {
+ output = new WSDLInterfaceOperationOutput(interfaceOperation);
+ bindingOutput = new WSDLBindingOperationOutput(bindingOperation);
+ output.setElement(new QName(operationName.getNamespaceURI(), operationName.getLocalPart() + "Response"));
+
+ ParameterMetaData returnParameter = operation.getReturnParameter();
+ if (returnParameter != null)
+ {
+ QName xmlName = returnParameter.getXmlName();
+ String partName = returnParameter.getPartName();
+ if (returnParameter.isInHeader())
+ {
+ WSDLSOAPHeader header = new WSDLSOAPHeader(xmlName, partName);
+ header.setIncludeInSignature(true);
+ bindingOutput.addSoapHeader(header);
+ }
+ else
+ {
+ WSDLRPCPart part = new WSDLRPCPart(returnParameter.getPartName(), returnParameter.getXmlType());
+ output.addChildPart(part);
+ }
+ addSignatureItem(interfaceOperation, returnParameter, true);
+ }
+
+ interfaceOperation.addOutput(output);
+ bindingOperation.addOutput(bindingOutput);
+ }
+
+ for (ParameterMetaData param : operation.getParameters())
+ {
+ if (param.isInHeader())
+ {
+ WSDLSOAPHeader header = new WSDLSOAPHeader(param.getXmlName(), param.getPartName());
+ header.setIncludeInSignature(true);
+ if (param.getMode() != ParameterMode.OUT)
+ bindingInput.addSoapHeader(header);
+ if (twoWay && param.getMode() != ParameterMode.IN)
+ bindingOutput.addSoapHeader(header);
+ }
+ else
+ {
+ WSDLRPCPart part = new WSDLRPCPart(param.getPartName(), param.getXmlType());
+ if (param.getMode() != ParameterMode.OUT)
+ input.addChildPart(part);
+ if (twoWay && param.getMode() != ParameterMode.IN)
+ output.addChildPart(part);
+ }
+ addSignatureItem(interfaceOperation, param, false);
+ }
+
+ interfaceOperation.addInput(input);
+ bindingOperation.addInput(bindingInput);
+ }
+
+ protected void processService(ServiceMetaData service)
+ {
+
+ WSDLService wsdlService = new WSDLService(wsdl);
+ wsdlService.setQName(service.getServiceName());
+ wsdlService.setName(new NCName(service.getServiceName().getLocalPart()));
+ wsdl.addService(wsdlService);
+
+ EndpointMetaData endpoint = null;
+ for (Iterator<EndpointMetaData> iter = service.getEndpoints().iterator(); iter.hasNext();)
+ {
+ endpoint = iter.next();
+ processEndpoint(wsdlService, endpoint);
+ }
+
+ if (endpoint == null)
+ throw new IllegalStateException("A service must have an endpoint");
+
+ wsdlService.setInterfaceName(endpoint.getPortName());
+ }
+
+ /**
+ * Generate a WSDL object model from the passed in ServiceMetaData.
+ *
+ * @param service the service
+ * @return the WSDL object model
+ */
+ public WSDLDefinitions generate(ServiceMetaData service)
+ {
+ // For now only WSDL 1.1
+ wsdl = new WSDLDefinitions();
+ wsdl.setWsdlNamespace(Constants.NS_WSDL11);
+
+ // One WSDL per service
+ String ns = service.getServiceName().getNamespaceURI();
+ wsdl.setTargetNamespace(ns);
+ wsdl.registerNamespaceURI(ns, "tns");
+ wsdl.registerNamespaceURI(Constants.NS_SOAP11, "soap");
+ wsdl.registerNamespaceURI(Constants.NS_SCHEMA_XSD, "xsd");
+
+ processTypes();
+ processService(service);
+
+ return wsdl;
+ }
+}
19 years, 3 months
JBossWS SVN: r2000 - trunk/jbossws-core/src/main/java/javax/xml/ws/wsaddressing.
by jbossws-commits@lists.jboss.org
Author: jason.greene(a)jboss.com
Date: 2007-01-18 22:39:10 -0500 (Thu, 18 Jan 2007)
New Revision: 2000
Modified:
trunk/jbossws-core/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java
Log:
Fix type-o
Modified: trunk/jbossws-core/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java
===================================================================
--- trunk/jbossws-core/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java 2007-01-18 16:03:53 UTC (rev 1999)
+++ trunk/jbossws-core/src/main/java/javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.java 2007-01-19 03:39:10 UTC (rev 2000)
@@ -83,7 +83,7 @@
* @return A <code>W3CEndpointReferenceBuilder</code> instance with
* the <code>address</code> set to the <code>wsa:Address</code>.
*/
- public W3CEndpointReferenceBuilder address(String adddress) {
+ public W3CEndpointReferenceBuilder address(String address) {
this.address = address;
return this;
}
19 years, 3 months
JBossWS SVN: r1999 - in trunk: jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc and 3 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-18 11:03:53 -0500 (Thu, 18 Jan 2007)
New Revision: 1999
Removed:
trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxrpc/
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc/samples/wseventing/
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc/wseventing/
trunk/jbossws-tests/src/main/resources/jaxrpc/samples/wseventing/
trunk/jbossws-tests/src/main/resources/jaxrpc/wseventing/
Log:
Remove ws-eventing legacy code. It has successfully been migrated to JAX-WS
19 years, 3 months
JBossWS SVN: r1998 - in trunk/jbossws-core/src/main/resources/samples: jaxws and 1 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-18 10:47:49 -0500 (Thu, 18 Jan 2007)
New Revision: 1998
Added:
trunk/jbossws-core/src/main/resources/samples/jaxws/wseventing/
trunk/jbossws-core/src/main/resources/samples/jaxws/wseventing/build.xml
Removed:
trunk/jbossws-core/src/main/resources/samples/jaxrpc/wseventing/
Log:
update samples build for eventing
Added: trunk/jbossws-core/src/main/resources/samples/jaxws/wseventing/build.xml
===================================================================
--- trunk/jbossws-core/src/main/resources/samples/jaxws/wseventing/build.xml (rev 0)
+++ trunk/jbossws-core/src/main/resources/samples/jaxws/wseventing/build.xml 2007-01-18 15:47:49 UTC (rev 1998)
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id:build.xml 1125 2006-10-03 15:45:31Z thomas.diesler(a)jboss.com $ -->
+
+<project default="main" basedir="../.." name="JBossWS Examples">
+
+ <property name="chapter" value="jaxws/wseventing"/>
+ <property name="sample.path" value="jaxws/samples/wseventing"/>
+ <property name="java.dir" value="${basedir}/${chapter}/java"/>
+ <property name="resources.dir" value="${basedir}/${chapter}/resources"/>
+
+ <import file="${basedir}/common/imported-build.xml"/>
+
+ <target name="generate-sources" depends="compile" description="Generate the deployment resources.">
+
+ <!-- Define a taskdef for the wstools ant task -->
+ <taskdef name="wstools" classname="org.jboss.ws.tools.ant.wstools">
+ <classpath refid="compile.classpath"/>
+ <classpath path="${build.tests.dir}/classes"/>
+ <classpath path="${build.tests.dir}"/>
+ </taskdef>
+
+
+ </target>
+
+ <!--
+ Build the test deployments
+ -->
+ <target name="jars" depends="compile,copy-resources,generate-sources,compile-generated,copy-generated" description="build the deployments">
+ <!-- jaxws-samples-wseventing.war -->
+ <war warfile="${build.tests.dir}/libs/jaxws-samples-wseventing.war"
+ webxml="${build.tests.dir}/resources/jaxws/samples/wseventing/WEB-INF/web.xml">
+ <classes dir="${build.tests.dir}/classes">
+ <include name="org/jboss/test/ws/jaxws/samples/wseventing/*.class"/>
+ </classes>
+ <webinf dir="${build.tests.dir}/resources/jaxws/samples/wseventing/WEB-INF">
+ <include name="wsdl/jboss-web.xml"/>
+ <include name="wsdl/sysmon.wsdl"/>
+ <include name="wsdl/ws-eventing.wsdl"/>
+ <include name="wsdl/ws-eventing.xsd"/>
+ <include name="wsdl/ws-addr.xsd"/>
+ </webinf>
+ </war>
+ </target>
+
+ <!--
+ Run the testsuite
+ -->
+ <target name="tests" depends="jars" description="run the testsuite">
+ <antcall target="test">
+ <param name="test" value="${sample.path}"/>
+ </antcall>
+ </target>
+
+</project>
\ No newline at end of file
19 years, 3 months
JBossWS SVN: r1997 - in trunk: jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws and 9 other directories.
by jbossws-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2007-01-18 10:42:20 -0500 (Thu, 18 Jan 2007)
New Revision: 1997
Added:
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonManagementEndpoint.java
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonRegistrationEndpoint.java
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonTestCase.java
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonUtil.java
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/jboss-web.xml
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/web.xml
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/sysmon.wsdl
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-addr.xsd
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.wsdl
trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.xsd
Modified:
trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/common/EventingEndpointBase.java
trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/AttributedURIType.java
trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EndpointReferenceType.java
trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/ReferenceParametersType.java
trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/mgmt/Subscription.java
trunk/jbossws-tests/ant-import/build-jars-jaxrpc.xml
trunk/jbossws-tests/ant-import/build-jars-jaxws.xml
trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc/samples/wseventing/SysmonUtil.java
Log:
migrate eventing samples to jaxws
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/common/EventingEndpointBase.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/common/EventingEndpointBase.java 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/common/EventingEndpointBase.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -86,6 +86,8 @@
{
if (null == inProps)
throw new SOAPFaultException(Constants.SOAP11_FAULT_CODE_CLIENT, "Addressing headers missing from request", "wse:InvalidMessage", null);
+ if(null == inProps.getTo())
+ throw new SOAPFaultException(Constants.SOAP11_FAULT_CODE_CLIENT, "Event source URI missing from request (wsa:To)", "wse:InvalidMessage", null);
}
public QName buildFaultQName(String elementName)
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/AttributedURIType.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/AttributedURIType.java 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/AttributedURIType.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -97,4 +97,7 @@
return otherAttributes;
}
+ public String toString() {
+ return this.getValue();
+ }
}
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EndpointReferenceType.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EndpointReferenceType.java 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/EndpointReferenceType.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -55,142 +55,146 @@
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "EndpointReferenceType", namespace = "http://www.w3.org/2005/08/addressing", propOrder = {
- "address",
- "referenceParameters",
- "metadata",
- "any"
-})
+ "address",
+ "referenceParameters",
+ "metadata",
+ "any"
+ })
public class EndpointReferenceType {
- @XmlElement(name = "Address", namespace = "http://www.w3.org/2005/08/addressing")
- protected AttributedURIType address;
- @XmlElement(name = "ReferenceParameters", namespace = "http://www.w3.org/2005/08/addressing")
- protected ReferenceParametersType referenceParameters;
- @XmlElement(name = "Metadata", namespace = "http://www.w3.org/2005/08/addressing")
- protected MetadataType metadata;
- @XmlAnyElement(lax = true)
- protected List<Object> any;
- @XmlAnyAttribute
- private Map<QName, String> otherAttributes = new HashMap<QName, String>();
+ @XmlElement(name = "Address", namespace = "http://www.w3.org/2005/08/addressing")
+ protected AttributedURIType address;
+ @XmlElement(name = "ReferenceParameters", namespace = "http://www.w3.org/2005/08/addressing")
+ protected ReferenceParametersType referenceParameters;
+ @XmlElement(name = "Metadata", namespace = "http://www.w3.org/2005/08/addressing")
+ protected MetadataType metadata;
+ @XmlAnyElement(lax = true)
+ protected List<Object> any;
+ @XmlAnyAttribute
+ private Map<QName, String> otherAttributes = new HashMap<QName, String>();
- /**
- * Gets the value of the address property.
- *
- * @return
- * possible object is
- * {@link AttributedURIType }
- *
- */
- public AttributedURIType getAddress() {
- return address;
- }
+ /**
+ * Gets the value of the address property.
+ *
+ * @return
+ * possible object is
+ * {@link AttributedURIType }
+ *
+ */
+ public AttributedURIType getAddress() {
+ return address;
+ }
- /**
- * Sets the value of the address property.
- *
- * @param value
- * allowed object is
- * {@link AttributedURIType }
- *
- */
- public void setAddress(AttributedURIType value) {
- this.address = value;
- }
+ /**
+ * Sets the value of the address property.
+ *
+ * @param value
+ * allowed object is
+ * {@link AttributedURIType }
+ *
+ */
+ public void setAddress(AttributedURIType value) {
+ this.address = value;
+ }
- /**
- * Gets the value of the referenceParameters property.
- *
- * @return
- * possible object is
- * {@link ReferenceParametersType }
- *
- */
- public ReferenceParametersType getReferenceParameters() {
- return referenceParameters;
- }
+ /**
+ * Gets the value of the referenceParameters property.
+ *
+ * @return
+ * possible object is
+ * {@link ReferenceParametersType }
+ *
+ */
+ public ReferenceParametersType getReferenceParameters() {
+ return referenceParameters;
+ }
- /**
- * Sets the value of the referenceParameters property.
- *
- * @param value
- * allowed object is
- * {@link ReferenceParametersType }
- *
- */
- public void setReferenceParameters(ReferenceParametersType value) {
- this.referenceParameters = value;
- }
+ /**
+ * Sets the value of the referenceParameters property.
+ *
+ * @param value
+ * allowed object is
+ * {@link ReferenceParametersType }
+ *
+ */
+ public void setReferenceParameters(ReferenceParametersType value) {
+ this.referenceParameters = value;
+ }
- /**
- * Gets the value of the metadata property.
- *
- * @return
- * possible object is
- * {@link MetadataType }
- *
- */
- public MetadataType getMetadata() {
- return metadata;
- }
+ /**
+ * Gets the value of the metadata property.
+ *
+ * @return
+ * possible object is
+ * {@link MetadataType }
+ *
+ */
+ public MetadataType getMetadata() {
+ return metadata;
+ }
- /**
- * Sets the value of the metadata property.
- *
- * @param value
- * allowed object is
- * {@link MetadataType }
- *
- */
- public void setMetadata(MetadataType value) {
- this.metadata = value;
- }
+ /**
+ * Sets the value of the metadata property.
+ *
+ * @param value
+ * allowed object is
+ * {@link MetadataType }
+ *
+ */
+ public void setMetadata(MetadataType value) {
+ this.metadata = value;
+ }
- /**
- * Gets the value of the any property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the any property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getAny().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link Element }
- * {@link Object }
- *
- *
- */
- public List<Object> getAny() {
- if (any == null) {
- any = new ArrayList<Object>();
- }
- return this.any;
- }
+ /**
+ * Gets the value of the any property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the any property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getAny().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link Element }
+ * {@link Object }
+ *
+ *
+ */
+ public List<Object> getAny() {
+ if (any == null) {
+ any = new ArrayList<Object>();
+ }
+ return this.any;
+ }
- /**
- * Gets a map that contains attributes that aren't bound to any typed property on this class.
- *
- * <p>
- * the map is keyed by the name of the attribute and
- * the value is the string value of the attribute.
- *
- * the map returned by this method is live, and you can add new attribute
- * by updating the map directly. Because of this design, there's no setter.
- *
- *
- * @return
- * always non-null
- */
- public Map<QName, String> getOtherAttributes() {
- return otherAttributes;
- }
+ /**
+ * Gets a map that contains attributes that aren't bound to any typed property on this class.
+ *
+ * <p>
+ * the map is keyed by the name of the attribute and
+ * the value is the string value of the attribute.
+ *
+ * the map returned by this method is live, and you can add new attribute
+ * by updating the map directly. Because of this design, there's no setter.
+ *
+ *
+ * @return
+ * always non-null
+ */
+ public Map<QName, String> getOtherAttributes() {
+ return otherAttributes;
+ }
+ public String toString() {
+ return "EPR {address="+this.getAddress()+", refParam="+this.getReferenceParameters()+"}";
+ }
+
}
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/ReferenceParametersType.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/ReferenceParametersType.java 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/jaxws/ReferenceParametersType.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -72,61 +72,64 @@
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ReferenceParametersType", namespace = "http://www.w3.org/2005/08/addressing", propOrder = {
- "any"
-})
+ "any"
+ })
public class ReferenceParametersType {
- @XmlAnyElement(lax = true)
- protected List<Object> any;
- @XmlAnyAttribute
- private Map<QName, String> otherAttributes = new HashMap<QName, String>();
+ @XmlAnyElement(lax = true)
+ protected List<Object> any;
+ @XmlAnyAttribute
+ private Map<QName, String> otherAttributes = new HashMap<QName, String>();
- /**
- * Gets the value of the any property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the any property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getAny().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link Element }
- * {@link Object }
- *
- *
- */
- public List<Object> getAny() {
- if (any == null) {
- any = new ArrayList<Object>();
- }
- return this.any;
- }
+ /**
+ * Gets the value of the any property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the any property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getAny().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link Element }
+ * {@link Object }
+ *
+ *
+ */
+ public List<Object> getAny() {
+ if (any == null) {
+ any = new ArrayList<Object>();
+ }
+ return this.any;
+ }
- /**
- * Gets a map that contains attributes that aren't bound to any typed property on this class.
- *
- * <p>
- * the map is keyed by the name of the attribute and
- * the value is the string value of the attribute.
- *
- * the map returned by this method is live, and you can add new attribute
- * by updating the map directly. Because of this design, there's no setter.
- *
- *
- * @return
- * always non-null
- */
- public Map<QName, String> getOtherAttributes() {
- return otherAttributes;
- }
+ /**
+ * Gets a map that contains attributes that aren't bound to any typed property on this class.
+ *
+ * <p>
+ * the map is keyed by the name of the attribute and
+ * the value is the string value of the attribute.
+ *
+ * the map returned by this method is live, and you can add new attribute
+ * by updating the map directly. Because of this design, there's no setter.
+ *
+ *
+ * @return
+ * always non-null
+ */
+ public Map<QName, String> getOtherAttributes() {
+ return otherAttributes;
+ }
+ public String toString() {
+ return this.getAny().toString();
+ }
}
Modified: trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/mgmt/Subscription.java
===================================================================
--- trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/mgmt/Subscription.java 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-core/src/main/java/org/jboss/ws/extensions/eventing/mgmt/Subscription.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -177,7 +177,7 @@
}
catch (Exception e)
{
- log.warn("Failed to send subscription end message", e);
+ log.warn("Failed to send subscription end message to: " + this.endTo, e);
}
}
Modified: trunk/jbossws-tests/ant-import/build-jars-jaxrpc.xml
===================================================================
--- trunk/jbossws-tests/ant-import/build-jars-jaxrpc.xml 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-tests/ant-import/build-jars-jaxrpc.xml 2007-01-18 15:42:20 UTC (rev 1997)
@@ -1552,35 +1552,7 @@
<include name="wsdl/**"/>
</metainf>
</jar>
-
- <!-- jaxrpc-samples-wseventing.war -->
- <war warfile="${tests.output.dir}/libs/jaxrpc-samples-wseventing.war" webxml="${tests.output.dir}/resources/jaxrpc/samples/wseventing/WEB-INF/web.xml">
- <classes dir="${tests.output.dir}/classes">
- <include name="org/jboss/ws/samples/wseventing/*.class"/>
- <include name="org/jboss/test/ws/jaxrpc/samples/wseventing/*.class"/>
- </classes>
- <webinf dir="${tests.output.dir}/resources/jaxrpc/samples/wseventing/WEB-INF">
- <include name="jaxrpc-mapping.xml"/>
- <include name="webservices.xml"/>
- <include name="wsdl/sysmon.wsdl"/>
- <include name="wsdl/jbwse.wsdl"/>
- <include name="wsdl/jbwse.xsd"/>
- </webinf>
- </war>
- <jar jarfile="${tests.output.dir}/libs/jaxrpc-samples-wseventing-client.jar">
- <fileset dir="${tests.output.dir}/classes">
- <include name="org/jboss/ws/samples/wseventing/*.class"/>
- </fileset>
- <metainf dir="${tests.output.dir}/resources/jaxrpc/samples/wseventing/WEB-INF">
- <include name="jaxrpc-mapping.xml"/>
- <include name="wsdl/**"/>
- </metainf>
- <metainf dir="${tests.output.dir}/resources/jaxrpc/samples/wseventing/META-INF">
- <include name="application-client.xml"/>
- <include name="jboss-client.xml"/>
- </metainf>
- </jar>
-
+
<!-- jaxrpc-samples-wssecurity-sign -->
<war warfile="${tests.output.dir}/libs/jaxrpc-samples-wssecurity-sign.war" webxml="${tests.output.dir}/resources/jaxrpc/samples/wssecurity/WEB-INF/web.xml">
<classes dir="${tests.output.dir}/classes">
@@ -1743,32 +1715,6 @@
<include name="wsdl/**"/>
</metainf>
</jar>
-
- <!-- jaxrpc-wseventing -->
- <!--war warfile="${tests.output.dir}/libs/jaxrpc-wseventing.war" webxml="${tests.output.dir}/resources/jaxrpc/wseventing/WEB-INF/web.xml">
- <classes dir="${tests.output.dir}/classes">
- <include name="org/jboss/ws/eventing/*.class"/>
- <include name="org/jboss/test/ws/jaxrpc/wseventing/*.class"/>
- </classes>
- <webinf dir="${tests.output.dir}/resources/jaxrpc/wseventing/WEB-INF">
- <include name="jaxrpc-mapping.xml"/>
- <include name="webservices.xml"/>
- <include name="wsdl/**"/>
- </webinf>
- </war>
- <jar jarfile="${tests.output.dir}/libs/jaxrpc-wseventing-client.jar">
- <fileset dir="${tests.output.dir}/classes">
- <include name="org/jboss/ws/eventing/*.class"/>
- </fileset>
- <metainf dir="${tests.output.dir}/resources/jaxrpc/wseventing/WEB-INF">
- <include name="jaxrpc-mapping.xml"/>
- <include name="wsdl/**"/>
- </metainf>
- <metainf dir="${tests.output.dir}/resources/jaxrpc/wseventing/META-INF">
- <include name="application-client.xml"/>
- <include name="jboss-client.xml"/>
- </metainf>
- </jar-->
<!-- jaxrpc-wsse-account-signup.war -->
<war warfile="${tests.output.dir}/libs/jaxrpc-wsse-account-signup.war" webxml="${tests.output.dir}/resources/jaxrpc/wsse/account-signup/WEB-INF/web.xml">
Modified: trunk/jbossws-tests/ant-import/build-jars-jaxws.xml
===================================================================
--- trunk/jbossws-tests/ant-import/build-jars-jaxws.xml 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-tests/ant-import/build-jars-jaxws.xml 2007-01-18 15:42:20 UTC (rev 1997)
@@ -726,18 +726,22 @@
<include name="wsdl/**"/>
</webinf>
</war>
- <!--jar jarfile="${tests.output.dir}/libs/jaxws-wseventing-client.jar">
- <fileset dir="${tests.output.dir}/classes">
- <include name="org/jboss/ws/eventing/*.class"/>
- </fileset>
- <metainf dir="${tests.output.dir}/resources/jaxws/wseventing/WEB-INF">
- <include name="wsdl/**"/>
- </metainf>
- <metainf dir="${tests.output.dir}/resources/jaxws/wseventing/META-INF">
- <include name="application-client.xml"/>
- <include name="jboss-client.xml"/>
- </metainf>
- </jar-->
+
+ <!-- jaxws-samples-wseventing.war -->
+ <war warfile="${tests.output.dir}/libs/jaxws-samples-wseventing.war"
+ webxml="${tests.output.dir}/resources/jaxws/samples/wseventing/WEB-INF/web.xml">
+ <classes dir="${tests.output.dir}/classes">
+ <include name="org/jboss/test/ws/jaxws/samples/wseventing/*.class"/>
+ </classes>
+ <webinf dir="${tests.output.dir}/resources/jaxws/samples/wseventing/WEB-INF">
+ <include name="wsdl/jboss-web.xml"/>
+ <include name="wsdl/sysmon.wsdl"/>
+ <include name="wsdl/ws-eventing.wsdl"/>
+ <include name="wsdl/ws-eventing.xsd"/>
+ <include name="wsdl/ws-addr.xsd"/>
+ </webinf>
+ </war>
+
</target>
</project>
Modified: trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc/samples/wseventing/SysmonUtil.java
===================================================================
--- trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc/samples/wseventing/SysmonUtil.java 2007-01-18 13:59:21 UTC (rev 1996)
+++ trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxrpc/samples/wseventing/SysmonUtil.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -1,19 +1,20 @@
package org.jboss.test.ws.jaxrpc.samples.wseventing;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.Date;
+import org.jboss.logging.Logger;
+import org.jboss.ws.core.soap.SOAPElementImpl;
+import org.jboss.ws.extensions.addressing.AddressingClientUtil;
+import org.jboss.ws.extensions.eventing.jaxws.EndpointReferenceType;
+import org.jboss.ws.extensions.eventing.jaxws.SubscribeResponse;
-import javax.xml.rpc.Stub;
+import javax.xml.ws.BindingProvider;
import javax.xml.ws.addressing.AddressingBuilder;
import javax.xml.ws.addressing.AddressingProperties;
+import javax.xml.ws.addressing.EndpointReference;
import javax.xml.ws.addressing.JAXWSAConstants;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.Date;
-import org.jboss.logging.Logger;
-import org.jboss.ws.extensions.addressing.AddressingClientUtil;
-import org.jboss.ws.extensions.eventing.jaxrpc.element.EndpointReference;
-import org.jboss.ws.extensions.eventing.jaxrpc.element.SubscribeResponse;
-
/**
* Util methods that drive the SysmoneTestCase.
*
@@ -27,8 +28,8 @@
public static void printSubscriptionDetails(SubscribeResponse subscribeResponse)
{
- EndpointReference managerEPR = subscribeResponse.getSubscriptionManager();
- URI subscriptionID = managerEPR.getReferenceParams().getIdentifier();
+ EndpointReferenceType managerEPR = subscribeResponse.getSubscriptionManager();
+ String subscriptionID = subscribeResponse.getSubscriptionId();
Date expiryTime = subscribeResponse.getExpires();
log.info("SubscriptionManager " + managerEPR.getAddress());
@@ -39,34 +40,47 @@
/**
* Bind request properties.
*/
- public static void setRequestProperties(Stub stub, AddressingProperties props)
+ public static void setRequestProperties(BindingProvider binding, AddressingProperties props)
{
- stub._setProperty(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES_OUTBOUND, props);
+ binding.getRequestContext().put(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES_OUTBOUND, props);
}
/**
* Access response properties.
*/
- public static AddressingProperties getResponseProperties(Stub stub)
+ public static AddressingProperties getResponseProperties(BindingProvider binding)
{
- return (AddressingProperties)stub._getProperty(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES_INBOUND);
+ return (AddressingProperties)binding.getResponseContext().get(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES_INBOUND);
}
/**
* Followup addressing properties basically use the
* subscription id as wsa:ReferenceParameter
*/
- public static AddressingProperties buildFollowupProperties(SubscribeResponse response, String wsaAction, String wsaTo)
- {
+ public static AddressingProperties buildFollowupProperties(SubscribeResponse response, String wsaAction, String wsaTo) {
try
{
AddressingBuilder addrBuilder = AddressingBuilder.getAddressingBuilder();
- AddressingProperties props = addrBuilder.newAddressingProperties();
- props.initializeAsDestination(response.getSubscriptionManager().toWsaEndpointReference());
- props.setTo(addrBuilder.newURI(wsaTo));
- props.setAction(addrBuilder.newURI(wsaAction));
- props.setMessageID(AddressingClientUtil.createMessageID());
- return props;
+ AddressingProperties followupProps = addrBuilder.newAddressingProperties();
+
+ //followupProps.setTo(addrBuilder.newURI(wsaTo));
+ followupProps.setAction(addrBuilder.newURI(wsaAction));
+ followupProps.setMessageID(AddressingClientUtil.createMessageID());
+
+ // necessary in order to parse ref params
+ EndpointReference epr = addrBuilder.newEndpointReference(new URI(wsaTo));
+
+ String subscriptionID = response.getSubscriptionId();
+ SOAPElementImpl element = new SOAPElementImpl(
+ "Identifier",
+ "wse", "http://schemas.xmlsoap.org/ws/2004/08/eventing"
+ );
+ element.setValue(subscriptionID);
+ epr.getReferenceParameters().addElement(element);
+
+ followupProps.initializeAsDestination(epr);
+
+ return followupProps;
}
catch (URISyntaxException e)
{
Added: trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonManagementEndpoint.java
===================================================================
--- trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonManagementEndpoint.java (rev 0)
+++ trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonManagementEndpoint.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,49 @@
+/*
+ * 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.samples.wseventing;
+
+import org.jboss.ws.annotation.EndpointConfig;
+import org.jboss.ws.extensions.eventing.jaxws.AbstractSubscriptionManagerEndpoint;
+import org.jboss.logging.Logger;
+
+import javax.jws.WebService;
+
+/**
+ * @author Heiko.Braun(a)jboss.org
+ * @version $Id$
+ * @since 18.01.2007
+ */
+@WebService(
+ name = "SubscriptionManager",
+ portName = "SubscriptionManagerPort",
+ targetNamespace = "http://schemas.xmlsoap.org/ws/2004/08/eventing",
+ wsdlLocation = "/WEB-INF/wsdl/sysmon.wsdl",
+ endpointInterface = "org.jboss.ws.extensions.eventing.jaxws.SubscriptionManagerEndpoint")
+@EndpointConfig(configName = "Standard WSAddressing Endpoint")
+public class SysmonManagementEndpoint extends AbstractSubscriptionManagerEndpoint {
+
+ private static final Logger log = Logger.getLogger(SysmonManagementEndpoint.class);
+
+ protected Logger getLogger() {
+ return log;
+ }
+}
Added: trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonRegistrationEndpoint.java
===================================================================
--- trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonRegistrationEndpoint.java (rev 0)
+++ trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonRegistrationEndpoint.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,50 @@
+/*
+ * 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.samples.wseventing;
+
+import org.jboss.ws.annotation.EndpointConfig;
+import org.jboss.ws.extensions.eventing.jaxws.AbstractEventSourceEndpoint;
+import org.jboss.logging.Logger;
+
+import javax.jws.WebService;
+
+/**
+ * @author Heiko.Braun(a)jboss.org
+ * @version $Id$
+ * @since 18.01.2007
+ */
+@WebService(
+ name = "EventSource",
+ portName = "EventSourcePort",
+ targetNamespace = "http://schemas.xmlsoap.org/ws/2004/08/eventing",
+ wsdlLocation = "/WEB-INF/wsdl/sysmon.wsdl",
+ endpointInterface = "org.jboss.ws.extensions.eventing.jaxws.EventSourceEndpoint")
+@EndpointConfig(configName = "Standard WSAddressing Endpoint")
+public class SysmonRegistrationEndpoint extends AbstractEventSourceEndpoint {
+
+ private static final Logger log = Logger.getLogger(SysmonRegistrationEndpoint.class);
+
+ protected Logger getLogger()
+ {
+ return log;
+ }
+}
Added: trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonTestCase.java
===================================================================
--- trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonTestCase.java (rev 0)
+++ trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonTestCase.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,161 @@
+/*
+ * 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.samples.wseventing;
+
+// $Id: SysmonTestCase.java 1994 2007-01-18 12:54:34Z heiko.braun(a)jboss.com $
+
+import junit.framework.Test;
+import org.jboss.test.ws.JBossWSTest;
+import org.jboss.test.ws.JBossWSTestSetup;
+import org.jboss.ws.extensions.addressing.AddressingClientUtil;
+import org.jboss.ws.extensions.eventing.EventingConstants;
+import org.jboss.ws.extensions.eventing.jaxws.*;
+import org.jboss.ws.core.StubExt;
+
+import javax.naming.InitialContext;
+import javax.xml.namespace.QName;
+import javax.xml.ws.BindingProvider;
+import javax.xml.ws.Service;
+import javax.xml.ws.addressing.AddressingProperties;
+import java.io.File;
+import java.net.URISyntaxException;
+import java.net.URL;
+
+/**
+ * Test the eventing example service.
+ *
+ * @author heiko(a)openj.net
+ * @since 29-Apr-2005
+ */
+public class SysmonTestCase extends JBossWSTest
+{
+
+ // event source endpoint
+ private EventSourceEndpoint subscriptionPort = null;
+
+ // subscription manager endpoint
+ private SubscriptionManagerEndpoint managementPort = null;
+
+ // the logical event source name
+ private final static String eventSourceURI = "http://www.jboss.org/sysmon/SystemInfo";
+
+ public static Test suite()
+ {
+ return JBossWSTestSetup.newTestSetup(SysmonTestCase.class, "jaxws-samples-wseventing.war");
+ }
+
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+
+ if (subscriptionPort == null || managementPort == null)
+ {
+ if (isTargetJBoss())
+ {
+ URL wsdlURL = new File("resources/jaxws/samples/wseventing/WEB-INF/wsdl/sysmon.wsdl").toURL();
+ QName defaultServiceName = new QName("http://schemas.xmlsoap.org/ws/2004/08/eventing", "EventingService");
+
+ Service service = Service.create(wsdlURL, defaultServiceName);
+ subscriptionPort = (EventSourceEndpoint)service.getPort(EventSourceEndpoint.class);
+ managementPort = (SubscriptionManagerEndpoint)service.getPort(SubscriptionManagerEndpoint.class);
+
+ ((StubExt)subscriptionPort).setConfigName("Standard WSAddressing Client");
+ ((StubExt)managementPort).setConfigName("Standard WSAddressing Client");
+ }
+ else
+ {
+
+ throw new IllegalArgumentException("JBossAS is the only supported target");
+ }
+ }
+ }
+
+ /**
+ * Subscribe using a custom notification filter.
+ */
+ public void testSubscribe() throws Exception
+ {
+ SubscribeResponse subscribeResponse = doSubscribe("/SystemStatus/HostName/text()='localhost'");
+ SysmonUtil.printSubscriptionDetails(subscribeResponse);
+ }
+
+ /**
+ * Cancel subscription and check if it was really removed.
+ */
+ public void testUnsubscribe() throws Exception
+ {
+
+ SubscribeResponse subscribeResponse = doSubscribe(null);
+ //SysmonUtil.printSubscriptionDetails(subscribeResponse);
+
+ String subscriptionID = subscribeResponse.getSubscriptionId();
+
+ // addressing correlation
+ AddressingProperties unsubscribeProps = SysmonUtil.buildFollowupProperties(subscribeResponse, EventingConstants.UNSUBSCRIBE_ACTION, eventSourceURI);
+ SysmonUtil.setRequestProperties((BindingProvider)managementPort, unsubscribeProps);
+ managementPort.unsubscribeOp(new Unsubscribe());
+
+ AddressingProperties getStatusProps = SysmonUtil.buildFollowupProperties(subscribeResponse, EventingConstants.GET_STATUS_ACTION, eventSourceURI);
+ SysmonUtil.setRequestProperties((BindingProvider)managementPort, getStatusProps);
+
+ try {
+ managementPort.getStatusOp(new GetStatus());
+ } catch (Exception e) {
+ // Ignore
+ return;
+ }
+
+ fail("Unsubscribe error! The subscription was not removed");
+ }
+
+ private SubscribeResponse doSubscribe(String filterString) throws URISyntaxException
+ {
+ AddressingProperties reqProps = AddressingClientUtil.createDefaultProps(EventingConstants.SUBSCRIBE_ACTION, eventSourceURI);
+ reqProps.setMessageID(AddressingClientUtil.createMessageID());
+ SysmonUtil.setRequestProperties((BindingProvider)subscriptionPort, reqProps);
+
+ // build subscription payload
+ Subscribe request = new Subscribe();
+
+ // default delivery type with notification EPR
+ DeliveryType delivery = SysmonUtil.getDefaultDelivery();
+ request.setDelivery(delivery);
+
+ // receive endTo messages at the same port
+ request.setEndTo(delivery.getNotifyTo());
+
+ if (filterString != null)
+ {
+ // custom filter that applies to a certain hostname only
+ FilterType filter = SysmonUtil.wrapFilterString(filterString);
+ }
+
+ // invoke subscription request
+ SubscribeResponse subscriptionTicket = subscriptionPort.subscribeOp(request);
+
+ // check message constraints
+ AddressingProperties resProps = SysmonUtil.getResponseProperties((BindingProvider)subscriptionPort);
+ assertEquals(reqProps.getMessageID().getURI(), resProps.getRelatesTo()[0].getID());
+
+ return subscriptionTicket;
+ }
+}
Added: trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonUtil.java
===================================================================
--- trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonUtil.java (rev 0)
+++ trunk/jbossws-tests/src/main/java/org/jboss/test/ws/jaxws/samples/wseventing/SysmonUtil.java 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,117 @@
+package org.jboss.test.ws.jaxws.samples.wseventing;
+
+import org.jboss.logging.Logger;
+import org.jboss.ws.core.soap.SOAPElementImpl;
+import org.jboss.ws.extensions.addressing.AddressingClientUtil;
+import org.jboss.ws.extensions.eventing.jaxws.*;
+import org.jboss.ws.extensions.eventing.EventingConstants;
+
+import javax.xml.ws.BindingProvider;
+import javax.xml.ws.addressing.AddressingBuilder;
+import javax.xml.ws.addressing.AddressingProperties;
+import javax.xml.ws.addressing.EndpointReference;
+import javax.xml.ws.addressing.JAXWSAConstants;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.Date;
+
+/**
+ * Util methods that drive the SysmoneTestCase.
+ *
+ * @author Heiko Braun, <heiko(a)openj.net>
+ * @since 28-Mar-2006
+ */
+public class SysmonUtil
+{
+ // provide logging
+ private static final Logger log = Logger.getLogger(SysmonUtil.class);
+
+ public static void printSubscriptionDetails(SubscribeResponse subscribeResponse)
+ {
+ EndpointReferenceType managerEPR = subscribeResponse.getSubscriptionManager();
+ String subscriptionID = subscribeResponse.getSubscriptionId();
+ Date expiryTime = subscribeResponse.getExpires();
+
+ log.info("SubscriptionManager " + managerEPR.getAddress());
+ log.info("SubscriptionID " + subscriptionID);
+ log.info("ExpiryTime " + expiryTime);
+ }
+
+ /**
+ * Bind request properties.
+ */
+ public static void setRequestProperties(BindingProvider binding, AddressingProperties props)
+ {
+ binding.getRequestContext().put(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES_OUTBOUND, props);
+ }
+
+ /**
+ * Access response properties.
+ */
+ public static AddressingProperties getResponseProperties(BindingProvider binding)
+ {
+ return (AddressingProperties)binding.getResponseContext().get(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES_INBOUND);
+ }
+
+ /**
+ * Followup addressing properties basically use the
+ * subscription id as wsa:ReferenceParameter
+ */
+ public static AddressingProperties buildFollowupProperties(SubscribeResponse response, String wsaAction, String wsaTo) {
+ try
+ {
+ AddressingBuilder addrBuilder = AddressingBuilder.getAddressingBuilder();
+ AddressingProperties followupProps = addrBuilder.newAddressingProperties();
+
+ //followupProps.setTo(addrBuilder.newURI(wsaTo));
+ followupProps.setAction(addrBuilder.newURI(wsaAction));
+ followupProps.setMessageID(AddressingClientUtil.createMessageID());
+
+ // necessary in order to parse ref params
+ EndpointReference epr = addrBuilder.newEndpointReference(new URI(wsaTo));
+
+ String subscriptionID = response.getSubscriptionId();
+ SOAPElementImpl element = new SOAPElementImpl(
+ "Identifier",
+ "wse", "http://schemas.xmlsoap.org/ws/2004/08/eventing"
+ );
+ element.setValue(subscriptionID);
+ epr.getReferenceParameters().addElement(element);
+
+ followupProps.initializeAsDestination(epr);
+
+ return followupProps;
+ }
+ catch (URISyntaxException e)
+ {
+ throw new IllegalArgumentException(e.getMessage());
+ }
+ }
+
+ public static DeliveryType getDefaultDelivery()
+ {
+ try
+ {
+ DeliveryType delivery = new DeliveryType();
+ delivery.setMode(EventingConstants.getDeliveryPush().toString());
+ EndpointReferenceType notifyEPR = new EndpointReferenceType();
+ AttributedURIType attURI = new AttributedURIType();
+ attURI.setValue("http://jboss.org");
+ notifyEPR.setAddress(attURI);
+ delivery.setNotifyTo(notifyEPR);
+ return delivery;
+ }
+ catch (Exception e)
+ {
+ throw new IllegalStateException("Failed to create delivery payload", e);
+ }
+ }
+
+ public static FilterType wrapFilterString(String s)
+ {
+ FilterType filter = new FilterType();
+ filter.setDialect(EventingConstants.getDialectXPath().toString());
+ filter.getContent().add(s);
+ return filter;
+ }
+}
Added: trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/jboss-web.xml
===================================================================
--- trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/jboss-web.xml (rev 0)
+++ trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/jboss-web.xml 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 2.4//EN" "http://www.jboss.org/j2ee/dtd/jboss-web_4_0.dtd">
+
+<jboss-web>
+ <context-root>/jaxws-samples-wseventing</context-root>
+</jboss-web>
\ No newline at end of file
Added: trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/web.xml
===================================================================
--- trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/web.xml (rev 0)
+++ trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/web.xml 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+
+ <display-name>System monitor samples (WS-Eventing)</display-name>
+
+ <servlet>
+ <servlet-name>EventSource</servlet-name>
+ <servlet-class>org.jboss.test.ws.jaxws.samples.wseventing.SysmonRegistrationEndpoint</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>EventSource</servlet-name>
+ <url-pattern>/subscribe</url-pattern>
+ </servlet-mapping>
+
+ <servlet>
+ <servlet-name>SubscriptionManager</servlet-name>
+ <servlet-class>org.jboss.test.ws.jaxws.samples.wseventing.SysmonManagementEndpoint</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>SubscriptionManager</servlet-name>
+ <url-pattern>/manage</url-pattern>
+ </servlet-mapping>
+
+ <session-config>
+ <session-timeout>54</session-timeout>
+ </session-config>
+</web-app>
\ No newline at end of file
Added: trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/sysmon.wsdl
===================================================================
--- trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/sysmon.wsdl (rev 0)
+++ trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/sysmon.wsdl 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<wsdl:definitions
+ targetNamespace="http://www.jboss.org/sysmon"
+ xmlns:tns="http://www.jboss.org/sysmon"
+ xmlns:wse='http://schemas.xmlsoap.org/ws/2004/08/eventing'
+ xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
+ xmlns:wsa10='http://www.w3.org/2005/08/addressing'
+ xmlns:xs='http://www.w3.org/2001/XMLSchema'
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+ <wsdl:import
+ namespace='http://schemas.xmlsoap.org/ws/2004/08/eventing'
+ location='ws-eventing.wsdl' />
+
+ <wsdl:types>
+
+ <xs:schema targetNamespace='http://schemas.xmlsoap.org/ws/2004/08/eventing'>
+ <xs:include schemaLocation='ws-eventing.xsd'/>
+ </xs:schema>
+
+ <xs:schema
+ targetNamespace="http://www.jboss.org/sysmon"
+ elementFormDefault="qualified"
+ blockDefault="#all">
+
+ <xs:element name="SystemStatus">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Time " type="xs:dateTime"/>
+ <xs:element name="HostName" type="xs:string"/>
+ <xs:element name="HostAddress" type="xs:string"/>
+ <xs:element name="ActiveThreadCount" type="xs:int"/>
+ <xs:element name="FreeMemory" type="xs:string"/>
+ <xs:element name="MaxMemory" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:schema>
+
+ </wsdl:types>
+
+ <wsdl:message name='SystemInfoMsg'>
+ <wsdl:part name='body' element='tns:SystemStatus'/>
+ </wsdl:message>
+
+ <wsdl:portType name='SystemInfo' wse:EventSource='true'>
+ <wsdl:operation name='SysmonOp'>
+ <wsdl:output message='tns:SystemInfoMsg'/>
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:binding name="SystemInfoBinding" type="tns:SystemInfo">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="SysmonOp">
+ <soap:operation soapAction=""/>
+ <wsdl:output>
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+</wsdl:definitions>
\ No newline at end of file
Added: trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-addr.xsd
===================================================================
--- trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-addr.xsd (rev 0)
+++ trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-addr.xsd 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd">
+<!--
+ W3C XML Schema defined in the Web Services Addressing 1.0 specification
+ http://www.w3.org/TR/ws-addr-core
+
+ Copyright © 2005 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C® Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+ $Id: ws-addr.xsd,v 1.3 2005/08/09 13:17:35 hugo Exp $
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:tns="http://www.w3.org/2005/08/addressing"
+ targetNamespace="http://www.w3.org/2005/08/addressing"
+ blockDefault="#all"
+ elementFormDefault="qualified"
+ finalDefault=""
+ attributeFormDefault="unqualified">
+
+ <!-- Constructs from the WS-Addressing Core -->
+
+ <xs:element name="EndpointReference" type="tns:EndpointReferenceType"/>
+ <xs:complexType name="EndpointReferenceType" mixed="false">
+ <xs:sequence>
+ <xs:element name="Address" type="tns:AttributedURIType"/>
+ <xs:element name="ReferenceParameters" type="tns:ReferenceParametersType" minOccurs="0"/>
+ <xs:element ref="tns:Metadata" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:complexType name="ReferenceParametersType" mixed="false">
+ <xs:sequence>
+ <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:element name="Metadata" type="tns:MetadataType"/>
+ <xs:complexType name="MetadataType" mixed="false">
+ <xs:sequence>
+ <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:element name="MessageID" type="tns:AttributedURIType"/>
+ <xs:element name="RelatesTo" type="tns:RelatesToType"/>
+ <xs:complexType name="RelatesToType" mixed="false">
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attribute name="RelationshipType" type="tns:RelationshipTypeOpenEnum" use="optional" default="http://www.w3.org/2005/08/addressing/reply"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:simpleType name="RelationshipTypeOpenEnum">
+ <xs:union memberTypes="tns:RelationshipType xs:anyURI"/>
+ </xs:simpleType>
+
+ <xs:simpleType name="RelationshipType">
+ <xs:restriction base="xs:anyURI">
+ <xs:enumeration value="http://www.w3.org/2005/08/addressing/reply"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:element name="ReplyTo" type="tns:EndpointReferenceType"/>
+ <xs:element name="From" type="tns:EndpointReferenceType"/>
+ <xs:element name="FaultTo" type="tns:EndpointReferenceType"/>
+ <xs:element name="To" type="tns:AttributedURIType"/>
+ <xs:element name="Action" type="tns:AttributedURIType"/>
+
+ <xs:complexType name="AttributedURIType" mixed="false">
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <!-- Constructs from the WS-Addressing SOAP binding -->
+
+ <xs:attribute name="IsReferenceParameter" type="xs:boolean"/>
+
+ <xs:simpleType name="FaultCodesOpenEnumType">
+ <xs:union memberTypes="tns:FaultCodesType xs:QName"/>
+ </xs:simpleType>
+
+ <xs:simpleType name="FaultCodesType">
+ <xs:restriction base="xs:QName">
+ <xs:enumeration value="tns:InvalidAddressingHeader"/>
+ <xs:enumeration value="tns:InvalidAddress"/>
+ <xs:enumeration value="tns:InvalidEPR"/>
+ <xs:enumeration value="tns:InvalidCardinality"/>
+ <xs:enumeration value="tns:MissingAddressInEPR"/>
+ <xs:enumeration value="tns:DuplicateMessageID"/>
+ <xs:enumeration value="tns:ActionMismatch"/>
+ <xs:enumeration value="tns:MessageAddressingHeaderRequired"/>
+ <xs:enumeration value="tns:DestinationUnreachable"/>
+ <xs:enumeration value="tns:ActionNotSupported"/>
+ <xs:enumeration value="tns:EndpointUnavailable"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:element name="RetryAfter" type="tns:AttributedUnsignedLongType"/>
+ <xs:complexType name="AttributedUnsignedLongType" mixed="false">
+ <xs:simpleContent>
+ <xs:extension base="xs:unsignedLong">
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:element name="ProblemHeaderQName" type="tns:AttributedQNameType"/>
+ <xs:complexType name="AttributedQNameType" mixed="false">
+ <xs:simpleContent>
+ <xs:extension base="xs:QName">
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:element name="ProblemHeader" type="tns:AttributedAnyType"/>
+ <xs:complexType name="AttributedAnyType" mixed="false">
+ <xs:sequence>
+ <xs:any namespace="##any" processContents="lax" minOccurs="1" maxOccurs="1"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:element name="ProblemIRI" type="tns:AttributedURIType"/>
+
+ <xs:element name="ProblemAction" type="tns:ProblemActionType"/>
+ <xs:complexType name="ProblemActionType" mixed="false">
+ <xs:sequence>
+ <xs:element ref="tns:Action" minOccurs="0"/>
+ <xs:element name="SoapAction" minOccurs="0" type="xs:anyURI"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+</xs:schema>
\ No newline at end of file
Added: trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.wsdl
===================================================================
--- trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.wsdl (rev 0)
+++ trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.wsdl 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<wsdl:definitions
+ targetNamespace='http://schemas.xmlsoap.org/ws/2004/08/eventing'
+ xmlns:wse='http://schemas.xmlsoap.org/ws/2004/08/eventing'
+ xmlns:wsa10='http://www.w3.org/2005/08/addressing'
+ xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
+ xmlns:xs='http://www.w3.org/2001/XMLSchema'
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+ <wsdl:types>
+ <xs:import namespace="http://schemas.xmlsoap.org/ws/2004/08/eventing" schemaLocation="http://schemas.xmlsoap.org/ws/2004/08/eventing/eventing.xsd"/>
+ </wsdl:types>
+
+ <wsdl:message name='SubscribeMsg'>
+ <wsdl:part name='body' element='wse:Subscribe'/>
+ </wsdl:message>
+ <wsdl:message name='SubscribeResponseMsg'>
+ <wsdl:part name='body' element='wse:SubscribeResponse'/>
+ </wsdl:message>
+
+ <wsdl:message name='RenewMsg'>
+ <wsdl:part name='body' element='wse:Renew'/>
+ </wsdl:message>
+ <wsdl:message name='RenewResponseMsg'>
+ <wsdl:part name='body' element='wse:RenewResponse'/>
+ </wsdl:message>
+
+ <wsdl:message name='GetStatusMsg'>
+ <wsdl:part name='body' element='wse:GetStatus'/>
+ </wsdl:message>
+ <wsdl:message name='GetStatusResponseMsg'>
+ <wsdl:part name='body' element='wse:GetStatusResponse'/>
+ </wsdl:message>
+
+ <wsdl:message name='UnsubscribeMsg'>
+ <wsdl:part name='body' element='wse:Unsubscribe'/>
+ </wsdl:message>
+ <wsdl:message name='UnsubscribeResponseMsg'/>
+
+ <wsdl:message name='SubscriptionEnd'>
+ <wsdl:part name='body' element='wse:SubscriptionEnd'/>
+ </wsdl:message>
+
+ <wsdl:portType name='EventSource'>
+ <wsdl:operation name='SubscribeOp'>
+ <wsdl:input message='wse:SubscribeMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe'/>
+ <wsdl:output message='wse:SubscribeResponseMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/SubscribeResponse'/>
+ </wsdl:operation>
+ <wsdl:operation name='SubscriptionEnd'>
+ <wsdl:output message='wse:SubscriptionEnd'/>
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:portType name='SubscriptionManager'>
+ <wsdl:operation name='RenewOp'>
+ <wsdl:input message='wse:RenewMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/Renew'/>
+ <wsdl:output message='wse:RenewResponseMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/RenewResponse'/>
+ </wsdl:operation>
+ <wsdl:operation name='GetStatusOp'>
+ <wsdl:input message='wse:GetStatusMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/GetStatus'/>
+ <wsdl:output message='wse:GetStatusResponseMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/GetStatusResponse'/>
+ </wsdl:operation>
+ <wsdl:operation name='UnsubscribeOp'>
+ <wsdl:input message='wse:UnsubscribeMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe'/>
+ <wsdl:output message='wse:UnsubscribeResponseMsg' wsa10:Action='http://schemas.xmlsoap.org/ws/2004/08/eventing/UnsubscribeResponse'/>
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:binding name="EventSourceBinding" type="wse:EventSource">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="SubscribeOp">
+ <soap:operation soapAction=""/>
+ <wsdl:input>
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="SubscriptionEnd">
+ <soap:operation soapAction=""/>
+ <wsdl:output>
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:binding name="SubscriptionManagerBinding" type="wse:SubscriptionManager">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="GetStatusOp">
+ <soap:operation soapAction=""/>
+ <wsdl:input>
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="RenewOp">
+ <soap:operation soapAction=""/>
+ <wsdl:input>
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="UnsubscribeOp">
+ <soap:operation soapAction=""/>
+ <wsdl:input>
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="EventingService">
+ <wsdl:port name="EventSourcePort" binding="wse:EventSourceBinding">
+ <soap:address location="http://@jbosstest.host.name@:8080/jaxws-samples-wseventing/subscribe"/>
+ </wsdl:port>
+ <wsdl:port name="SubscriptionManagerPort" binding="wse:SubscriptionManagerBinding">
+ <soap:address location="http://@jbosstest.host.name@:8080/jaxws-samples-wseventing/manage"/>
+ </wsdl:port>
+ </wsdl:service>
+
+
+</wsdl:definitions>
\ No newline at end of file
Added: trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.xsd
===================================================================
--- trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.xsd (rev 0)
+++ trunk/jbossws-tests/src/main/resources/jaxws/samples/wseventing/WEB-INF/wsdl/ws-eventing.xsd 2007-01-18 15:42:20 UTC (rev 1997)
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+(c) 2004 BEA Systems Inc., Computer Associates International, Inc., International Business Machines Corporation, Microsoft Corporation, Inc, Sun Microsystems, Inc., and TIBCO Software Inc. All rights reserved.
+
+BEA Systems Inc., Computer Associates International, Inc., International Business Machines Corporation, Microsoft Corporation, Inc, Sun Microsystems, Inc, and TIBCO Software Inc (collectively, the "Authors") hereby grant you permission to copy and display the WS-Eventing Specification (the "Specification", which includes WSDL and schema documents), in any medium without fee or royalty, provided that you include the following on ALL copies of the Specification, that you make:
+
+1. A link or URL to the WS-Eventing Specification at one of the Authors' websites
+2. The copyright notice as shown in the WS-Eventing Specification.
+
+BEA, CA, IBM, Microsoft, Sun and TIBCO (collectively, the "Authors") each agree to grant you a license, under royalty-free and otherwise reasonable, non-discriminatory terms and conditions, to their respective essential patent claims that they deem necessary to implement the Specification.
+
+THE SPECIFICATION IS PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE SPECIFICATION ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+
+THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THE SPECIFICATION.
+
+The name and trademarks of the Authors may NOT be used in any manner, including advertising or publicity pertaining to the Specification or its contents without specific, written prior permission. Title to copyright in the Specification will at all times remain with the Authors.
+
+No other rights are granted by implication, estoppel or otherwise.
+-->
+<xs:schema targetNamespace="http://schemas.xmlsoap.org/ws/2004/08/eventing"
+ xmlns:tns="http://schemas.xmlsoap.org/ws/2004/08/eventing"
+ xmlns:wsa="http://www.w3.org/2005/08/addressing"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ blockDefault="#all">
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xs:import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="ws-addr.xsd"/>
+
+ <!-- Types and global elements -->
+ <xs:complexType name="DeliveryType" mixed="true">
+ <xs:sequence>
+ <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="Mode" type="xs:anyURI" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:element name="NotifyTo" type="wsa:EndpointReferenceType"/>
+
+ <xs:simpleType name="NonNegativeDurationType">
+ <xs:restriction base="xs:duration">
+ <xs:minInclusive value="P0Y0M0DT0H0M0S"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="ExpirationType">
+ <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType"/>
+ </xs:simpleType>
+
+ <xs:complexType name="FilterType" mixed="true">
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="Dialect" type="xs:anyURI" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:complexType name="LanguageSpecificStringType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <!-- Subscribe request -->
+ <xs:element name="Subscribe">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="EndTo" type="wsa:EndpointReferenceType" minOccurs="0"/>
+ <xs:element name="Delivery" type="tns:DeliveryType"/>
+ <xs:element name="Expires" type="tns:ExpirationType" minOccurs="0"/>
+ <xs:element name="Filter" type="tns:FilterType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Identifier" type="xs:anyURI"/>
+
+ <!-- Subscribe response -->
+ <xs:element name="SubscribeResponse">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="SubscriptionManager" type="wsa:EndpointReferenceType"/>
+ <xs:element name="Expires" type="tns:ExpirationType"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- Used in a fault if there's an unsupported dialect -->
+ <xs:element name="SupportedDialect" type="xs:anyURI"/>
+
+ <!-- Used in a fault if there's an unsupported delivery mode -->
+ <xs:element name="SupportedDeliveryMode" type="xs:anyURI"/>
+
+ <!-- Renew request -->
+ <xs:element name="Renew">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Expires" type="tns:ExpirationType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- Renew response -->
+ <xs:element name="RenewResponse">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Expires" type="tns:ExpirationType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- GetStatus request -->
+ <xs:element name="GetStatus">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- GetStatus response -->
+ <xs:element name="GetStatusResponse">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Expires" type="tns:ExpirationType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- Unsubscribe request -->
+ <xs:element name="Unsubscribe">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- count(/s:Envelope/s:Body/*) = 0 for Unsubscribe response -->
+
+ <!-- SubscriptionEnd message -->
+ <xs:element name="SubscriptionEnd">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="SubscriptionManager" type="wsa:EndpointReferenceType"/>
+ <xs:element name="Code" type="tns:OpenSubscriptionEndCodeType"/>
+ <xs:element name="Reason" type="tns:LanguageSpecificStringType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:simpleType name="SubscriptionEndCodeType">
+ <xs:restriction base="xs:QName">
+ <xs:enumeration value="tns:DeliveryFailure"/>
+ <xs:enumeration value="tns:SourceShuttingDown"/>
+ <xs:enumeration value="tns:SourceCancelling"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="OpenSubscriptionEndCodeType">
+ <xs:union memberTypes="tns:SubscriptionEndCodeType xs:QName"/>
+ </xs:simpleType>
+
+ <xs:attribute name="EventSource" type="xs:boolean"/>
+
+</xs:schema>
\ No newline at end of file
19 years, 3 months