2016-08-10 6 views
0

Я знаю, что я не должен спрашивать об этом, потому что он выглядит так просто, но я пробовал несколько дней и все еще не могу получить выделенное значение, как показано на скриншоте ниже. Это сводит меня с ума. Я опробовал несколько комбинаций выражения MEL, используя Mule Evaluate, но до сих пор не повезло. Я пробовал:Создайте выражение MEL для извлечения значения строки

#[payload.file] = returns null 
#[payload.file.path] = returns exception 
#[payload.path] = returns null 

Мне нужно, чтобы быть в состоянии получить, что «путь» значение так плохо. Новичка здесь, пожалуйста, сообщите.

Click this. How to retrieve this value?

+0

Это поможет, если вы разместите поток, а также. Если вы используете соединитель файла, обычно путь и имя файла доступны в message.inboundProperties. – jvas

ответ

1

Вы можете разделить класс poc.DeleteOnCloseFileInputStream? Не зная файл модификатор доступа, мы не знаем, как его прочитать.

Однако, ссылаясь на возможно тот же класс в другом сообщении, DeleteOnCloseFileInputStream. Файл модификатор доступа является закрытым, и нет способа его выставить. Таким образом, вы не можете получить значение пути.

Но, если у вас есть возможность изменить класс, я предлагаю вам добавить метод получения. Например: public File getFile() { return file; }.

Наконец, вы сможете получить значение пути с помощью этого MEL: #[payload.file.path]

+0

Спасибо @ sulthony-h! Я изменил приватную переменную файла на общедоступную, и теперь я могу получить к ней доступ с помощью выражения # [payload.file]. Это первый раз, когда я работаю с MuleESB и Java. Много кривой обучения, и я верю, что у меня появятся более глупые вопросы :( –

 Смежные вопросы

  • Нет связанных вопросов^_^