在java中发送SOAP响应后运行RUN代码

时间:2015-05-21 11:59:17

标签: java soap web service

我的网络服务从用户那里获得SOAP请求。在完成服务中的所有内容后,我可以发回用户响应然后运行一些代码吗?

其实我想记录我的服务输出。如果我运行记录输出的代码,并且该日志记录服务失败,则由于该错误,我无法发回任何响应。

有没有办法让我发送服务的用户响应然后再运行日志服务?

我尝试了SOAP处理程序的close方法,但它在我的服务返回响应之前运行。

4 个答案:

答案 0 :(得分:0)

基本上你需要找到一个回调(http://cleancodedevelopment-qualityseal.blogspot.co.uk/2012/10/understanding-callbacks-with-java.html),你可以在从服务器接收到http响应后挂钩。

请点击此处查看类似问题:SOAP web service callback architecture?已得到解答。

答案 1 :(得分:0)

您应该使用回调函数来确保响应完成

答案 2 :(得分:0)

使用try-catch控制代码中的错误。对于您的情况,您可以控制您的日志服务是否失败,并将响应发送给用户。

Exceptions try

如果您想使用更复杂的东西,可以使用队列或事件的异步方法。

答案 3 :(得分:0)

在JEE中你可以使用" @Asynchronous"需要记录的方法的注释。它将以异步方式运行,因此不会阻止返回Web服务。

如果您需要该方法的结果,则需要管理存储Future的引用,例如在单例中,然后在第二次Webservice调用中获取esult。