You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Thomas Whitmore (JIRA)" <ji...@apache.org> on 2014/11/27 03:30:12 UTC

[jira] [Created] (CXF-6118) SchemaValidation IN on web-service wrongly set SchemaValidation IN on client

Thomas Whitmore created CXF-6118:
------------------------------------

             Summary: SchemaValidation IN on web-service wrongly set SchemaValidation IN on client
                 Key: CXF-6118
                 URL: https://issues.apache.org/jira/browse/CXF-6118
             Project: CXF
          Issue Type: Bug
          Components: JAX-RS
    Affects Versions: 2.7.8
         Environment: Java 1.7.0_51,
Spring Framework 3.2.0,
Windows 7
            Reporter: Thomas Whitmore
            Priority: Minor


Disabling input schema-validation for my <jaxws:client> was unsuccessful following the docs. Neither 'false' nor 'NONE' were effective and the client (an integration test) was still validating & throwing exceptions.

Debugging the CXF code, I found Message.SCHEMA_VALIDATION_ENABLED being set to 'IN' by code in AbstractInDatabindingInterceptor.setOperationSchemaValidation(). This setting of 'IN' appears to be coming from the Service/ Endpoint definitions!

I had defined the service (LoanApplicationWS) as validating IN (by means of annotations). When I changed the service validation to NONE, client was no longer forced to validate.

There are two issues here:
1) Service/Endpoint validation settings, should not automatically be overriding Client settings 
2) Service OUT validation corresponds to Client IN validation;  the directions are inverted.

The background here, is to extend a service & schema designed for "complete" Loan Applications to be able to retrieve "draft" applications -- which are only partly-formed, and thus do not include some elements required in the schema.

For this reason, I intend to disable output validation of the Service; and correspondingly disable input validation at the Client.

However, CXF is somehow finding validation settings Service/Endpoint and applying them (in an incorrect directional sense) to the Client.

I've included screenshots of the Client 1) broken and 2) working, according to changes to the Service validation setting.

Please find a partial project attached containing a few relevant files & the screenshots.

Thanks,
Regards
Thomas



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)