骡子message.getInvocationProperty无法从Java方法内解决

时间:2019-02-01 22:22:07

标签: java mule

我试图从Java类中访问骡子flowVar:

在ule子处理器中: flowVars.rootFilePath =“ c:\ test”

从the子处理器内部,我正在调用java方法 renameFile(oldFile,newFile)

包com.rename;

导入java.io.File; 进口org.mule.api.MuleMessage;

公共类FileRename {

public String renameFile(String oldFile, String newFile) {
    File file1 = new File(message.getInvocationProperty("rootFilePath") + oldFile);
    File file2 = new File(message.getInvocationProperty("rootFilePath") + newFile);
    file1.renameTo(file2);
    return "Renaming " + oldFile + " to: " + newFile;
}

}

然而,我收到错误 “的消息无法解析”。我在这里想念什么?非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

为什么不能使用onCall方法来做到这一点?

您可以使用以下代码作为示例来访问消息。

public class MyComponent implements Callable {
 @Override
    public Object onCall(MuleEventContext eventContext) throws Exception {
     String oldFile = eventContext.getMessage().getProperty('');
      return "Renaming " + oldFile + " to: " + newFile;";
    }

}