当前位置: 首页 > 知识库问答 >
问题:

使用@WebFault处理JAX-WS异常

祁飞翰
2023-03-14
@WebFault(name="ServiceFault",targetNamespace="http://somenamespace.com")
public class MyException1 extends Exception {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private ServiceFault fault;

    public MyException1(String message) {
        super(message);
    }

    public ServiceFault getFault() {
        return fault;
    }

    public MyException1() {
        super();
        // TODO Auto-generated constructor stub
    }

    public MyException1(String message, Throwable cause,
            boolean enableSuppression, boolean writableStackTrace) {
        super(message, cause, enableSuppression, writableStackTrace);
        // TODO Auto-generated constructor stub
    }

    public MyException1(String message, Throwable cause) {
        super(message, cause);
        // TODO Auto-generated constructor stub
    }

    public MyException1(Throwable cause) {
        super(cause);
        // TODO Auto-generated constructor stub
    }

    public MyException1(ServiceFault fault) {
        super(fault.getFaultString());
        this.fault = fault;
    }

    public MyException1(String message, ServiceFault fault) {
        super(message);
        this.fault = fault;
    }

    public MyException1(String message, ServiceFault fault,
            Throwable cause) {
        super(message, cause);
        this.fault = fault;
    }

    public MyException1(String code, String message) {
        super(message);
        this.fault = new ServiceFault();
        this.fault.setFaultCode(code);
        this.fault.setFaultString(message);
    }

}

... and similarly for MyException2, ..., MyExceptionN

共有1个答案

严安志
2023-03-14

选项:-

1)父类MyWSException具有由子异常类扩展的ServiceFaultPOJO,这些类的名称表示服务中发生的异常。

2)拥有一个泛型MyWSException类,其详细信息封装在ServiceFaultPOJO中。

 类似资料:
  • 问题内容: 我构建了一个最小的Web服务,并使用javax.xml.ws.Endpoint发布了它。如果我尝试获得WSDL, 它就可以正常工作。 尝试在接收它,我什么也没收到。该地址与本地主机相同。 是否可以在不提供地址的情况下发布网络服务? 将代码更改为 在IP地址上获取wsdl,但不在本地主机上获取。 是否没有可能仅定义端口? 问题答案: 您可以尝试在0.0.0.0上发布它吗?

  • 在camel spring ws中,有没有办法将自定义主体(例如自定义bean)和http状态返回为500? 我试过了 然后在processor公共类ExceptionProcessor实现processor{ } 但是即使身体是我想要的,超文本传输协议状态总是200。 你能帮我吗? 更多信息:我正在使用camel 2.20.2版

  • JAX-WS (JavaTM API for XML-Based Web Services)规范是一组XML web services的JAVA API。JAX-WS允许开发者可以选择RPC-oriented或者message-oriented 来实现自己的web services。 在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP。在使用JAX-WS过程中,开发者不需要

  • Apache CXF WebService 没有话说,享受沉默 showcase项目已演示了JAX-WS2.0 + CXF 的最重要特性, 其中客户端在测试用例里. SOAP这个名字,本身就是个笑话,一点都不Simple。其他一些WS-*协议,包括安全,附件等都不再看好,因此SpringSide4.0没什么更新。 测试工具依然是SoapUI。 Tips 1. CXF自动生成的WSDL与WADL文件

  • 问题内容: 有人可以为入门JAX-WS提供一些好的教程吗?使用wsgen等各种工具… 问题答案: 您可以从这里开始: Java SE 6平台简介JAX-WS 2.0,第1部分 Java SE 6平台简介JAX-WS 2.0,第2部分 NetBeans对JAX-WS确实具有很好的支持,并且提供了许多教程,例如: JAX-WS Web服务入门 Glen Mazza在JAX-WS RI / Metro上

  • JAX-WS教程提供了JAX-WS API的概念和示例。 此JAX-WS教程专为初学者和专业人士设计。 有两种方法可以用于开发JAX-WS,它们分别如下: RPC风格 文档风格 如下图所示 - RPC与文档样式Web服务之间的区别 https://www.xnip.cn/web_service/difference-between-rpc-and-document.html JAX-WS RPC样

  • 我的怀疑是 > 为什么要调用webservice,而不是使用? 可以用来调用此webservice吗

  • 问题内容: 什么是JAX WS拦截器?在哪里可以找到相同的信息! 问题答案: JAX- WS拦截器(也称为处理程序)用于以透明方式编织请求的各个方面。例如,日志记录或请求/响应,向消息添加安全标头,加密,压缩等。单个拦截器可以操纵消息的逻辑有效载荷(内容)或消息的协议,但不能同时进行。 有关它们的入门文档,请参见此处。