2013-03-01 271 views
0

我想在安裝在* nix OS上的WAS 8.5服務器上部署JAX-WS Web服務。 我收到以下錯誤:在WebSphere AS 8.5上部署JAX-WS Web服務時出現錯誤

[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) 

是真的試圖下載的DTD FROW W3C服務器和未能做到這一點? 我沒有直接訪問服務器機器,所以我不能直接驗證它(但我可以問)。 我們在Windows系統上的WAS 7.0和WAS 8.5上成功部署了相同的JAX-WS Web服務(並且我們確信當部署在Windows服務器上時,WAS並不試圖從Internet下載任何DTD)。

有什麼想法?

感謝, 喬瓦尼

+0

你是否成功地在windows上部署了jsp-ws web-serivce websphere 8.5?對我而言,它不會運行。如果你想看看我的Q >> http://stackoverflow.com/questions/15695907/jax-ws-web-service-does-not-work-in-websphere-8-5 – 2013-04-10 00:39:07

回答

0

我不知道具體的答案,但我有幾個想法作出貢獻。

您是否將您在Windows上部署的EAR/WAR與部署在* nix install上的EAR/WAR進行了比較?我假設它們是相同的,但我會首先檢查該錯誤是確保您的部署工件中存在WEB-INF/wsdl/KeyPushTargetService.wsdl。

如果WAS試圖下載XMLSchema定義,我會覺得很奇怪。這可能指向服務器的一些配置問題。如果你想測試它,你可以嘗試創建另一個基本的JAX-WS服務(如HelloWorld示例)來部署並查看是否遇到同樣的問題。

作爲最後的手段,您也可以嘗試將DTD放入您的EAR/WAR中,看看是否會導致問題消失。我不會使用這個永久性修復,但它可能會讓你暫時移動。

讓我知道是否有任何這些工作。

+0

嗨,尼克,感謝您的回答。我們確信這兩個EAR/WAR是一樣的。我們還嘗試將DTD放入WSDL文件(WEB-INF/wsdl /)的同一目錄中的WAR中,但它不起作用。 – dascolagi 2013-03-04 09:58:33

0

檢查您的運行時jar爲XML解析器 - 看起來像你有類路徑問題。

相關問題