cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dk...@apache.org
Subject svn commit: r1161285 [2/2] - in /cxf/trunk/rt: frontend/simple/src/main/java/org/apache/cxf/frontend/ ws/mex/ ws/mex/src/ ws/mex/src/main/ ws/mex/src/main/java/ ws/mex/src/main/java/org/ ws/mex/src/main/java/org/apache/ ws/mex/src/main/java/org/apache/...
Date Wed, 24 Aug 2011 21:27:36 GMT
Added: cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd?rev=1161285&view=auto
==============================================================================
--- cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd (added)
+++ cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd Wed Aug 24 21:27:35 2011
@@ -0,0 +1,296 @@
+<xs:schema
+    targetNamespace='http://www.w3.org/2009/09/ws-mex'
+    xmlns:tns='http://www.w3.org/2009/09/ws-mex'
+    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/2005/08/addressing'
+      schemaLocation='ws-addr.xsd'/>
+
+  <!-- Types and global elements -->
+  <xs:simpleType name='QNameSerialization'>
+    <xs:restriction base='xs:string'>
+      <xs:pattern value='\{.*\}.+'/>
+      <!-- A QName w/o a namespace-uri is realized as "{}local-name} -->
+    </xs:restriction>
+  </xs:simpleType>
+
+  <!-- GetWSDL request -->
+  <xs:element name='GetWSDL'>
+    <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>
+
+  <!-- GetWSDL response -->
+  <xs:element name='GetWSDLResponse'>
+    <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>
+
+  <!-- Get Metadata request -->
+  <xs:element name='GetMetadata'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref='tns:Dialect' 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>
+
+  <!-- Get Metadata response -->
+  <xs:element name='GetMetadataResponse'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref='tns:Metadata'/>
+        <xs:any namespace='##other' processContents='lax' minOccurs='0'
+                maxOccurs='unbounded'/>
+      </xs:sequence>
+      <xs:attribute name='Content' type='xs:anyURI'/>
+      <xs:anyAttribute namespace='##other' processContents='lax'/>
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Put Metadata request -->
+  <xs:element name='PutMetadata'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref='tns:Metadata'/>
+        <xs:any namespace='##other' processContents='lax' minOccurs='0'
+                maxOccurs='unbounded'/>
+      </xs:sequence>
+      <xs:anyAttribute namespace='##other' processContents='lax'/>
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Put Metadata response -->
+  <xs:element name='PutMetadataResponse'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref='tns:Metadata'/>
+        <xs:any namespace='##other' processContents='lax' minOccurs='0'
+                maxOccurs='unbounded'/>
+      </xs:sequence>
+      <xs:anyAttribute namespace='##other' processContents='lax'/>
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Delete Metadata request -->
+  <xs:element name='DeleteMetadata'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref='tns:Dialect' 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>
+
+  <!-- Delete Metadata response -->
+  <xs:element name='DeleteMetadataResponse'>
+    <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>
+
+  <xs:element name='Dialect'>
+    <xs:complexType>
+      <xs:attribute name='Type' type='tns:QNameSerialization' use='required'/>
+      <xs:attribute name='Identifier' type='xs:anyURI'/>
+      <xs:attribute name='Content' type='xs:anyURI'/>
+      <xs:anyAttribute namespace='##other' processContents='lax'/>
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Metadata -->
+  <xs:element name='Metadata'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref='tns:MetadataSection'
+                    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:element name='MetadataSection'>
+    <xs:complexType>
+      <xs:choice>
+        <xs:any namespace='##other' processContents='lax'/>
+        <xs:element name='MetadataReference' type='wsa:EndpointReferenceType' />
+        <xs:element name='MetadataLocation' type='tns:URI'/>
+      </xs:choice>
+      <xs:attribute name='Dialect' type='tns:QNameSerialization' use='required'/>
+      <xs:attribute name='Identifier' type='xs:anyURI' use='required'/>
+      <xs:anyAttribute namespace='##other' processContents='lax'/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:complexType name='LocationType'>
+    <xs:sequence>
+      <xs:any namespace='##other' processContents='lax' minOccurs='0'
+              maxOccurs='unbounded'/>
+    </xs:sequence>
+    <xs:attribute name='URL'  type='xs:anyURI' use='required'/>
+    <xs:attribute name='Type' type='tns:QNameSerialization'  use='required'/>
+    <xs:attribute name='Identifier' type='xs:anyURI' use='required'/>
+    <xs:anyAttribute namespace='##other' processContents='lax'/>
+  </xs:complexType>
+  <xs:element name='Location' type='tns:LocationType'/>
+
+  <xs:complexType name='ReferenceType'>
+    <xs:complexContent>
+      <xs:extension base='wsa:EndpointReferenceType'>
+        <xs:attribute name='Type' type='tns:QNameSerialization'  use='required'/>
+        <xs:attribute name='Identifier' type='xs:anyURI' use='required'/>
+        <xs:anyAttribute processContents='lax'/>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+  <xs:element name='Reference' type='tns:ReferenceType'/>
+
+  <!-- Policy -->
+  <xs:complexType name='URI'>
+    <xs:simpleContent>
+      <xs:extension base='xs:anyURI'>
+        <xs:anyAttribute namespace='##other' processContents='lax'/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+
+  <xs:element name='MetadataExchange'>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name='GetMetadataSupported' minOccurs='0'>
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name='MetadataExchangeDialect' 
+                          minOccurs='0' maxOccurs='unbounded'>
+                <xs:complexType>
+                  <xs:sequence>
+                    <xs:element name='MetadataContent' 
+                                minOccurs='0' maxOccurs='unbounded'>
+                      <xs:complexType>
+                        <xs:sequence>
+                          <xs:any namespace='##other' processContents='lax' 
+                                  minOccurs='0' maxOccurs='0'/>
+                        </xs:sequence>
+                        <xs:attribute name='URI' type='xs:anyURI' 
+                                                 use='required' />
+                        <xs:anyAttribute namespace="##other" 
+                                         processContents='lax'/>
+                      </xs:complexType>
+                    </xs:element>
+                    <xs:any namespace='##other' processContents='lax'
+                            minOccurs='0' maxOccurs='unbounded'/>
+                  </xs:sequence>
+                  <xs:attribute name='URI' type='xs:anyURI' 
+                                use='required'/>
+                  <xs:anyAttribute namespace='##other' 
+                                   processContents='lax'/>
+                </xs:complexType>
+              </xs:element>
+              <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='PutMetadataSupported' minOccurs='0'>
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name='MetadataExchangeDialect' 
+                          minOccurs='0' maxOccurs='unbounded'>
+                <xs:complexType>
+                  <xs:sequence>
+                    <xs:element name='MetadataContent' 
+                                minOccurs='0' maxOccurs='unbounded'>
+                      <xs:complexType>
+                        <xs:sequence>
+                          <xs:any namespace='##other' processContents='lax' 
+                                  minOccurs='0' maxOccurs='0'/>
+                        </xs:sequence>
+                        <xs:attribute name='URI' type='xs:anyURI' 
+                                                 use='required' />
+                        <xs:anyAttribute namespace="##other" 
+                                         processContents='lax'/>
+                      </xs:complexType>
+                    </xs:element>
+                    <xs:any namespace='##other' processContents='lax'
+                            minOccurs='0' maxOccurs='unbounded'/>
+                  </xs:sequence>
+                  <xs:attribute name='URI' type='xs:anyURI' 
+                                use='required'/>
+                  <xs:anyAttribute namespace='##other' 
+                                   processContents='lax'/>
+                </xs:complexType>
+              </xs:element>
+              <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='DeleteMetadataSupported' minOccurs='0'>
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name='MetadataExchangeDialect' 
+                          minOccurs='0' maxOccurs='unbounded'>
+                <xs:complexType>
+                  <xs:sequence>
+                    <xs:element name='MetadataContent' 
+                                minOccurs='0' maxOccurs='unbounded'>
+                      <xs:complexType>
+                        <xs:sequence>
+                          <xs:any namespace='##other' processContents='lax' 
+                                  minOccurs='0' maxOccurs='0'/>
+                        </xs:sequence>
+                        <xs:attribute name='URI' type='xs:anyURI' 
+                                                 use='required' />
+                        <xs:anyAttribute namespace="##other" 
+                                         processContents='lax'/>
+                      </xs:complexType>
+                    </xs:element>
+                    <xs:any namespace='##other' processContents='lax'
+                            minOccurs='0' maxOccurs='unbounded'/>
+                  </xs:sequence>
+                  <xs:attribute name='URI' type='xs:anyURI' 
+                                use='required'/>
+                  <xs:anyAttribute namespace='##other' 
+                                   processContents='lax'/>
+                </xs:complexType>
+              </xs:element>
+              <xs:any namespace='##other' processContents='lax' 
+                      minOccurs='0' maxOccurs='unbounded'/>
+            </xs:sequence>
+            <xs:anyAttribute namespace='##other' processContents='lax' />
+          </xs:complexType>
+        </xs:element>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+
+</xs:schema>

Propchange: cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/rt/ws/mex/src/main/model/metadataexchange.xsd
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd?rev=1161285&view=auto
==============================================================================
--- cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd (added)
+++ cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd Wed Aug 24 21:27:35 2011
@@ -0,0 +1,146 @@
+<?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
+-->
+<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">
+	
+	<!-- Constructs from the WS-Addressing Core -->
+
+	<xs:element name="EndpointReference" type="tns:EndpointReferenceType"/>
+	<xs:complexType name="EndpointReferenceType">
+		<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">
+		<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">
+		<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">
+		<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">
+		<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">
+		<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">
+		<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">
+		<xs:sequence>
+			<xs:any namespace="##any" processContents="lax"/>
+		</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">
+		<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>

Propchange: cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/rt/ws/mex/src/main/model/ws-addr.xsd
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cxf/trunk/rt/ws/mex/src/main/resources/META-INF/cxf/bus-extensions.txt
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/ws/mex/src/main/resources/META-INF/cxf/bus-extensions.txt?rev=1161285&view=auto
==============================================================================
--- cxf/trunk/rt/ws/mex/src/main/resources/META-INF/cxf/bus-extensions.txt (added)
+++ cxf/trunk/rt/ws/mex/src/main/resources/META-INF/cxf/bus-extensions.txt Wed Aug 24 21:27:35
2011
@@ -0,0 +1 @@
+org.apache.cxf.ws.mex.MEXServerListener::true

Propchange: cxf/trunk/rt/ws/mex/src/main/resources/META-INF/cxf/bus-extensions.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/ws/mex/src/main/resources/META-INF/cxf/bus-extensions.txt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: cxf/trunk/rt/ws/mex/src/test/java/org/apache/cxf/ws/mex/MEXTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/ws/mex/src/test/java/org/apache/cxf/ws/mex/MEXTest.java?rev=1161285&view=auto
==============================================================================
--- cxf/trunk/rt/ws/mex/src/test/java/org/apache/cxf/ws/mex/MEXTest.java (added)
+++ cxf/trunk/rt/ws/mex/src/test/java/org/apache/cxf/ws/mex/MEXTest.java Wed Aug 24 21:27:35
2011
@@ -0,0 +1,101 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.ws.mex;
+
+import javax.jws.WebMethod;
+import javax.jws.WebService;
+
+import org.apache.cxf.endpoint.Server;
+import org.apache.cxf.feature.LoggingFeature;
+import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
+import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
+import org.apache.cxf.transport.local.LocalTransportFactory;
+import org.apache.cxf.ws.mex.model._2004_09.Metadata;
+
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+
+/**
+ * 
+ */
+public class MEXTest extends Assert {
+    static Server server;
+    static Server mexServer;
+    
+    @WebService(targetNamespace = "org.apache.cxf.ws.mex.test.Echo")
+    public static class EchoImpl {
+        @WebMethod
+        public String echo(String text) {
+            return text;
+        }
+    }
+
+    /**
+     * @throws java.lang.Exception
+     */
+    @BeforeClass
+    public static void setUpBeforeClass() throws Exception {
+        JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();
+        factory.setServiceBean(new EchoImpl());
+        factory.setAddress("local://Echo");
+        factory.setTransportId(LocalTransportFactory.TRANSPORT_ID);
+        server = factory.create();
+        
+        factory = new JaxWsServerFactoryBean();
+        factory.setServiceBean(new MEXEndpoint(server));
+        factory.setAddress("local://Echo-mex");
+        factory.setTransportId(LocalTransportFactory.TRANSPORT_ID);
+        factory.getFeatures().add(new LoggingFeature());
+        mexServer = factory.create();
+
+    }
+
+    /**
+     * @throws java.lang.Exception
+     */
+    @AfterClass
+    public static void tearDownAfterClass() throws Exception {
+        server.destroy();
+        mexServer.destroy();
+    }
+
+    @Test
+    public void testGet() {
+        // Create the client
+        JaxWsProxyFactoryBean proxyFac = new JaxWsProxyFactoryBean();
+        proxyFac.setAddress("local://Echo-mex");
+        proxyFac.getClientFactoryBean().setTransportId(LocalTransportFactory.TRANSPORT_ID);
+        MetadataExchange exc = proxyFac.create(MetadataExchange.class);
+        Metadata metadata = exc.get2004();
+        assertNotNull(metadata);
+        
+        
+        proxyFac = new JaxWsProxyFactoryBean();
+        proxyFac.setAddress("local://Echo");
+        proxyFac.getClientFactoryBean().setTransportId(LocalTransportFactory.TRANSPORT_ID);
+        exc = proxyFac.create(MetadataExchange.class);
+        metadata = exc.get2004();
+        assertNotNull(metadata);
+    }
+
+}

Propchange: cxf/trunk/rt/ws/mex/src/test/java/org/apache/cxf/ws/mex/MEXTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/ws/mex/src/test/java/org/apache/cxf/ws/mex/MEXTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date



Mime
View raw message