我希望SubFolders移动一个文件夹并删除" FolderToDelete",因为在移动所需的子文件夹后它没用。
RFH2-Header的结构如下:
<usr>
<FolderToDelete>
<SubFolder 1 To Move Up>
</SubFolder 1 To Move Up>
<SubFolder 2 To Move Up>
</SubFolder 2 To Move Up>
<SubFolder I don't need 1>
</SubFolder I don't need 1>
<SubFolder 3 To Move Up>
</SubFolder 3 To Move Up>
<SubFolder I don't need 2>
</SubFolder I don't need 2>
</FolderToDelete>
</usr>
尝试过这样:
newMsg.setStringProperty("usr.SubFolder 1 To Move Up", message.getStringProperty("usr.FolderToDelete.SubFolder 1 To Move Up"));
newMsg.setStringProperty("usr.SubFolder 2 To Move Up", message.getStringProperty("usr.FolderToDelete.SubFolder 2 To Move Up"));
newMsg.setStringProperty("usr.SubFolder 3 To Move Up", message.getStringProperty("usr.FolderToDelete.SubFolder 3 To Move Up"));
newMsg.deleteProperty("usr.FolderToDelete");
它没有工作,我得到第一行的错误消息。这是错误消息:
MQJE001: Completion code '2', Cause '2471'.
网站http://blog.robiii.nl/2012/01/websphere-mq-reason-codes.html说,这是以下原因:
2471 09A7 RC2471 MQRC_PROPERTY_NOT_AVAILABLE
但是我知道这个属性是可用的,我确定这个名字没有错。
是因为我正在处理子文件夹而不是属性吗?如果是,为什么会有区别?子文件夹和属性只是带有字符串内容的html标记。没有区别吗?如果mq-classes没有提供方法,我如何使用子文件夹?
答案 0 :(得分:0)
这是解决方案,但我不会给出任何代码:
首先,从一个数组中的属性中读取所有名称。将数组过滤为要保存的名称。使用此列表读取所有属性。保存列表中的属性,但从键中删除“FolderToDelete”。
完成!