написание сценариев на java - javascript из файла класса на стороне сервера в Java 1.5

StackOverflow https://stackoverflow.com/questions/989017

Вопрос

У меня есть три типа получить запросы, которые доставляются в класс файл в веб-приложении с мобильного устройства.Поскольку мобильное устройство не предоставляет файлов cookie, просмотр файла журнала содержит только

in.ter.nal.ip   ser.ver.i.p:port    2009-06-05  09:14:44    GET /applicationname/mobiledevicexml    reqtype=login&userid=xx###  200 87  -   MercuryMobile/1.0 CFNetwork/342.1 Darwin/9.4.1  cookieArrayLength=0;

Если я смогу создать экземпляр javascript в моем файле класса и сгенерировать вызов функции javascript для urchinTracker() изнутри файла класса, я смогу заменить это бесполезное cookieArrayLength=0;располагая некоторыми полезными данными, urchin может считывать их из файла журнала в отчеты analytics.Мы рассматривали написание сценариев на Java с помощью Rhino;На книжной полке Safari есть:

Написание сценариев на JavaTM:Языки, Фреймворки и паттерны

это помогло нам сразу продемонстрировать, что мы можем запускать javascript в файлах классов - это работает "из коробки" на Java 6.

Кто-нибудь знает какие-нибудь ресурсы для написания сценариев с Rhino на Java 1.5 или 1.4?

С другой стороны, мы были бы признательны за любые предложения по запуску javascript с java 1.5.

Это было полезно?

Решение

[Я публикую ответ, потому что у меня недостаточно баллов, чтобы оставить комментарий к самому вопросу.]

Вы уверены, что функция urchinTracker() будет работать вне веб-браузера?Запуска интерпретатора Rhino JavaScript (что не так уж сложно) будет недостаточно, если функция полагается на различные объекты браузера, такие как объектная модель документа (DOM) или XMLHttpRequest.

Я предлагаю вам, по крайней мере, просканировать внутренности функции urchinTracker (), чтобы убедиться, что это так.

Другие советы

Тот самый Java Скриптовый API (javax.scripting) пакет был представлен в Java 6, так что он не будет доступен в Java 1.4 или 5.В качестве установки по умолчанию Java SE 6 поставляется с урезанной версией Mozilla Rhino, которая подключается через javax.scripting.

Однако, Mozilla Rhino сам по себе не требует Java 6.Со страницы требований:

Последние версии носорог имеет только протестировано с JDK 1.4 и выше.Более старые версии поддерживают JDK еще в версии 1.1.

Таким образом, для использования Rhino, по-видимому, Java 1.4 на самом деле достаточно.

Что касается ресурсов, то документация для Rhino кажется, у него много информации.В частности, Встраивание Rhino раздел может быть полезен для того, чтобы посмотреть, как будет работать сценарий.

Конечно, отсутствие javax.scripting пакет означает, что для взаимодействия с самим Rhino потребуется использование Rhino API, а не собственного скриптового API Java 6, но я бы предположил, что функциональность будет довольно схожей.Единственный недостаток, который я вижу, заключается в том, что если в будущем Java 6 будет поддерживаться на целевой платформе и / или с использованием другого языка, может потребоваться переписывание для использования Java Scripting API вместо прямой поддержки Rhino.

Видишь JavaScript на стороне сервера для получения списка проектов, которые запускают JavaScript на стороне сервера.

Для вашего использования использование Rhino кажется правильным решением.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top