You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2017/04/05 19:15:50 UTC
[1/2] cxf git commit: [CXF-6768] Add ws-addr schema to catalog for
offline support This closes #108
Repository: cxf
Updated Branches:
refs/heads/master 60d257751 -> 8dd8b14da
[CXF-6768] Add ws-addr schema to catalog for offline support
This closes #108
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/8dd8b14d
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/8dd8b14d
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/8dd8b14d
Branch: refs/heads/master
Commit: 8dd8b14da69ae7a56d0c39c3c1e6405394763419
Parents: 29af9d4
Author: Nick Birnie <ni...@seebyte.com>
Authored: Tue Feb 16 17:15:03 2016 +0000
Committer: Daniel Kulp <dk...@apache.org>
Committed: Wed Apr 5 14:49:11 2017 -0400
----------------------------------------------------------------------
.../main/resources/META-INF/jax-ws-catalog.xml | 7 +
.../apache/cxf/ws/discovery/wsdl/ws-addr.xsd | 137 +++++++++++++++++++
2 files changed, 144 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/8dd8b14d/services/ws-discovery/ws-discovery-api/src/main/resources/META-INF/jax-ws-catalog.xml
----------------------------------------------------------------------
diff --git a/services/ws-discovery/ws-discovery-api/src/main/resources/META-INF/jax-ws-catalog.xml b/services/ws-discovery/ws-discovery-api/src/main/resources/META-INF/jax-ws-catalog.xml
new file mode 100644
index 0000000..c3c1540
--- /dev/null
+++ b/services/ws-discovery/ws-discovery-api/src/main/resources/META-INF/jax-ws-catalog.xml
@@ -0,0 +1,7 @@
+<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"
+ prefer="system">
+
+ <system
+ systemId="http://www.w3.org/2006/03/addressing/ws-addr.xsd"
+ uri="classpath:/org/apache/cxf/ws/discovery/wsdl/ws-addr.xsd"/>
+</catalog>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cxf/blob/8dd8b14d/services/ws-discovery/ws-discovery-api/src/main/resources/org/apache/cxf/ws/discovery/wsdl/ws-addr.xsd
----------------------------------------------------------------------
diff --git a/services/ws-discovery/ws-discovery-api/src/main/resources/org/apache/cxf/ws/discovery/wsdl/ws-addr.xsd b/services/ws-discovery/ws-discovery-api/src/main/resources/org/apache/cxf/ws/discovery/wsdl/ws-addr.xsd
new file mode 100644
index 0000000..47362ed
--- /dev/null
+++ b/services/ws-discovery/ws-discovery-api/src/main/resources/org/apache/cxf/ws/discovery/wsdl/ws-addr.xsd
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ 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.2 2008/07/23 13:38:16 plehegar 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 ref="tns:ReferenceParameters" 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:element name="ReferenceParameters" type="tns:ReferenceParametersType"/>
+ <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="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>
[2/2] cxf git commit: [CXF-6919] For soap 1.2,
make sure the fault code is valid
Posted by dk...@apache.org.
[CXF-6919] For soap 1.2, make sure the fault code is valid
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/29af9d48
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/29af9d48
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/29af9d48
Branch: refs/heads/master
Commit: 29af9d48cee34521fcc9bc27a79d15f5781916a9
Parents: 60d2577
Author: Daniel Kulp <dk...@apache.org>
Authored: Wed Apr 5 11:29:05 2017 -0400
Committer: Daniel Kulp <dk...@apache.org>
Committed: Wed Apr 5 14:49:11 2017 -0400
----------------------------------------------------------------------
.../apache/cxf/binding/soap/saaj/SAAJUtils.java | 39 +++++++++++++-------
1 file changed, 25 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/29af9d48/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJUtils.java
----------------------------------------------------------------------
diff --git a/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJUtils.java b/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJUtils.java
index c29af06..96a1701 100644
--- a/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJUtils.java
+++ b/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJUtils.java
@@ -21,12 +21,14 @@ package org.apache.cxf.binding.soap.saaj;
import javax.xml.namespace.QName;
import javax.xml.soap.SOAPBody;
+import javax.xml.soap.SOAPConstants;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPFault;
import javax.xml.soap.SOAPHeader;
import javax.xml.soap.SOAPMessage;
+import org.apache.cxf.binding.soap.Soap12;
import org.apache.cxf.common.util.StringUtils;
/**
@@ -52,24 +54,33 @@ public final class SAAJUtils {
return m.getSOAPPart().getEnvelope().getBody();
}
}
+
public static void setFaultCode(SOAPFault f, QName code) throws SOAPException {
- try {
- f.setFaultCode(code);
- } catch (Throwable t) {
- int count = 1;
- String pfx = "fc1";
- while (!StringUtils.isEmpty(f.getNamespaceURI(pfx))) {
- count++;
- pfx = "fc" + count;
+ if (f.getNamespaceURI().equals(Soap12.SOAP_NAMESPACE)) {
+ try {
+ f.setFaultCode(code);
+ } catch (SOAPException ex) {
+ f.setFaultCode(SOAPConstants.SOAP_SENDER_FAULT);
+ f.appendFaultSubcode(code);
}
- if (code.getNamespaceURI() != null && !"".equals(code.getNamespaceURI())) {
- f.addNamespaceDeclaration(pfx, code.getNamespaceURI());
- } else {
- f.addNamespaceDeclaration(pfx, f.getNamespaceURI());
+ } else {
+ try {
+ f.setFaultCode(code);
+ } catch (Throwable t) {
+ int count = 1;
+ String pfx = "fc1";
+ while (!StringUtils.isEmpty(f.getNamespaceURI(pfx))) {
+ count++;
+ pfx = "fc" + count;
+ }
+ if (code.getNamespaceURI() != null && !"".equals(code.getNamespaceURI())) {
+ f.addNamespaceDeclaration(pfx, code.getNamespaceURI());
+ } else {
+ f.addNamespaceDeclaration(pfx, f.getNamespaceURI());
+ }
+ f.setFaultCode(pfx + ":" + code.getLocalPart());
}
- f.setFaultCode(pfx + ":" + code.getLocalPart());
}
-
}
public static SOAPElement adjustPrefix(SOAPElement e, String prefix) {