Updating the wsdl's & schemas to the newest version published by the OASIS ws-tx group.
Updating to Axis2 trunk...
Adding codegen support to ws-coor wsdl's..
diff --git a/conf/ActivationCoordinator/META-INF/services.xml b/conf/ActivationCoordinator/META-INF/services.xml
index f422904..1729cc7 100644
--- a/conf/ActivationCoordinator/META-INF/services.xml
+++ b/conf/ActivationCoordinator/META-INF/services.xml
@@ -1,10 +1,22 @@
-<service name="ActivationCoordinator">
+<!--service name="ActivationCoordinator">
<description>
Coordination service.
</description>
<parameter name="ServiceClass" locked="xsd:false">org.apache.kandula.wscoor.ActivationPortTypeRawXMLSkeleton</parameter>
<operation name="createCoordinationContextOperation">
- <actionMapping>http://docs.oasis-open.org/ws-tx/wscoor/2006/03/CreateCoordinationContext</actionMapping>
+ <actionMapping>http://docs.oasis-open.org/ws-tx/wscoor/2006/06/CreateCoordinationContext</actionMapping>
<messageReceiver class="org.apache.kandula.wscoor.ActivationPortTypeRawXMLSyncMessageReceiver"/>
</operation>
-</service>
+</service-->
+
+<serviceGroup>
+<service name="ActivationCoordinator">
+<messageReceivers>
+<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.kandula.wscoor.ActivationServiceMessageReceiverInOut"/>
+</messageReceivers>
+<parameter name="ServiceClass" locked="false">org.apache.kandula.wscoor.ActivationServiceSkeleton</parameter>
+<operation name="CreateCoordinationContextOperation" mep="http://www.w3.org/2004/08/wsdl/in-out">
+<actionMapping>http://docs.oasis-open.org/ws-tx/wscoor/2006/06/CreateCoordinationContext</actionMapping>
+</operation>
+</service>
+</serviceGroup>
\ No newline at end of file
diff --git a/conf/RegistrationCoordinator/META-INF/services.xml b/conf/RegistrationCoordinator/META-INF/services.xml
index 538201a..0bcab3e 100644
--- a/conf/RegistrationCoordinator/META-INF/services.xml
+++ b/conf/RegistrationCoordinator/META-INF/services.xml
@@ -1,10 +1,12 @@
-<service name="RegistrationCoordinator">
- <description>
- Coordination service.
- </description>
- <parameter name="ServiceClass" locked="xsd:false">org.apache.kandula.wscoor.RegistrationPortTypeRawXMLSkeleton</parameter>
- <operation name="registerOperation">
- <actionMapping>http://docs.oasis-open.org/ws-tx/wscoor/2006/03/Register</actionMapping>
- <messageReceiver class="org.apache.kandula.wscoor.RegistrationPortTypeRawXMLSyncMessageReceiver"/>
- </operation>
-</service>
+<serviceGroup>
+<service name="RegistrationCoordinator">
+<messageReceivers>
+<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.kandula.wscoor.RegistrationServiceMessageReceiverInOut"/>
+</messageReceivers>
+<parameter name="ServiceClass" locked="false">org.apache.kandula.wscoor.RegistrationServiceSkeleton</parameter>
+<operation name="RegisterOperation" mep="http://www.w3.org/2004/08/wsdl/in-out">
+<actionMapping>http://docs.oasis-open.org/ws-tx/wscoor/2006/06/Register</actionMapping>
+<outputActionMapping>http://docs.oasis-open.org/ws-tx/wscoor/2006/06/RegistrationPortType/RegisterOperationResponse</outputActionMapping>
+</operation>
+</service>
+</serviceGroup>
diff --git a/maven.xml b/maven.xml
index b8299e1..5525260 100644
--- a/maven.xml
+++ b/maven.xml
@@ -11,18 +11,29 @@
</path>
</goal>
+ <preGoal name="java:compile">
+ <attainGoal name="generate:code"/>
+ <path id="generated.src.path">
+ <pathelement location="target/src"/>
+ </path>
+ <maven:addPath id="maven.compile.src.set" refid="generated.src.path"/>
+ </preGoal>
+
<goal name="generate:code">
<!-- Code generating for the WS-Coordination WSDL -->
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="maven.dependency.classpath" />
<arg line=" -o target -p org.apache.kandula.wscoor -g -ss -sd -sn RegistrationService -uri schema/wscoor.wsdl" />
</java>
+ <delete file="target/src/org/apache/kandula/wscoor/RegistrationServiceSkeleton.java"/>
+
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="maven.dependency.classpath" />
<arg line=" -o target -p org.apache.kandula.wscoor -g -ss -sd -sn ActivationService -uri schema/wscoor.wsdl" />
</java>
-
- <!-- Code generating for the WS-AT WSDL -->
+ <delete file="target/src/org/apache/kandula/wscoor/ActivationServiceSkeleton.java"/>
+
+ <!-- Code generating for the WS-AT WSDL >
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="maven.dependency.classpath" />
<arg line=" -o target -p org.apache.kandula.wsat.twopc -g -ss -sd -sn Participant2PCService -uri schema/wsat.wsdl" />
@@ -38,9 +49,9 @@
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="maven.dependency.classpath" />
<arg line=" -o target -p org.apache.kandula.wsat.completion -g -ss -sd -sn CompletionCoordinator -uri schema/wsat.wsdl" />
- </java>
+ </java-->
- <!-- Code generating for the WS-BA WSDL -->
+ <!-- Code generating for the WS-BA WSDL >
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="maven.dependency.classpath" />
<arg line=" -o target -p org.apache.kandula.wsba -g -ss -sd -sn BAParticipantCompletionParticipantService -uri schema/wsba.wsdl" />
@@ -56,7 +67,7 @@
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="maven.dependency.classpath" />
<arg line=" -o target -p org.apache.kandula.wsba -g -ss -sd -sn BAParticipantCompletionCoordinatorService -uri schema/wsba.wsdl" />
- </java>
+ </java-->
</goal>
<postGoal name="test:compile">
diff --git a/project.properties b/project.properties
index 8e54f09..9246e7d 100644
--- a/project.properties
+++ b/project.properties
@@ -49,10 +49,10 @@
# -------------------------------------------------------------------
# Versions of dependencies
# -------------------------------------------------------------------
-axis2.version=1.1
+axis2.version=SNAPSHOT
activation.version=1.1
annogen.version=0.1.0
-axiom.version=1.2
+axiom.version=SNAPSHOT
backport_util_concurrent.version=2.2
commons.codec.version=1.3
commons.httpclient.version=3.0.1
diff --git a/project.xml b/project.xml
index 0d4abaa..5687428 100644
--- a/project.xml
+++ b/project.xml
@@ -127,6 +127,11 @@
<version>${axiom.version}</version>
</dependency>
<dependency>
+ <groupId>org.apache.ws.commons.axiom</groupId>
+ <artifactId>axiom-dom</artifactId>
+ <version>${axiom.version}</version>
+ </dependency>
+ <dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>${wsdl4j.version}</version>
diff --git a/schema/addr.xsd b/schema/addr.xsd
new file mode 100644
index 0000000..4760919
--- /dev/null
+++ b/schema/addr.xsd
@@ -0,0 +1,145 @@
+<?xml version="1.0"?>
+<!--
+ Copyright © 2002-2004 BEA Systems Inc., International Business Machines Corporation,
+ Microsoft Corporation, Inc, SAP AG, and Sun Microsystems, Inc.. All rights reserved.
+
+ Permission to copy, display, perform, modify and distribute the WS-Addressing Specification,
+ and to authorize others to do the foregoing, in any medium without fee or royalty is hereby
+ granted for the purpose of developing and evaluating the WS-Addressing Specification.
+
+ BEA, IBM, Microsoft, SAP AG, and Sun Microsystems (collectively, the "Authors") each agree
+ to grant a license to third parties, under royalty-free and otherwise reasonable,
+ non-discriminatory terms and conditions, to their respective essential patent claims that
+ they deem necessary to implement the WS-Addressing Specification.
+
+ DISCLAIMERS:
+
+ THE WS-Addressing 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 WS-Addressing Specification IS 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 ANY USE OF THE WS-Addressing Specification OR THE PERFORMANCE OR
+ IMPLEMENTATION OF THE CONTENTS THEREOF.
+
+ You may remove these disclaimers from your modified versions of the WS-Addressing
+ Specification provided that you effectively disclaim all warranties and liabilities on behalf
+ of all copyright holders in the copies of any such modified versions you distribute.
+
+ The name and trademarks of the Authors may NOT be used in any manner, including advertising
+ or publicity pertaining to the WS-Addressing Specification or its contents without specific,
+ written prior permission. Title to copyright in the WS-Addressing 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/addressing"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
+ elementFormDefault="qualified" blockDefault="#all">
+ <!-- //////////////////// WS-Addressing //////////////////// -->
+ <!-- Endpoint reference -->
+ <xs:element name="EndpointReference" type="wsa:EndpointReferenceType" />
+ <xs:complexType name="EndpointReferenceType">
+ <xs:sequence>
+ <xs:element name="Address" type="wsa:AttributedURI" />
+ <xs:element name="ReferenceProperties"
+ type="wsa:ReferencePropertiesType" minOccurs="0" />
+ <xs:element name="ReferenceParameters"
+ type="wsa:ReferenceParametersType" minOccurs="0" />
+ <xs:element name="PortType" type="wsa:AttributedQName"
+ minOccurs="0" />
+ <xs:element name="ServiceName" type="wsa:ServiceNameType"
+ minOccurs="0" />
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>
+ If "Policy" elements from namespace
+ "http://schemas.xmlsoap.org/ws/2002/12/policy#policy"
+ are used, they must appear first (before any
+ extensibility elements).
+ </xs:documentation>
+ </xs:annotation>
+ </xs:any>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax" />
+ </xs:complexType>
+ <xs:complexType name="ReferencePropertiesType">
+ <xs:sequence>
+ <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ReferenceParametersType">
+ <xs:sequence>
+ <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ServiceNameType">
+ <xs:simpleContent>
+ <xs:extension base="xs:QName">
+ <xs:attribute name="PortName" type="xs:NCName" />
+ <xs:anyAttribute namespace="##other" processContents="lax" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <!-- Message information header blocks -->
+ <xs:element name="MessageID" type="wsa:AttributedURI" />
+ <xs:element name="RelatesTo" type="wsa:Relationship" />
+ <xs:element name="To" type="wsa:AttributedURI" />
+ <xs:element name="Action" type="wsa:AttributedURI" />
+ <xs:element name="From" type="wsa:EndpointReferenceType" />
+ <xs:element name="ReplyTo" type="wsa:EndpointReferenceType" />
+ <xs:element name="FaultTo" type="wsa:EndpointReferenceType" />
+ <xs:complexType name="Relationship">
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attribute name="RelationshipType" type="xs:QName"
+ use="optional" />
+ <xs:anyAttribute namespace="##other" processContents="lax" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="RelationshipTypeValues">
+ <xs:restriction base="xs:QName">
+ <xs:enumeration value="wsa:Reply" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:element name="ReplyAfter" type="wsa:ReplyAfterType" />
+ <xs:complexType name="ReplyAfterType">
+ <xs:simpleContent>
+ <xs:extension base="xs:nonNegativeInteger">
+ <xs:anyAttribute namespace="##other" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="FaultSubcodeValues">
+ <xs:restriction base="xs:QName">
+ <xs:enumeration value="wsa:InvalidMessageInformationHeader" />
+ <xs:enumeration value="wsa:MessageInformationHeaderRequired" />
+ <xs:enumeration value="wsa:DestinationUnreachable" />
+ <xs:enumeration value="wsa:ActionNotSupported" />
+ <xs:enumeration value="wsa:EndpointUnavailable" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attribute name="Action" type="xs:anyURI" />
+ <!-- Common declarations and definitions -->
+ <xs:complexType name="AttributedQName">
+ <xs:simpleContent>
+ <xs:extension base="xs:QName">
+ <xs:anyAttribute namespace="##other" processContents="lax" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="AttributedURI">
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:anyAttribute namespace="##other" processContents="lax" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/schema/ws-addr.xsd b/schema/ws-addr.xsd
index 00ac788..a8c3b09 100644
--- a/schema/ws-addr.xsd
+++ b/schema/ws-addr.xsd
@@ -1,153 +1,164 @@
<?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">
+ 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: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 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: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: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:any namespace="##any" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded" />
</xs:sequence>
- <xs:anyAttribute namespace="##other" processContents="lax"/>
+ <xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
-
- <xs:element name="Metadata" type="tns:MetadataType"/>
+
+ <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:any namespace="##any" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded" />
</xs:sequence>
- <xs:anyAttribute namespace="##other" processContents="lax"/>
+ <xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
-
- <xs:element name="MessageID" type="tns:AttributedURIType"/>
- <xs:element name="RelatesTo" type="tns:RelatesToType"/>
+
+ <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: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: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: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: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: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:attribute name="IsReferenceParameter" type="xs:boolean" />
+
<xs:simpleType name="FaultCodesOpenEnumType">
- <xs:union memberTypes="tns:FaultCodesType xs:QName"/>
+ <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: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: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: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:anyAttribute namespace="##other" processContents="lax" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
-
- <xs:element name="ProblemHeaderQName" type="tns:AttributedQNameType"/>
+
+ <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:anyAttribute namespace="##other" processContents="lax" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
-
- <xs:element name="ProblemHeader" type="tns:AttributedAnyType"/>
+
+ <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:any namespace="##any" processContents="lax" minOccurs="1"
+ maxOccurs="1" />
</xs:sequence>
- <xs:anyAttribute namespace="##other" processContents="lax"/>
+ <xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
-
- <xs:element name="ProblemIRI" type="tns:AttributedURIType"/>
-
- <xs:element name="ProblemAction" type="tns:ProblemActionType"/>
+
+ <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 ref="tns:Action" minOccurs="0" />
<xs:element name="SoapAction" minOccurs="0" type="xs:anyURI"/>
</xs:sequence>
diff --git a/schema/wsat.xsd b/schema/wsat.xsd
index a00bf5c..021d377 100644
--- a/schema/wsat.xsd
+++ b/schema/wsat.xsd
@@ -1,33 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) OASIS Open 2006. -->
-<xsd:schema targetNamespace="http://docs.oasis-open.org/ws-tx/wsat/2006/06" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsat="http://docs.oasis-open.org/ws-tx/wsat/2006/06" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
- <xsd:complexType name="Notification">
- <xsd:sequence>
- <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
- <xsd:element name="Prepare" type="wsat:Notification"/>
- <xsd:element name="Prepared" type="wsat:Notification"/>
- <xsd:element name="Aborted" type="wsat:Notification"/>
- <xsd:element name="ReadOnly" type="wsat:Notification"/>
- <xsd:element name="Commit" type="wsat:Notification"/>
- <xsd:element name="Rollback" type="wsat:Notification"/>
- <xsd:element name="Committed" type="wsat:Notification"/>
- <xsd:simpleType name="ErrorCodes">
- <xsd:restriction base="xsd:QName">
- <xsd:enumeration value="wsat:InconsistentInternalState"/>
- <xsd:enumeration value="wsat:UnknownTransaction"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- Policy assertion -->
- <xsd:element name="ATAssertion">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
+<xsd:schema targetNamespace="http://docs.oasis-open.org/ws-tx/wsat/2006/06"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsat="http://docs.oasis-open.org/ws-tx/wsat/2006/06"
+ elementFormDefault="qualified" attributeFormDefault="unqualified"
+ version="1.0">
+ <xsd:complexType name="Notification">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:anyAttribute namespace="##other" processContents="lax" />
+ </xsd:complexType>
+ <xsd:element name="Prepare" type="wsat:Notification" />
+ <xsd:element name="Prepared" type="wsat:Notification" />
+ <xsd:element name="Aborted" type="wsat:Notification" />
+ <xsd:element name="ReadOnly" type="wsat:Notification" />
+ <xsd:element name="Commit" type="wsat:Notification" />
+ <xsd:element name="Rollback" type="wsat:Notification" />
+ <xsd:element name="Committed" type="wsat:Notification" />
+ <xsd:simpleType name="ErrorCodes">
+ <xsd:restriction base="xsd:QName">
+ <xsd:enumeration value="wsat:InconsistentInternalState" />
+ <xsd:enumeration value="wsat:UnknownTransaction" />
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- Policy assertion -->
+ <xsd:element name="ATAssertion">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ <xsd:anyAttribute namespace="##other" processContents="lax" />
+ </xsd:complexType>
</xsd:element>
</xsd:schema>
\ No newline at end of file
diff --git a/schema/wscoor.xsd b/schema/wscoor.xsd
index fbe4ead..1b9607a 100644
--- a/schema/wscoor.xsd
+++ b/schema/wscoor.xsd
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) OASIS Open 2006. -->
-<xsd:schema targetNamespace="http://docs.oasis-open.org/ws-tx/wscoor/2006/06" xmlns:wscoor="http://docs.oasis-open.org/ws-tx/wscoor/2006/06" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
+<xsd:schema targetNamespace="http://docs.oasis-open.org/ws-tx/wscoor/2006/06" xmlns:wscoor="http://docs.oasis-open.org/ws-tx/wscoor/2006/06" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<!-- Replaced wsa:endpointnreference with xsd:any due to Axis2 ADB not being able parse ws-addr.xsd.. -->
- <!-- xsd:import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="ws-addr.xsd"/-->
+ <xsd:import namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing" schemaLocation="addr.xsd"/>
<xsd:element name="Expires">
<xsd:complexType>
<xsd:simpleContent>
@@ -25,7 +25,7 @@
</xsd:element>
<xsd:element ref="wscoor:Expires" minOccurs="0"/>
<xsd:element name="CoordinationType" type="xsd:anyURI"/>
- <xsd:element name="RegistrationService" type="xsd:anyType"/>
+ <xsd:element name="RegistrationService" type="wsa:EndpointReferenceType"/>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
@@ -71,7 +71,7 @@
<xsd:complexType name="RegisterType">
<xsd:sequence>
<xsd:element name="ProtocolIdentifier" type="xsd:anyURI"/>
- <xsd:element name="ParticipantProtocolService" type="xsd:anyType"/>
+ <xsd:element name="ParticipantProtocolService" type="wsa:EndpointReferenceType"/>
<xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
@@ -79,7 +79,7 @@
<xsd:element name="Register" type="wscoor:RegisterType"/>
<xsd:complexType name="RegisterResponseType">
<xsd:sequence>
- <xsd:element name="CoordinatorProtocolService" type="xsd:anyType"/>
+ <xsd:element name="CoordinatorProtocolService" type="wsa:EndpointReferenceType"/>
<xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
diff --git a/test/interop/InteropTest.java b/test/interop/InteropTest.java
index 903c1d7..c210c7e 100644
--- a/test/interop/InteropTest.java
+++ b/test/interop/InteropTest.java
@@ -28,8 +28,7 @@
public class InteropTest extends TestCase {
- EndpointReference coordinator = new EndpointReference(
- "http://127.0.0.1:8086/axis2/services/ActivationCoordinator");
+ String coordinatorEPR = "http://127.0.0.1:8086/axis2/services/ActivationCoordinator";
String axis2Repo = "target/initiator-repository";
@@ -49,39 +48,34 @@
}
public void testCompletionCommit() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
tm.commit();
}
public void testCompletionRollback() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager( axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
tm.rollback();
}
public void testCommit() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
stub.commitOperation();
tm.commit();
}
public void testRollback() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(true);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
stub.rollbackOperation();
tm.rollback();
}
public void testPhase2Rollback() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
stub.phase2RollbackOperation();
boolean done = false;
@@ -94,24 +88,21 @@
}
public void testReadonly() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
stub.readonlyOperation();
tm.commit();
}
public void testVolatileAndDurable() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
stub.readonlyOperation();
tm.commit();
}
public void testEarlyAborted() throws Exception {
- TransactionManager tm = new TransactionManager(Constants.WS_AT,
- coordinator, axis2Repo, axis2XML);
- tm.begin(false);
+ TransactionManager tm = new TransactionManager(axis2Repo, axis2XML);
+ tm.begin(coordinatorEPR);
stub.earlyAbortedOperation();
Thread.sleep(5000);
}
diff --git a/test/interop/testService.java b/test/interop/testService.java
index f5e13d4..6f54f52 100644
--- a/test/interop/testService.java
+++ b/test/interop/testService.java
@@ -34,8 +34,8 @@
import org.apache.kandula.faults.AbstractKandulaException;
import org.apache.kandula.participant.KandulaResource;
import org.apache.kandula.participant.ParticipantUtility;
-import org.apache.kandula.storage.StorageFactory;
import org.apache.kandula.storage.Store;
+import org.apache.kandula.storage.StorageUtils;
import org.apache.kandula.wsat.twopc.CoordinatorPortTypeRawXMLStub;
/**
@@ -65,9 +65,8 @@
String reqID = (String) msgcts
.getProperty(AbstractContext.REQUESTER_ID);
- Store store = StorageFactory.getInstance().getStore();
- ATParticipantContext participantContext = (ATParticipantContext) store
- .get(reqID);
+ ATParticipantContext participantContext = (ATParticipantContext) StorageUtils
+ .getContext(reqID);
CoordinationContext coordinationContext = participantContext
.getCoordinationContext();
@@ -75,15 +74,16 @@
participantContext2.setCoordinationContext(coordinationContext);
KandulaResource resource1 = new Phase2RollbackTestVolatileResource();
participantContext2.setResource(resource1);
- store.put(participantContext2.getID(), participantContext2);
- ParticipantUtility.registerParticipant(participantContext2);
+ StorageUtils.putContext(participantContext2);
+ MessageContext currentMessageContext = MessageContext.getCurrentMessageContext();
+ ParticipantUtility.registerParticipant(participantContext2,currentMessageContext);
ATParticipantContext participantContext1 = new ATParticipantContext();
participantContext1.setCoordinationContext(coordinationContext);
KandulaResource resource = new RollbackTestResource();
participantContext1.setResource(resource);
- store.put(participantContext1.getID(), participantContext1);
- ParticipantUtility.registerParticipant(participantContext1);
+ StorageUtils.putContext(participantContext1);
+ ParticipantUtility.registerParticipant(participantContext1,currentMessageContext);
return getResponseElement();
}
@@ -92,9 +92,8 @@
String reqID = (String) msgcts
.getProperty(AbstractContext.REQUESTER_ID);
- Store store = StorageFactory.getInstance().getStore();
- ATParticipantContext participantContext = (ATParticipantContext) store
- .get(reqID);
+ ATParticipantContext participantContext = (ATParticipantContext) StorageUtils
+ .getContext(reqID);
CoordinationContext coordinationContext = participantContext
.getCoordinationContext();
@@ -102,15 +101,16 @@
participantContext2.setCoordinationContext(coordinationContext);
KandulaResource resource1 = new DurableReadOnlyResource();
participantContext2.setResource(resource1);
- store.put(participantContext2.getID(), participantContext2);
- ParticipantUtility.registerParticipant(participantContext2);
+ StorageUtils.putContext(participantContext2);
+ MessageContext messageContext = MessageContext.getCurrentMessageContext();
+ ParticipantUtility.registerParticipant(participantContext2,messageContext);
ATParticipantContext participantContext1 = new ATParticipantContext();
participantContext1.setCoordinationContext(coordinationContext);
KandulaResource resource = new CommitTestResource();
participantContext1.setResource(resource);
- store.put(participantContext1.getID(), participantContext1);
- ParticipantUtility.registerParticipant(participantContext1);
+ StorageUtils.putContext(participantContext1);
+ ParticipantUtility.registerParticipant(participantContext1,messageContext);
return getResponseElement();
}
@@ -119,9 +119,8 @@
String reqID = (String) msgcts
.getProperty(AbstractContext.REQUESTER_ID);
- final Store store = StorageFactory.getInstance().getStore();
- ATParticipantContext participantContext = (ATParticipantContext) store
- .get(reqID);
+ ATParticipantContext participantContext = (ATParticipantContext) StorageUtils
+ .getContext(reqID);
final CoordinationContext coordinationContext = participantContext
.getCoordinationContext();
@@ -129,8 +128,9 @@
participantContext2.setCoordinationContext(coordinationContext);
KandulaResource resource1 = new VolatileAndDurableTestVolatileResource();
participantContext2.setResource(resource1);
- store.put(participantContext2.getID(), participantContext2);
- ParticipantUtility.registerParticipant(participantContext2);
+ StorageUtils.putContext(participantContext2);
+ final MessageContext messageContext = MessageContext.getCurrentMessageContext();
+ ParticipantUtility.registerParticipant(participantContext2,messageContext);
Thread thread = new Thread(new Runnable() {
public void run() {
try {
@@ -139,17 +139,17 @@
.setCoordinationContext(coordinationContext);
KandulaResource resource = new CommitTestResource();
participantContext1.setResource(resource);
- store.put(participantContext1.getID(), participantContext1);
+ StorageUtils.putContext(participantContext1);
Map referenceParametersmap = participantContext2
.getCoordinationEPR().getAllReferenceParameters();
String id = ((OMElement) referenceParametersmap
.get(Constants.TRANSACTION_ID_PARAMETER)).getText();
- AbstractContext transaction = (AbstractContext) store
- .get(id);
+ AbstractContext transaction = (AbstractContext) StorageUtils
+ .getContext(id);
while (!(transaction.getStatus() == Status.CoordinatorStatus.STATUS_PREPARING_VOLATILE)) {
}
- ParticipantUtility.registerParticipant(participantContext1);
+ ParticipantUtility.registerParticipant(participantContext1,messageContext);
} catch (AxisFault e) {
// TODO Auto-generated catch block
@@ -165,9 +165,7 @@
String reqID = (String) msgcts
.getProperty(AbstractContext.REQUESTER_ID);
- Store store = StorageFactory.getInstance().getStore();
- ATParticipantContext participantContext = (ATParticipantContext) store
- .get(reqID);
+ ATParticipantContext participantContext = (ATParticipantContext) StorageUtils.getContext(reqID);
CoordinationContext coordinationContext = participantContext
.getCoordinationContext();
@@ -175,15 +173,16 @@
participantContext2.setCoordinationContext(coordinationContext);
KandulaResource resource1 = new CommitTestResource();
participantContext2.setResource(resource1);
- store.put(participantContext2.getID(), participantContext2);
- ParticipantUtility.registerParticipant(participantContext2);
+ StorageUtils.putContext( participantContext2);
+ MessageContext messageContext = MessageContext.getCurrentMessageContext();
+ ParticipantUtility.registerParticipant(participantContext2,messageContext);
ATParticipantContext participantContext1 = new ATParticipantContext();
participantContext1.setCoordinationContext(coordinationContext);
KandulaResource resource = new VolatileReadOnlyResource();
participantContext1.setResource(resource);
- store.put(participantContext1.getID(), participantContext1);
- ParticipantUtility.registerParticipant(participantContext1);
+ StorageUtils.putContext(participantContext1);
+ ParticipantUtility.registerParticipant(participantContext1,messageContext);
CoordinatorPortTypeRawXMLStub stub;
try {
diff --git a/test/org/apache/kandula/integration/CompletionCommitTest.java b/test/org/apache/kandula/integration/CompletionCommitTest.java
index f4d1319..a34f09f 100644
--- a/test/org/apache/kandula/integration/CompletionCommitTest.java
+++ b/test/org/apache/kandula/integration/CompletionCommitTest.java
@@ -28,7 +28,6 @@
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.ConfigurationContextFactory;
import org.apache.axis2.transport.http.SimpleHTTPServer;
-import org.apache.kandula.Constants;
import org.apache.kandula.initiator.TransactionManager;
public class CompletionCommitTest extends TestCase {
@@ -81,14 +80,9 @@
}
public void testEchoXMLASync() throws Exception {
- TransactionManager tm = new TransactionManager(
- Constants.WS_AT,
- new EndpointReference(
- "http://localhost:8081/axis2/services/ActivationCoordinator"),
- "target/initiator-repository",
+ TransactionManager tm = new TransactionManager("target/initiator-repository",
"target/initiator-repository/axis2.xml");
- tm.begin(false);
-
+ tm.begin("http://localhost:8081/axis2/services/ActivationCoordinator");
stub.creditOperation();
tm.commit();
Thread.sleep(5000);