Java 是否向客户端返回web服务响应?

Java 是否向客户端返回web服务响应?,java,spring,web-services,jaxb,spring-ws,Java,Spring,Web Services,Jaxb,Spring Ws,我正在使用SpringWSWeb服务,我有一个web服务方法,如下所示 以下方法之间有什么区别 @PayloadRoot(namespace = NAMESPACE_URI, localPart = "Request") @ResponsePayload() public JAXBElement<Response> getData(@RequestPayload Request request) { //Some code } 要让客户端使用此web服务,哪种方法

我正在使用SpringWSWeb服务,我有一个web服务方法,如下所示

以下方法之间有什么区别

@PayloadRoot(namespace = NAMESPACE_URI, localPart = "Request")
@ResponsePayload()
public JAXBElement<Response> getData(@RequestPayload Request request) {

    //Some code
    }
要让客户端使用此web服务,哪种方法被认为是好的?我需要遵循第一种方法还是第二种方法如果我直接发送jaxb元素,那么客户端是否会出现任何问题?建议采用哪种方法?直接返回jaxb元素好吗


谢谢

这两种方法都将向SOAP消息体添加XML。这两种方法都不会对客户产生直接影响。客户端将基于WSDL引用的XML模式,而不是Java类。

区别在于,第一个响应不是XML根对象(即,用
@XmlRootElement
注释),而在后者中是。对于生成的消息,它应该不会有任何不同。如果我直接返回JAXBElement,那么客户端是否需要进行额外的处理才能得到结果?谢谢阅读我的回答。这与生成的XML无关!所以不,不应该有任何不同,被传输的是XML而不是对象。那么客户端,调用我的web服务,他们可以期望什么样的返回类型?JAXBElement response=endpoint.getResult(请求)是否正确?或者Response=endpoint.getResult(request)?这取决于客户端、xsd和转换。这不是说。没有看到xsd就不行。我强烈建议您阅读XML/SOAP Web服务,尤其是XML(Un)编组。
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "Request")
@ResponsePayload()
public Response getData(@RequestPayload Request request) {

    //Some code
    }