0

i'm trying to deploy a JAX-WS Web Service on a WAS 8.5 server installed on a *nix OS. I get the following errors:

[3/1/13 15:31:19:687 CET] 000003c0 WSServerMetad E   WSWS7055E: The WEB-INF/wsdl/KeyPushTargetService.wsdl Web Services Description Language (WSDL) file specified by annotations in class com.cryptomathic.ckms.KeyPushTargetServiceSoapImpl cannot be loaded correctly due to the following error: java.lang.RuntimeException: WSWS7035E: The http://www.w3.org/2001/XMLSchema.dtd metadata file could not be found.
[3/1/13 15:31:19:698 CET] 000003c0 WSModuleDescr E   WSWS7011E: The configuration for the CKTC_MQ_WEB.war application module cannot load correctly. 
The following error occurred:  com.ibm.ws.websvcs.exception.DeploymentException: java.lang.RuntimeException: WSWS7035E: The http://www.w3.org/2001/XMLSchema.dtd metadata file could not be found.
    at com.ibm.ws.websvcs.deployment.WSServerMetadataMerger.attachWSDLDefinition(WSServerMetadataMerger.java:1852)
    at com.ibm.ws.websvcs.deployment.WSServerMetadataMerger.associateWSDLDefinitions(WSServerMetadataMerger.java:1688)
    at com.ibm.ws.websvcs.deployment.WSServerMetadataMerger.mergeMetadata(WSServerMetadataMerger.java:746)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.initDBCMap(WSModuleDescriptorImpl.java:2058)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.buildJAXWSServices(WSModuleDescriptorImpl.java:1303)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl._containsJAXWSWebServices(WSModuleDescriptorImpl.java:481)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.containsJAXWSWebServices(WSModuleDescriptorImpl.java:456)
    at com.ibm.ws.webservices.admin.utils.ServiceContainmentHelper.<init>(ServiceContainmentHelper.java:71)
    at com.ibm.ws.webservices.admin.utils.CommonUtils.getServiceContianmentHelper(CommonUtils.java:690)
    at com.ibm.ws.webservices.admin.utils.CommonUtils.hasWebServices(CommonUtils.java:295)
    at com.ibm.ws.webservices.admin.utils.CommonUtils.hasJAXWSWebServices(CommonUtils.java:238)
    at com.ibm.ws.webservices.admin.deploy.DeploymentValidation.getWebServiceType(DeploymentValidation.java:309)
    at com.ibm.ws.webservices.admin.deploy.DeploymentValidation.validateEarModules(DeploymentValidation.java:381)
    at com.ibm.ws.webservices.admin.deploy.DeploymentValidation.validateOperation_Required(DeploymentValidation.java:204)
    at com.ibm.ws.management.application.task.ValidateAppTask.performTask(ValidateAppTask.java:392)
    at com.ibm.ws.management.application.SchedulerImpl.run(SchedulerImpl.java:315)
    at java.lang.Thread.run(Thread.java:772)
Caused by: java.lang.RuntimeException: WSWS7035E: The http://www.w3.org/2001/XMLSchema.dtd metadata file could not be found.
    at com.ibm.ws.websvcs.wsdl.BaseWSDLLocator.getImportInputSource(BaseWSDLLocator.java:251)
    at com.ibm.wsdl.xml.EntityResolverAdapter.resolveEntity(EntityResolverAdapter.java:40)
    at org.apache.xerces.util.EntityResolverWrapper.resolveEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityManager.resolveEntity(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLReaderImpl.java:2245)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:869)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:903)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:691)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseTypes(WSDLReaderImpl.java:647)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:353)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2409)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2373)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2426)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2447)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2481)
    at com.ibm.ws.websvcs.deployment.WSServerMetadataMerger.attachWSDLDefinition(WSServerMetadataMerger.java:1818)

Is WAS really trying to download the DTD frow W3C servers and fails to do this? I've no direct access to the server machine so i can't verify it directly (but i could ask). We successfully deployed the same JAX-WS web service on WAS 7.0 and WAS 8.5 on Windows systems (and we are sure WAS is not trying to download any DTDs from Internet when deployed on Windows servers).

Any idea?

Thanks, Giovanni

dascolagi
  • 107
  • 2
  • 12
  • are you successful in deploying jax-ws web-serivce on websphere 8.5 on windows ? For me, it does not run. If you would like to have a look at my Q >> http://stackoverflow.com/questions/15695907/jax-ws-web-service-does-not-work-in-websphere-8-5 – Ravi Trivedi Apr 10 '13 at 00:39

2 Answers2

0

I don't know the specific answer but I have a couple of ideas to contribute.

Have you compared the EAR/WAR you deployed on Windows to EAR/WAR you deployed on your *nix install? I'll assume they are the same but the first thing I would check with that error is to make sure WEB-INF/wsdl/KeyPushTargetService.wsdl exists in your deployment artifact.

I would find it strange if WAS is trying to download the XMLSchema definition. That might point to some configuration problem with the server. If you want to test that, you could try creating another basic JAX-WS service (like a HelloWorld example) to deploy and see if you get the same problem.

As a last resort you could also try just dropping the DTD into your EAR/WAR and see if that makes the problem go away. I wouldn't use that a permanent fix but it might let you move for time being.

Let me know if any of these work out.

Nick Roth
  • 3,057
  • 2
  • 15
  • 15
  • Hi Nick, thanks for your answer. We are sure that the two EAR/WAR are the same. We also tried to place the DTD into the WAR in the same directory of the WSDL file (WEB-INF/wsdl/) but it doesn't work. – dascolagi Mar 04 '13 at 09:58
0

Check your runtime jar for xml parser - looks like you're having classpath issues.

neminem
  • 2,658
  • 5
  • 27
  • 36
Vikas
  • 1