【问题标题】:@javax.jws.WebService wsdlLocation ("WSLD file not found" - IBM RAD 9.0)@javax.jws.WebService wsdlLocation(“未找到 WSLD 文件”-IBM RAD 9.0)
【发布时间】:2014-07-01 06:46:26
【问题描述】:

我有一个 Web 服务,它首先使用 WSDL 设计,其中定义了一些方法。 WSDL 文件存储在src\main\resources\wsdl\myservice.wsdl 中。使用mvn jaxws:wsimport 生成java 源代码。

今天我向 WebService 添加了一个简单的方法,并重新生成了源代码。 RAD 显示 wsdl 没有错误。但是,它不会在 servlet 类上显示错误“未找到 WSDL 文件”:

@javax.jws.WebService(wsdlLocation = "wsdl/myservice.wsdl",  
endpointInterface = "com.example.MyService",  
targetNamespace = "http://example.com/myservice",  
serviceName = "myservice", portName = "myserviceSOAP11")
@javax.xml.ws.BindingType(value = javax.xml.ws.soap.SOAPBinding.SOAP11HTTP_BINDING)
public class MyServiceImpl implements MyService 

除了定义了一个新方法外,该类中没有任何变化。

由于这些验证错误,我现在无法将服务部署到 WebSphere。这些错误从何而来?可能是 WSDL 中的错误吗?如果是这样,当 IBM RAD 9.0 给我绝对没有关于 WSDL 本身的错误消息时,我该如何检查?

--编辑--
我能够将所有更改移动到在旧版本 RAD (8.0) 中加载的项目副本中,并设法启动和测试 web 服务。看起来 RAD 9.0 不接受 WSDL 中的一些其他合法结构。但是,没有给出任何具体信息。是否有可能找出究竟是哪一行/构造导致该 IDE 出现问题?

【问题讨论】:

  • 相同的代码在 WAS7 中工作
  • 请更新您的问题以包含现在正在发生的事情的确切细节(您上面的评论与原始问题的信息不同),包括堆栈跟踪

标签: java wsdl websphere jax-ws ibm-rad


【解决方案1】:

以下是我在 RAD 9 中的一些设置,它适用于这些设置。所以我对你的项目结构做了一些假设。

  • 我在src/main/resources/wsdl 文件夹中有wsdl 文件。我假设您的资源文件夹还包含WEB-INF 文件夹和网页(实际上我使用的是webapp 文件夹而不是resources,但它应该类似地工作)。
  • 我的服务实现在src/main/java 文件夹中。
  • Window > Preferences > Java EE > Maven > Maven Project Settings 中我设置了Maven 值。
  • 在选定的项目Properties > Deployment Assembly 我有resources 文件夹设置为部署到'/'

【讨论】:

  • 不好意思,我的是蚂蚁项目
  • @SireeshYarlagadda 我没有看到像Ant project 这样的东西。您可以拥有基于 Eclipse/WTP 项目或 Maven 项目的目录结构。您可以使用 Ant 来构建项目。您的目录结构更像 Maven 而不是 WTP。您的项目是否被正确识别为 Web 项目?如果您可以使用包含目录结构、Java 构建路径源和部署程序集窗口的项目资源管理器添加屏幕截图。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-22
  • 1970-01-01
  • 1970-01-01
  • 2012-05-26
相关资源
最近更新 更多