无法在AIF服务中捕获异常

时间:2013-07-24 10:09:56

标签: exception-handling axapta cil dynamics-ax-2012 aif

我在动态AX 2012中创建了一个AIF服务,当我通过调用作业中的入口点方法对其进行测试时,它工作正常,但是当它部署时,调用来自soap UI,它在内部崩溃错误:“未处理的esception”。

调试时发现我的try catch语句的catch子句中抛出了未处理的异常。

它进入了catch,因为我在try子句中调用的方法会产生错误。

所以有人知道为什么我在使用该作业在客户端上运行代码时可以捕获抛出的错误,但是当它在服务器上的CIL中运行并且从SoapUi调用服务时无法捕获它?

1 个答案:

答案 0 :(得分:3)

解决,

AIF在核心代码深处有一个大事务,并且有一个自己的try catch。

因此,当您在AIF服务中抛出错误时,它将中止外部事务并转到AIF catch子句,跳过所有其他子句。

这就是为什么我无法抓住它。解决方案可能是提交AIF事务,运行代码并在返回开始新事务之前。