WL.Server.readSingleJMSMessage上的零超时会导致类强制转换异常

时间:2013-03-18 12:40:11

标签: ibm-mobilefirst

根据文档,无条件等待从JMS队列读取的消息,指定"timeout: 0"。使用非零值调用WL.Server.readSingleJMSMessage工作正常,因为零超时函数立即返回,我可以找到日志条目:

com.worklight.integration.model.InvocationContext E FWLSE0099E: An error occurred while invoking procedure jms_topic/JMSConsumerFWLSE0100E: parameters:{ "arr": [ { "destination": "myqueue", "singleMessage": true, "timeout": 0.0 }]} java.lang.Double cannot be cast to java.lang.Integer FWLSE0101E: Caused by: null

对于正值,如"timeout: 1000"已记录的参数是正确的,也是“超时:1000”。对于“timeout:0”,记录的值是Java侧的意外"timeout: 0.0"浮点值。

我认为没有办法强制整数零作为字面值,我尝试"timeout: 0x0""timeout: parseInt(0)"但问题似乎是在JS-Java翻译中。遗憾的是,这种基本边界条件在发布前未经过测试,这是遗憾的。

1 个答案:

答案 0 :(得分:1)

这似乎是一个不幸的错误,目前没有已知的解决方法。将打开一个缺陷来解决问题。我们将继续为当前版本寻找可能的解决方法。