0

我在从 Tibco ActiveMatrix 进程中的 Java 方法组件检查空值时遇到问题。

基本上,我有一个 Java 方法组件调用 java 来获取一个计费帐户,如果返回为 null,我想记录搜索条件 - 计费帐户 id;否则,我会将对象映射为 XML 内容...

问题是在“XPath”中使用以下内容来检查转换中的空对象(有条件成功):

  • 空($Get-BA-Details/ns5:JavaMethodActivityOutput/MethodReturnValue
  • 计数($Get-BA-Details/ns5:JavaMethodActivityOutput/MethodReturnValue)= 0
  • 字符串长度($Get-BA-Details/ns5:JavaMethodActivityOutput/MethodReturnValue)= 0

'$Get-BA-Details' 是 Java 方法组件。

他们都返回'false',然后尝试将java对象映射为XML内容,这导致找不到计费帐户时出错。

任何人都可以点亮一些灯吗?

非常感谢!

4

2 回答 2

0

据我所知,您无法检查 Java 方法活动的返回是否null使用 XPath。相反,您可以创建一个 Java 代码活动,该活动将 aObjectReference作为输入参数并提供 aboolean作为输出参数。然后,您可以使用如下代码来检查对象是否是nullobject是输入参数并且isnull是输出参数):

isnull = object == null; 

我在BWUnit的最新快照中为此创建了BWUnit测试,您可以从http://windyroad.org/software/bwunit/download/BWUnit-11.2.zip下载

测试位于下载StackOverflow/UnitTestSuite/JavaMethodNullTestCase中的简单示例中Examples/Simple

于 2012-10-14T21:39:28.283 回答
0

尝试这个:

$Get-BA-Details/ns5:JavaMethodActivityOutput/MethodReturnValue=""

于 2012-10-04T19:35:32.490 回答