Запустить внешнюю оболочку или сценарий летучей мыши из потока мулов?

Я хотел бы асинхронно вызвать/выполнить сценарий оболочки из потока мулов. Также хотелось бы знать, можем ли мы вызвать/выполнить скрипт bat


person Naveen Raj    schedule 07.09.2015    source источник


Ответы (1)


Да, вы могли бы, на самом деле все, что вы можете сделать со старой доброй Java, вы можете сделать с Mule, используя компонент Java.

Создайте компонент Java и поместите его в Асинхронная область

Вот фрагмент кода для вызова сценария оболочки с использованием Java этот ответ расширяет его

ProcessBuilder pb = new ProcessBuilder("myshellScript.sh", "myArg1", "myArg2");  
Map<String, String> env = pb.environment();  
env.put("VAR1", "myValue");  
env.remove("OTHERVAR");  
env.put("VAR2", env.get("VAR1") + "suffix");  
pb.directory(new File("myDir"));  
Process p = pb.start();
person Sudarshan    schedule 07.09.2015
comment
Есть ли готовый компонент для вызова скрипта в муле? - person Naveen Raj; 07.09.2015
comment
Большинство компонентов Mule соответствуют шаблонам EIP, некоторые другие являются хуками для пользовательской логики, вызов сценария оболочки является пользовательской логикой, и поэтому вы не найдете процессор мула только для этого, вы, возможно, могли бы написать свой собственный - person Sudarshan; 07.09.2015
comment
Поняв, что мул соответствует EIP (о котором я уже мало осведомлен), в котором говорится, как можно построить конечную точку и как можно выполнить маршрутизацию, проверку и фильтры. Я хотел знать, есть ли какие-либо конечные точки, соответствующие стандартам EIP, для вызова или выполнения системного вызова для запуска сценария оболочки или файла bat уже в муле? Из вашего комментария я понял, что у нас его нет. Пожалуйста, подтвердите, что вы знаете об этом. - person Naveen Raj; 08.09.2015
comment
Да, я могу подтвердить, что - person Sudarshan; 08.09.2015