java – JAX-WS返回一个复杂的对象?

我是
Java Web Services的新手,但我无法在任何地方找到一个好的解释.

我在NetBeans中有2个Java Web项目.
一个作为Web服务,另一个作为Web服务的客户端.
我还创建了自己的名为“Person”的类,它有你所期望的:name,dob等.

我想有一个名为“ListPeople()”的Web服务方法,它将返回一个“Person”对象数组.

我是否需要在这两个项目中拥有该课程?
我应该首先序列化对象吗?
我应该使用JAXB,如果是这样,我从哪里开始?

对不起n00b的问题,但我很困惑.
实现这一目标的正常方法是什么?

提前致谢

最佳答案 >我是否需要在这两个项目中拥有该课程?是.

>我应该首先序列化对象吗?没有.

>我应该使用JAXB,如果是这样,我从哪里开始?我不会.我更喜欢javax.oxm接口,因为我不关心JAXB,但这是个人观点.

我个人的偏好是使用Spring web services.如果您恰好是Spring用户,我认为这是最好的方式.如果没有,也许文档仍然有助于澄清.

您遇到了我不喜欢您的方法的原因:服务和客户端以及依赖于类和OXM代码.您必须在两个地方都能完美同步.改变一个,你必须改变它们.

如果可以的话,我尽量减少依赖关系.

在这种情况下,如果您来回发送XML,则可以.从XSD架构开始.让客户端和服务处理它而不是Java对象.您的服务将可用于非Java的客户端.

如果采用这种方法,您只需要担心服务器端的OXM.您接受XML请求并将其编组到您选择的Java对象中,并将其传递给您的服务层(注意:NOT Web服务层)以进行处理.将响应对象转换为XML响应流,Bob是你的叔叔.让客户处理.

点赞