java - Axis 2 会自动创建(并保存)wsdl 文件吗?

标签 java web-services axis2 wso2 bpel

我使用 eclipse/tomcat/axis2 启动并运行了一个 Web 服务。我想让它链接到 bpel 进程,所以我需要 wsdl 文件。我可以通过启动服务器并转到

来显示 wsdl
http://localhost:8080/axis2/services/MyService?wsdl

但是如果我搜索项目的目录结构,我找不到wsdl文件。我当然可以从浏览器复制并粘贴 wsdl 并将其保存为文本文件,然后将 bpel 指向该 wsdl。但似乎 Axis 2 会为我生成(并保存)一个 wsdl 文件,对吧?

最佳答案

默认情况下,当您添加 ?wsdl 时,Axis2 不会检索以前生成的 WSDL 文档。每次都会生成。 但是,如果您将 WSDL 文档文件和相应的 XML 架构文件放在服务存档文件的 META-INF 文件夹中,则可以通过以下方式恢复:

http://localhost:8080/axis2/services/MyService.wsdl

services.xml 中给出的服务名称和 WSDL 中定义的服务名称 文件应该是一样的。

另一方面,如果您想保存生成的 WSDL 文档,只需在您的项目的某个类上使用类 org.apache.ws.java2wsdl.Java2WSDL 将类似以下代码片段作为 Java 应用程序 运行。 .

public static void main(String[] args) throws Exception {
    Java2WSDL.main("-cn com.abc.MyService".split("\\s+"));
}

一旦执行,生成的WSDL文档文件和相应的XML Schema文件就可以在项目的文件夹中找到。

enter image description here

要找到更多选项以将它们与此工具一起使用,请使用以下内容:

public static void main(String[] args) throws Exception {
    Java2WSDL.printUsage();
}

关于java - Axis 2 会自动创建(并保存)wsdl 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15994541/

相关文章:

java - 使用 Stream 映射单个对象

java - 清除 OpenGL Shader 中的属性位置

java - 从列表中删除具有相同内容(自定义 .equals() )的重复项的快速方法

web-services - ServiceClass 对象未实现以下形式的所需方法 : OMElement login(OMElement e)

java - 如何快速更改ORM数据库中的多条记录?

android - Web 服务的最佳 RESTful 方法

android - Retrofit2 错误 java.io.EOFException : End of input at line 1 column 1

web-services - 在nodejs中创建一个简单的Web服务

java - 找不到端点引用的服务

java - Axis2 文件分块上传