java - 将 JAXB 生成的类公开为 WSDL Web 服务

标签 java web-services wsdl jaxb axis

我有一堆非常简单的函数。 每个函数都有一个输入和一个输出。

OutputType function func(InputType);

输入/输出的类型在 xsd 模式中定义,并使用 JAXB/XJC 生成为 java 类。现在我想将这些函数公开为在 Geronimo 上运行的 WSDL Web 服务。

我刚刚看了一下 Axis/WSDL2Java/Java2WSDL;我认为这与创建我的函数的方式非常相似。

我想,我可以使用 Java2WSDL 从我的函数和输入/输出类型生成 WSDL。 然后使用一些工具生成服务器/客户端绑定(bind),

谁能提供更多进一步的建议吗?特别是我已经在 xsd 模式中定义了函数的输入/输出。

非常感谢。

总结:


这些就是我现在拥有的......

许多功能都是通过一个输入和一个输出来实现的。

public OutputType functionXXX(InputType in) { ....;返回输出; }

InputType 和 OutputType 已在 xsd 模式中定义(并通过 Jaxb/xjc 转换为 java 类)。


我想要的是......

构建 Web 服务来执行这些功能。 不要触及已实现功能的代码。 通过 WSDL,

最佳答案

我找到了一个使用 CXF 的教程做你想做的事 here .

该文档声称使用契约(Contract)优先方法,但事实并非如此。在讨论基于 SOAP 的服务时,契约首先意味着首先创建描述符(WSDL、XSD)。然后,您可以从这些描述符生成任何代码工件。关于原作者用词的争论,您可以查看原博文中的评论。

话虽这么说,契约(Contract)优先的方法有很多好处,具体取决于您想要实现的目标。请参阅Spring Web Services教程以获取有关它的一些信息。

关于java - 将 JAXB 生成的类公开为 WSDL Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1555919/

相关文章:

java - wsimport from https : [ERROR] java. security.cert.CertificateException:不存在主题备用名称

asp.net - 从ASP.NET C#调用外部JSON Web服务

c# - 从 VS2010 WCF 服务应用程序获取 WSDL

java - Java 中的 SOAP 错误处理

java - java 是否提供内置的静态 String.Compare 方法?

java - 抽屉导航中的 3 行图标未动画化为较小的图像

java - Android ACTION_MOVE图像设置图像滚动范围超出其父级

java - 如何从 JAX Web 服务中访问原始请求 xml?

perl - 使用基于 WSDL 的 SOAP::Lite

java - 如何从 SVG 中获取 BufferedImage?