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

在Java Web服务上引发用户定义的异常时出错

钱志
2023-03-14

我不能对我的web服务的方法抛出异常。当我在我的方法中抛出异常并尝试从Soap UI测试我的应用程序时,会出现以下错误:

Failed to import WSDL

java.lang.NullPointerException

我的问题是:

如何为JavaWeb服务编写用户定义的异常?

(例如,有一个方法返回一个学生的名字。但是,如果学生在数据库中找不到,会抛出一个错误?)

共有1个答案

凤晨朗
2023-03-14

在wsdl中,异常是一级公民,称为soap错误。基本上,故障是您的操作可以返回的另一条消息,但语义不同。通常,故障会在endpoint接口中转换为强类型异常。

来自Web服务提示和技巧的示例:设计可重用WSDL错误:

<message name="faultMsg"><part name="fault" element="tns:fault"/>
<portType name="Interface">
    <operation name="op1">
        <input name="op1Request" message="tns:op1RequestMsg"/>
        <output name="op1Response" message="tns:op1ResponseMsg"/>
        <fault name="fault" message="tns:faultMsg"/>
    </operation>
</portType>

如果您从服务方法抛出suvh异常,它将转换为

 类似资料:
  • 我正在尝试使用Java8命令抛出一个自定义的Expetion。然而,我得到了以下编译错误: 和扩展RunTimeException的自定义异常类UserNotFoundException如下所示: 提前道谢。

  • 所以,我需要运行这个单元测试。 服务接口: 所以当我运行这个测试时,它会抛出一个异常,实际上不会在这里断言测试。 我在的顶部添加了,它扩展了 在第二个测试用例中,我得到了空的响应。我试过这个API vis Postman,得到了回复。那里一切正常。 控制器内容: 测试等级: 我错过了什么?

  • 我创建了一个自定义异常类 并且在抛出异常时将此异常类发送到客户端。我还使用进行进程。 如何捕获安全过滤器抛出异常并创建用户定义的异常并将其发送到客户端? 我的过滤方法,

  • 我正在将本地netty服务器连接到远程https服务器以代理请求。 下面是我如何创建ssLcontext bean 当我点击我的本地主机时,它应该代理到后端。我得到以下异常。但是,如果SSL关闭并且我连接到远程,这是在不同端口上运行的本地服务器,则工作正常 编辑 添加的日志

  • 我使用的是Spring3.0.5RESTFullWebService。 在客户端使用,所以当服务器抛出任何带有非响应状态。 然后我想要通过Spring RestTemboard在客户端的服务器端的异常消息。目前我得到的一直是相同的异常()和一些通用消息,例如在方法失败状态下得到的异常: 所以在那个时候,我希望从服务器的RestTemplate客户端抛出完整的描述性自定义异常消息 请帮我解决这个问题

  • 我用Spring5反应式编写了一个自定义异常 我把这个叫做服务: 但是当我到达这个页面时,会抛出一个异常,但它不是404,而是一个空指针异常和一个错误500页面,但有正确的消息? AddressNotFound永远不会抛出,只有Nullpointer异常,但会抛出我的自定义消息???你能帮帮我吗? 这是我的控制器: 谢谢