web-services - useOriginalwsdl=true 在 axis2 中不起作用

标签 web-services axis2

我遵循契约(Contract)优先的方法。所以我先写wsdl文件,然后生成服务器端代码。但是当我在浏览器中点击我的 web 服务的 url 时,我看到了自动生成的 wsdl 文件;不是我保存在 META-INF 文件夹中的那个。我还在我的 services.xml 文件中设置了 useOriginalwsdl=true 。当我尝试在浏览器中查看 wsdl 时,它会引发错误 无法为此服务生成 WSDL 1.1描述部分和 如果您希望 Axis2 自动生成 WSDL 1.1,请在 error 标记的 reason 部分的 services.xml 中将 useOriginalwsdl 设置为 false .

请帮帮我。

最佳答案

如果您遵循以下步骤,useOriginalwsdl=true 将起作用:

  1. 将自定义 wsdl 文件放入 META-INF 文件夹。
  2. 自定义 wsdl 和 services.xml 中的服务名称应该相同
  3. 将客户 wsdl 命名为 service.wsdl 或 (Your ServiceName).wsdl。
  4. 在 services.xml 文件中设置 useOriginalwsdl=true

注意:如果 useOriginalwsdl=true,Axis2 引擎首先尝试使用任何名为 service.wsdl 的 wsdl 文件。如果未找到,则它会尝试查找 named(您的服务名称).wsdl 如果不成功,则在您尝试访问 Web 服务时显示错误。

关于web-services - useOriginalwsdl=true 在 axis2 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7242394/

相关文章:

java - 在什么情况下尖括号用反斜杠转义?

c# - 如何从 C# web 服务生成 WSDL 文件

java - Apache AXIS 在解析时忽略/跳过附加元素

c# - Axis2 MTOM Web 服务和使用它的 .NET 客户端

web-services - 域名前缀

c# - 如何使用 webservice C# 将数据从数据库发送到客户端

java - 如何使用 Web 服务和 MySQL 创建 Java 后端?

web-services - Grails 异常 : Mapping qname not fond for the package: grails. 验证

java - Prolog SAXParserException 中不允许内容

eclipse - WSDL 异常 : An error occurred trying to resolve schema referenced at