You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "James Phillpotts (Created) (JIRA)" <ji...@apache.org> on 2011/12/01 17:12:40 UTC
[jira] [Created] (CXF-3945) AegisSchemaValidationInInterceptor
trying to setup validation for ?wsdl request
AegisSchemaValidationInInterceptor trying to setup validation for ?wsdl request
-------------------------------------------------------------------------------
Key: CXF-3945
URL: https://issues.apache.org/jira/browse/CXF-3945
Project: CXF
Issue Type: Bug
Affects Versions: 2.4.1
Reporter: James Phillpotts
I have a service that is using Aegis for the databindings. If I switch on message validation as follows:
{code:xml}
<jaxws:properties>
<entry key="schema-validation-enabled" value="true"/>
</jaxws:properties>
{code}
And then make a request for the WSDL, http://localhost:8080/webservices/soap/myService?wsdl I get the following response:
{code:xml}
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>Fault occurred while processing.</faultstring>
</soap:Fault>
</soap:Body>
</soap:Envelope>
{code}
And the following stack trace:
{noformat}
java.lang.NullPointerException
at org.apache.cxf.wstx_msv_validation.Stax2ValidationUtils.setupValidation(Stax2ValidationUtils.java:71)
at org.apache.cxf.wstx_msv_validation.WoodstoxValidationImpl.setupValidation(WoodstoxValidationImpl.java:67)
at org.apache.cxf.aegis.databinding.AegisSchemaValidationInInterceptor.setSchemaInMessage(AegisSchemaValidationInInterceptor.java:68)
at org.apache.cxf.aegis.databinding.AegisSchemaValidationInInterceptor.handleMessage(AegisSchemaValidationInInterceptor.java:56)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:118)
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:208)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:205)
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:113)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:184)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
{noformat}
It looks like this is because there is no XMLStreamReader for a GET request. This could be fixed by changing the handleMessage method in AegisSchemaValidationInInterceptor to only call setSchemaInMessage if it is not a WSDL GET request.
Found in version 2.4.1, but checked trunk source code, and there don't appear to have been any changes here.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (CXF-3945) AegisSchemaValidationInInterceptor
trying to setup validation for ?wsdl request
Posted by "Daniel Kulp (Resolved) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-3945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp resolved CXF-3945.
------------------------------
Resolution: Duplicate
Fix Version/s: 2.4.4
Assignee: Daniel Kulp
This is a duplicate of CXF-3846 which is already fixed.
> AegisSchemaValidationInInterceptor trying to setup validation for ?wsdl request
> -------------------------------------------------------------------------------
>
> Key: CXF-3945
> URL: https://issues.apache.org/jira/browse/CXF-3945
> Project: CXF
> Issue Type: Bug
> Affects Versions: 2.4.1
> Reporter: James Phillpotts
> Assignee: Daniel Kulp
> Fix For: 2.4.4
>
>
> I have a service that is using Aegis for the databindings. If I switch on message validation as follows:
> {code:xml}
> <jaxws:properties>
> <entry key="schema-validation-enabled" value="true"/>
> </jaxws:properties>
> {code}
> And then make a request for the WSDL, http://localhost:8080/webservices/soap/myService?wsdl I get the following response:
> {code:xml}
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
> <soap:Body>
> <soap:Fault>
> <faultcode>soap:Server</faultcode>
> <faultstring>Fault occurred while processing.</faultstring>
> </soap:Fault>
> </soap:Body>
> </soap:Envelope>
> {code}
> And the following stack trace:
> {noformat}
> java.lang.NullPointerException
> at org.apache.cxf.wstx_msv_validation.Stax2ValidationUtils.setupValidation(Stax2ValidationUtils.java:71)
> at org.apache.cxf.wstx_msv_validation.WoodstoxValidationImpl.setupValidation(WoodstoxValidationImpl.java:67)
> at org.apache.cxf.aegis.databinding.AegisSchemaValidationInInterceptor.setSchemaInMessage(AegisSchemaValidationInInterceptor.java:68)
> at org.apache.cxf.aegis.databinding.AegisSchemaValidationInInterceptor.handleMessage(AegisSchemaValidationInInterceptor.java:56)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:118)
> at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:208)
> at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223)
> at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:205)
> at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:113)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:184)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:112)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
> {noformat}
> It looks like this is because there is no XMLStreamReader for a GET request. This could be fixed by changing the handleMessage method in AegisSchemaValidationInInterceptor to only call setSchemaInMessage if it is not a WSDL GET request.
> Found in version 2.4.1, but checked trunk source code, and there don't appear to have been any changes here.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira