java - 在 Spring WS 中捕获 EndpointNotFound

标签 java spring soap spring-ws

如何在 Spring WS 中捕获 NoEndpointFoundException

默认情况下,如果缺少适当的端点,MessageDispatcher.dispath()会抛出NoEndpointFoundException,但随后WebServiceMessageReceiverObjectSupport.handleConnection()只是隐藏异常。就我而言,我应该自己捕获它。

通过 MessageDispatcher.getEndpointMappings().add() 添加自定义 EndpointMapping 并抛出异常是个好主意吗?

最佳答案

我找到了以下解决方案:

@Component
@Order(Ordered.LOWEST_PRECEDENCE)
public class NoEndpointFoundEndpointMapping implements EndpointMapping {

    @Override
    public EndpointInvocationChain getEndpoint(MessageContext messageContext) throws Exception {

        throw new MyCustomException(...);
    }
}

关于java - 在 Spring WS 中捕获 EndpointNotFound,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42203090/

相关文章:

web-services - 如何将 Web 服务与 SOAP 和 REST 相关联

java - 如何在从 cordova 创建的 native 代码中使用相同的 android SQLite DB?

java - 在 IBM 中执行联合操作时出错

java - 如何更改单个实例的 Java 方法实现?

java - Springboot连接RDS抛出异常 "Caused by: java.security.cert.CertificateExpiredException: NotAfter: Fri Mar 06 00:54:04 EAT 2020"

java - 在 BeanInstantiationException (Tomcat) 之后禁止 Spring 启动

java - Spring MVC java邮件IMAP,如何在thymeleaf中显示通过表单收到的电子邮件列表?

java - 在 JAX-WS 代码优先方法中根据模式验证 soap 请求

java - Android NavigationView 不响应项目上的单击事件

java - 如何在 Tomcat 7 上部署 SOAP Web 服务