Apache CXF和javax.ws.rs.core.Response

时间:2016-05-25 11:33:20

标签: web-services soap cxf response

我有一个方法deleteProduct:

        @Override
        public Response deleteProduct(String productId) {
            Response response = Response
                    .status(Response.Status.FORBIDDEN)
                    .entity(new IllegalAccessError("This is a JAXB object with an error string"))
                    .build();
            return response;
        }

我的问题总是得到这样的答复:

      <ns2:deleteProductResponse xmlns:ns2="http://ws.cxf.test.com/">
         <return/>
      </ns2:deleteProductResponse>

为什么我看不到我的消息错误?

1 个答案:

答案 0 :(得分:1)

我认为你在JAX-RSJAX-WS之间感到困惑。如果这是您所指的SOAP-UI,则意味着您正在构建基于SOAP的Web服务,或者换句话说,正在使用SOA - 面向服务的体系结构,该体系结构适用于SOAP协议而非HTTP。因此,HTTP状态代码或基于它们的错误消息不会在此处显示。

但是,如果您正在构建一个RESTful Web服务(基于JAX-RS的服务),它将与HTTP有关。

首先,根据项目要求确定要使用的框架,然后进行相应的编码。