我在EI中使用API。 有时,端点返回意外消息,表明数据映射器无法正常工作。
$ TID:[-1234] [] [2019-03-20 17:25:24,042]错误{API_LOGGER.getSignDetailInfoByChid1}-DataMapper介体:映射失败{API_LOGGER.getSignDetailInfoByChid1}
在发生数十个此类错误后,EI无法提供任何服务,即使端点返回正常消息也是如此。 在日志中,我发现该API按顺序完成,没有响应。
$ TID:[-1] [] [2019-03-20 18:10:36,561] INFO {org.apache.synapse.transport.passthru.SourceHandler}-调用notifyWriterError {org.apache.synapse时,作家为null .transport.passthru.SourceHandler}
停止并重新启动EI可以解决此问题。
如何在不重新启动的情况下解决此问题?
答案 0 :(得分:1)
当数据映射器在尝试使用给定的输入数据执行javascript函数时出错时,就会发生这种情况。
EI有一个大小为20的javascript执行程序池。发生错误时,执行程序不会返回到该池。因此,当您遇到20倍的映射错误时,数据映射器将无法再从池中夺走执行者并停止工作。
我们通过EI 6.1.1的WUM更新解决了此问题。请进行WUM更新以解决此问题。或采用最新的发行包6.5.0
但是,请调查导致映射问题的根本原因,并尝试解决映射问题。