Author: ningjiang
Date: Mon Oct 27 07:07:40 2008
New Revision: 708189

URL: http://svn.apache.org/viewvc?rev=708189&view=rev
Log:
CAMEL-1029 Added  a test to verify the configuration of the schema vaildation

Modified:
    
activemq/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfWsdlFirstTest.java
    
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstBeans.xml
    
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstProcessor.xml
    activemq/camel/trunk/components/camel-cxf/src/test/resources/person.wsdl

Modified: 
activemq/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfWsdlFirstTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfWsdlFirstTest.java?rev=708189&r1=708188&r2=708189&view=diff
==============================================================================
--- 
activemq/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfWsdlFirstTest.java
 (original)
+++ 
activemq/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfWsdlFirstTest.java
 Mon Oct 27 07:07:40 2008
@@ -21,8 +21,10 @@
 import java.util.List;
 
 import javax.xml.namespace.QName;
+import javax.xml.ws.BindingProvider;
 import javax.xml.ws.Endpoint;
 import javax.xml.ws.Holder;
+import javax.xml.ws.WebServiceException;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
@@ -101,6 +103,16 @@
         } catch (UnknownPersonFault fault) {
             // We expect to get fault here
         }
+        
+        personId.value = "Invoking getPerson with invalid length string, 
expecting exception...xxxxxxxxx";
+        try {            
+            client.getPerson(personId, ssn, name);
+            fail("We expect to get the WebSerivceException here");        
+        } catch (WebServiceException ex) {
+            // Caught expected WebServiceException here
+            assertTrue("Should get the xml vaildate error!", 
ex.getMessage().indexOf("MyStringType") > 0);         
+        }
+
     }
 
     @SuppressWarnings("unchecked")

Modified: 
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstBeans.xml
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstBeans.xml?rev=708189&r1=708188&r2=708189&view=diff
==============================================================================
--- 
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstBeans.xml
 (original)
+++ 
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstBeans.xml
 Mon Oct 27 07:07:40 2008
@@ -30,19 +30,25 @@
                    serviceClass="org.apache.camel.wsdl_first.Person"
                    endpointName="person:soap"
                    serviceName="person:PersonService"
-                   xmlns:person="http://camel.apache.org/wsdl-first"/>
+                   wsdlURL="person.wsdl"
+                   xmlns:person="http://camel.apache.org/wsdl-first";>
+      <cxf:properties>            
+            <entry key="schema-validation-enabled" value="true" />
+      </cxf:properties>           
+  </cxf:cxfEndpoint> 
 
 
   <cxf:cxfEndpoint id="serviceEndpoint" 
address="http://localhost:9000/PersonService/";
                    serviceClass="org.apache.camel.wsdl_first.Person"
                    endpointName="person:soap"
-                   serviceName="person:PersonService"
+                   serviceName="person:PersonService"                   
                    xmlns:person="http://camel.apache.org/wsdl-first"/>
+      
 
    <camelContext id="camel" 
xmlns="http://activemq.apache.org/camel/schema/spring";>
       <route>
-            <from uri="cxf:bean:routerEndpoint?dataFormat=MESSAGE"/>
-            <to uri="cxf:bean:serviceEndpoint?dataFormat=MESSAGE"/>
+            <from uri="cxf:bean:routerEndpoint"/>
+            <to uri="cxf:bean:serviceEndpoint"/>
       </route>
 
       <route>

Modified: 
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstProcessor.xml
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstProcessor.xml?rev=708189&r1=708188&r2=708189&view=diff
==============================================================================
--- 
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstProcessor.xml
 (original)
+++ 
activemq/camel/trunk/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstProcessor.xml
 Mon Oct 27 07:07:40 2008
@@ -30,15 +30,20 @@
                address="http://localhost:8092/PersonService/";
                serviceClass="org.apache.camel.wsdl_first.Person"
                endpointName="person:soap"
+               wsdlURL="person.wsdl"
                serviceName="person:PersonService"
-               xmlns:person="http://camel.apache.org/wsdl-first"; />
+               xmlns:person="http://camel.apache.org/wsdl-first";>
+        <cxf:properties>            
+            <entry key="schema-validation-enabled" value="true" />
+        </cxf:properties>
+    </cxf:cxfEndpoint> 
 
        <cxf:cxfEndpoint id="serviceEndpoint"
                address="http://localhost:9000/PersonService/";
                serviceClass="org.apache.camel.wsdl_first.Person"
-               endpointName="person:soap"
+               endpointName="person:soap"              
                serviceName="person:PersonService"
-               xmlns:person="http://camel.apache.org/wsdl-first"; />
+               xmlns:person="http://camel.apache.org/wsdl-first"/>    
 
        <bean id="personProcessor"
                class="org.apache.camel.wsdl_first.PersonProcessor" />

Modified: 
activemq/camel/trunk/components/camel-cxf/src/test/resources/person.wsdl
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-cxf/src/test/resources/person.wsdl?rev=708189&r1=708188&r2=708189&view=diff
==============================================================================
--- activemq/camel/trunk/components/camel-cxf/src/test/resources/person.wsdl 
(original)
+++ activemq/camel/trunk/components/camel-cxf/src/test/resources/person.wsdl 
Mon Oct 27 07:07:40 2008
@@ -28,19 +28,29 @@
        targetNamespace="http://camel.apache.org/wsdl-first";>
 
        <wsdl:types>
-               <xsd:schema 
targetNamespace="http://camel.apache.org/wsdl-first/types";
-                           elementFormDefault="qualified">
+       <xsd:schema targetNamespace="http://camel.apache.org/wsdl-first/types";
+           xmlns="http://www.w3.org/2001/XMLSchema";
+           xmlns:tns="http://camel.apache.org/wsdl-first/types";            
+               elementFormDefault="qualified">
+               
+               <simpleType name="MyStringType">
+                       <restriction base="string">
+                               <maxLength value="30" />
+                       </restriction>
+               </simpleType>
+
+
                        <xsd:element name="GetPerson">
                          <xsd:complexType>
                                        <xsd:sequence>
-                                               <xsd:element name="personId" 
type="xsd:string"/>
+                                               <xsd:element name="personId" 
type="tns:MyStringType"/>
                                        </xsd:sequence>
                                </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="GetPersonResponse">
                          <xsd:complexType>
                                        <xsd:sequence>
-                                           <xsd:element name="personId" 
type="xsd:string"/>
+                                           <xsd:element name="personId" 
type="tns:MyStringType"/>
                                                <xsd:element name="ssn" 
type="xsd:string"/>
                                                <xsd:element name="name" 
type="xsd:string"/>
                                        </xsd:sequence>


Reply via email to