Полезный небольшой инструментарий поддержки для использования Rhino с Java (через среду сценариев)? - PullRequest
1 голос
/ 04 июля 2010

Используя среду сценариев (javax.script. *), Очень легко получить базовую интеграцию между Java и Javascript. Однако, как только вы захотите сделать что-то действительно полезное, вы натолкнетесь на все небольшие пути, по которым мост из Javascript обратно в Java (и, в некоторой степени, и в другом направлении) является грязным.

Пример: если у вас есть объект Javascript, настроенный для реализации интерфейса Java (который в основном прост в исполнении), и один из методов, который вы хотите реализовать, должен вернуть массив строки, вы не можете просто сделать это:

    // ...
    return [ firstString, "hello world", lastString ];

Это не сработает, потому что массивы Javascript не преобразуются автоматически в массивы Java. Вы должны явно создать массив Java с отражением, заполнить его и вернуть , что .

Есть несколько раздражающих вещей, подобных этому, и ни одна из них сложна , на самом деле, не справиться, но, поскольку я сейчас начинаю со второго проекта, который нуждается в этих инструментах, я задаюсь вопросом, была решена с помощью некоторого простого Javascript-фреймворка «бридж», предназначенного для этой цели. Я не нашел ничего полезного с помощью поиска в Google (в основном потому, что любой поиск с термином «java» приводит к миллиарду посещений), но здесь есть люди, которые, кажется, знают все, поэтому я решил спросить.

1 Ответ

1 голос
/ 05 июля 2010

Один из способов помочь решению проблемы - использовать один из двух ответов здесь . Я успешно получил решение на основе Java для работы с переменными.

Второй можно легко адаптировать к функции JS util. IE

  return toJavaArray(["something",1]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...