如何使用Java从Mule中的ObjectStoreModule检索对象?

如何使用Java从Mule中的ObjectStoreModule检索对象?,mule,Mule,我有一个ObjectStoreModule,配置为将一些JSON存储为字符串。根据spec(),我希望能够调用retrieve并获取我存储的对象的副本。然而,当我尝试此操作时,我似乎只返回了密钥,而没有返回对象本身 下面是我的代码目前的样子 ObjectStoreModule objectStore = (ObjectStoreModule) eventContext.getMuleContext().getRegistry().lookupObject("sourceConfigStore")

我有一个ObjectStoreModule,配置为将一些JSON存储为字符串。根据spec(),我希望能够调用retrieve并获取我存储的对象的副本。然而,当我尝试此操作时,我似乎只返回了密钥,而没有返回对象本身

下面是我的代码目前的样子

ObjectStoreModule objectStore = (ObjectStoreModule) eventContext.getMuleContext().getRegistry().lookupObject("sourceConfigStore");

objectStore.store("KEY", jsonAsString, true);

System.out.println((String)objectStore.retrieve("sourceConfigStore", "KEY", null, null, eventContext.getMessage()))

目前,这只输出“KEY”,而不是名为jsonAsString的变量。我意识到检索方法还有其他输入参数,这些参数将指定一个mule消息属性,以将检索到的对象分配给该属性,但是我希望能够从java内部与该存储交互,而无需额外将这些值分配给mule消息属性。

我没有将正确的参数传递给ObjectStoreModule的retrieve()方法。第一个是“键”,第二个是在找不到键时返回的默认值。我传入了存储的名称和作为默认值的键,这就是为什么返回值是键,因为在存储本身中找不到作为键的存储的名称。。。。呜呜声