2012-10-03 17 views
0

我在檢查Tibco ActiveMatrix進程中Java方法組件的空值時遇到了麻煩。基本上,我有一個Java方法組件調用java來獲得一個計費帳戶,如果返回爲空,我想記錄搜索條件 - 計費帳戶ID;否則,我將映射對象是XML的內容...如何從Java中檢查空值Tibco ActiveMatrix的方法

的問題,而使用在「XPath的」檢查空對象的轉換(成功與條件)以下:

  • 空($獲取-BA-詳情/ NS5:JavaMethodActivityOutput/MethodReturnValue
  • 計數($獲取-BA-詳情/ NS5:JavaMethodActivityOutput/MethodReturnValue)= 0
  • 字符串長度($獲取-BA-詳情/ NS5:JavaMethodActivityOutput/MethodReturnValue)= 0

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

它們都返回'false',然後嘗試將java對象映射爲XML內容,這會導致錯誤,而找不到結算帳戶。

任何人都可以擺脫一些燈光?

非常感謝!

回答

0

試試這個:

$獲取-BA-詳情/ NS5:JavaMethodActivityOutput/MethodReturnValue = 「」

+0

歡迎來到SO。答案,尤其是代碼答案應該更加實質。稍微解釋一下你的代碼。爲什麼OP(或者將來讀這個的人)「試試這個」?代碼在做什麼? – psubsee2003

+0

嗨Ecuevas,非常感謝您的回答。我試過了,但沒有奏效。我想:$ Get-BA-Details/ns5:JavaMethodActivityOutput/MethodReturnValue =「」與字符串長度(...)相同。 –

0

從我可以告訴你不能檢查,如果從Java方法活動返還使用XPath是null 。相反,您可以創建一個Java代碼活動,它將ObjectReference作爲輸入參數,並提供boolean作爲輸出參數。然後,您可以使用如下代碼到下面檢查的對象是nullobject是輸入參數和isnull是輸出參數):

isnull = object == null; 

我已經在最新的快照創建BWUnit測試在此BWUnit,您可以從這裏下載http://windyroad.org/software/bwunit/download/BWUnit-11.2.zip

該測試位於StackOverflow/UnitTestSuite/JavaMethodNullTestCase的簡單示例中,該示例位於Examples/Simple的下載內。

+0

伴侶,非常感謝!在這裏一段時間沒有去處理其他的東西。我想嘗試一下......再次感謝! –