Marco Stettler created CXF-7076: ----------------------------------- Summary: Intermittent failure in WSDL cache Key: CXF-7076 URL: https://issues.apache.org/jira/browse/CXF-7076 Project: CXF Issue Type: Bug Components: JAX-WS Runtime, Services Affects Versions: 3.1.1 Environment: Oracle JDK 1.8.0_91 Tomcat 8.0.23 Reporter: Marco Stettler Priority: Blocker
We have an error in the production environment that we can't reproduce locally. The error: {quote} Caused by: org.apache.cxf.wsdl11.WSDLRuntimeException: Part parameters defined as element http://mynamespace MyService which is not in the schema. at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildMessage(WSDLServiceBuilder.java:886) at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildInterfaceOperation(WSDLServiceBuilder.java:615) at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildInterface(WSDLServiceBuilder.java:593) at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(WSDLServiceBuilder.java:353) at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(WSDLServiceBuilder.java:209) at org.apache.cxf.wsdl11.WSDLServiceFactory.create(WSDLServiceFactory.java:162) at org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:405) at org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:525) at org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:261) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199) at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:102) at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:157) at org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142) at org.apache.cxf.jaxws.ServiceImpl.createPort(ServiceImpl.java:493) at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:359) at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:350) at javax.xml.ws.Service.getPort(Service.java:119) at ch.mynamespace.MyService.getMyService() {quote} It looks like the WSDLManagerImpl gives not the correct cached SchemaCollection for the Service. Following the code for creating the client: {quote} private static final URL WSDL_RESOURCE = MyTest.class.getClassLoader().getResource("/wsdl/MyService.wsdl"); ... MyServicePort myServicePort = new MyService(WSDL_RESOURCE).getMyService(); {quote} This runs per invocation. We are on a webservice intermediate, so its possible to run in some sort of concurrency problem. As mentioned before, the error occours intermittent (about every 2 weeks). We are speaking about some load, but not that heavy (about 15k requests per day). I think it could be the same as there: https://issues.jboss.org/browse/JBWS-3973 I'll inform if I have updates. As the production environment is involved, i have to investigate and must have a solution as quick as possible. Thanks Marco -- This message was sent by Atlassian JIRA (v6.3.4#6332)