我正在尝试测试变量作用域并将变量传递给jobjets和subjobs。
我在这个带有一个joblet的测试工作中我不明白的是我看到的原因
Item 1
Item 2
Item 3
Item 4 - Last Item in Parent Job
在我的输出中看到之后:
In Joblet...
{concurrentHashMap={}, tRowGenerator_1_SUBPROCESS_STATE=0}
当左边的父作业中的tJavaRow_2在joblet之前的流程中。而我的List正在作为jobjet中tJava_1组件的一部分输出,所以逻辑上你认为会在tJavaRow_2之后执行。在joblet中,tJava_1看起来像这样:
System.out.println("In Joblet...");
System.out.println(globalMap.toString());
List<String> myTestList = (ArrayList<String>) globalMap.get("testList");
我的tJavaRow_2代码如下:
List<String> testList = new ArrayList<String>();
testList.add("Item 1");
testList.add("Item 2");
testList.add("Item 3");
testList.add("Item 4 - Last Item in Parent Job");
for(String item : testList)
{
System.out.println(item);
}
globalMap.put("testList", testList);
System.out.println("Exiting....");
我