2015-12-10 54 views
0

預先感謝您的支持。Janino編譯異常:UDJC步驟

在UDJC一步,下面的代碼給我JANINO例外,

在processRow方法

Hashtable hastable=getConfigData() // This method return Hashtable 

Set set=hashtable.get("ERROR_2001").keySet(); ---> //hashtable.get("ERROR_2001"), This returns another hashtable 

例外: 名爲「中的keySet」的方法是不以任何封閉類,也沒有任何超宣佈,也沒有通過靜態導入

在論壇中我找不到解決方法來解決這個問題。我使用JDK 1.7和5.1的PDI(最新下載)

回答

2

AFAIK,您不能使用泛型JANINO,所以JANINO無法確定確切類由hashtable.get("ERROR_2001")方法返回的對象,所以它假定返回Object,其中沒有定義keySet()方法。 嘗試投的hashtable.get("ERROR_2001")結果到值類,包含在您的收藏hashtable

Hashtable errorEntry = (Hashtable) hashtable.get("ERROR_2001"); 
Set set = errorEntry.keySet(); 
+0

對不起,我遲到的反應。是的,我所做的和你說的一樣,所有的錯誤都一樣。 – Hari