如何确定一个Java Web服务是JAX-WS还是JAX-RPC

3
我被要求完成一些与应用程序中的一些Web服务相关的文档,并指示每个服务是否使用JAX-WS或JAX-RPC实现。这些服务已经开发了多年,可能使用了各种方法,包括RAD中内置的Web服务向导以及从Maven调用的wsimport。它们也随着时间的推移而改变和发展 - 即使在某些情况下,原始文档表明服务是其中之一,我也不确定它们有多可信。
是否有任何明显的标记可以让我知道一个服务是JAX-WS还是JAX-RPC?我可以完全访问源代码、WSDL和模式。我只是不确定要查找什么。

你是否可以访问这些服务的源代码或构建过程?如果不能,那么你能够访问哪些信息? - Kenster
我有完整的源代码和WSDL文件。 - FrustratedWithFormsDesigner
1个回答

3
如果您在Java源代码中看到@WebService,那么这肯定是一个JAX-WS服务类。JAX-WS使用自己的注释和利用JAXB注释(@XmlType在pojos中)将Java序列化/反序列化为XML。
如果您在Web模块中看到webservices.xml或XML文件,它们的名称似乎映射到已知的Web服务名称,并且可能看起来像这个例子,那么这些就是JAX-RPC服务。JAX-RPC使用反射和映射文件将一组有限的Java类型转换为XML并从XML转换回来。您甚至可以搜索/grep代码库以查找XML命名空间值,例如http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsdhttp://java.sun.com/xml/ns/jax-rpc/ri/config,以找到这些映射文件 - 它们的名称可能会指导您实现JAX-RPC的服务。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接