Выполнить код javascript из java (с помощью eclipse)

#java #javascript

#java #javascript

Вопрос:

Мне нужно вызвать некоторый код javascript из моего Java-приложения, могу ли я это сделать?

спасибо adi

Ответ №1:

Вы можете сделать это, используя стороннюю библиотеку, такую как Rhino, но простого способа вызвать код JavaScript из Java не существует. Хотя у них похожие названия, общего у них примерно столько же, сколько у автомобиля и карамели.

В более общем плане, взаимодействие программ, написанных на одном языке, с языками, написанными на другом, часто затруднено из-за несовместимости внутренних компонентов двух реализаций языка программирования с другой. Из этого правила есть много исключений, и было вложено много усилий, чтобы заставить проекты работать на нескольких языках, но зачастую стоимость запуска высока.

Комментарии:

1. Что ж, либо с библиотеками интеграции Mozilla / Rhino, либо с JDK 1.6 «ScriptEngine», на самом деле вызвать JavaScript из Java очень просто. Фактически средство ScriptEngine может передавать обратно объекты, обернутые вокруг экземпляра ScriptEngine, реализующего любой API, который вы хотите, и из этого объекта Java-код может напрямую вызывать JavaScript.

2. спасибо, я попробую … я думаю, это в значительной степени то, что я ищу … (:

Ответ №2:

Да, вы можете, либо взяв Rhino из Mozilla и используя его библиотеки интеграции, либо воспользовавшись средством JDK 1.6 «ScriptEngine».

Имейте в виду, что версия Rhino (движок JavaScript, реализованный на Java, созданный Mozilla), входящий в состав JDK 6, довольно старая и с ошибками.

Ответ №3:

LiveConnect прекрасно справляется с этой задачей, смотрите Ссылки и примеры для JSObject. Вас, вероятно, заинтересует JSObject.eval, который даст вам возможность выполнять код JavaScript в контексте любого объекта JavaScript.

Комментарии:

1. Я думаю, что вопрос здесь касается Java-кода на стороне сервера, а не апплетов.