You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Freeman Fang (JIRA)" <ji...@apache.org> on 2013/08/02 11:17:49 UTC

[jira] [Commented] (CXF-5169) the schema-validation-enabled property doesn't work for OUT message validation

    [ https://issues.apache.org/jira/browse/CXF-5169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13727495#comment-13727495 ] 

Freeman Fang commented on CXF-5169:
-----------------------------------

Hi,

Currently in CXF we do schema validation in databinding(like jaxb) when marshal/unmarshal, but your testcase are using jaxws provider, which means you build the XML source yourself, so there's no marshal from CXF kick in in this case.

Anyway, you actually can build a schema validator yourself from the wsdl model in an interceptor and do the schema validation yourself. Take a look at related discussion[1] to get more details.

I think in CXF we should support this OOTB if schema validation is ON for a provider endpoint.
[1]http://cxf.547215.n5.nabble.com/Schema-validation-in-Provider-services-td559458.html

Freeman
                
> the schema-validation-enabled property doesn't work for OUT message validation
> ------------------------------------------------------------------------------
>
>                 Key: CXF-5169
>                 URL: https://issues.apache.org/jira/browse/CXF-5169
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.7.6
>            Reporter: Xilai Dai
>            Assignee: Freeman Fang
>         Attachments: test_validation_service.zip
>
>
> With this configuration: 
> {code}
> <jaxws:endpoint ...>
> ......
>   <jaxws:properties>
>       <entry key="schema-validation-enabled" value="true" />
>   </jaxws:properties>
> </jaxws:endpoint>
> {code}
> then, the schema validation for Request(IN) message works well, but it doesn't take any effect for Response(OUT) message.
> the schema (from WSDL) piece example which I used is:
> {code}
> <xsd:element name="DemoServiceOperationResponse">
>     <xsd:complexType>
>         <xsd:sequence>
>             <xsd:element name="out">
>                   <xsd:simpleType>
>                        <xsd:restriction base="xsd:string">
>                        <xsd:minLength value="20"></xsd:minLength>
>                        <xsd:maxLength value="30"></xsd:maxLength>
>                        </xsd:restriction>
>                   </xsd:simpleType>
>              </xsd:element>
>         </xsd:sequence>
>     </xsd:complexType>
> </xsd:element>
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira