Question

J'ai trois types de get demandes qui sont livrés à un fichier class sur l'application Web à partir d'un appareil mobile. Parce que l'appareil mobile fournit pas de cookies, le fichier journal frappé seulement a

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;

Si je peux instancier javascript dans mon fichier de classe, et de générer un appel de fonction javascript urchinTracker () à l'intérieur du fichier de classe, je peux le remplacer cookieArrayLength = 0 inutile; avec quelques oursin de données utiles peut lire à partir du fichier journal dans les rapports d'analyse. Nous avons cherché à scripts en Java avec Rhino ; Safari Bookshelf a:

  

Scripting dans JavaTM: Langues,   Cadres et modèles

qui nous ont aidés démo tout de suite que nous pouvons exécuter javascript dans des fichiers de classe --Ce fonctionne hors-the-box sur Java 6.

Quelqu'un sait des ressources pour les scripts avec Rhino sur Java 1.5 ou 1.4?

Alternativement, des suggestions pour l'exécution de JavaScript de Java 1.5 serait apprécié.

Était-ce utile?

La solution

[J'affichage dans une réponse, parce que je n'ai pas assez de points pour faire un commentaire sur la question elle-même.]

Êtes-vous sûr que la fonction urchinTracker () fonctionnera en dehors d'un navigateur Web? Exécution de l'interpréteur JavaScript Rhino (qui est pas trop difficile) ne sera pas suffisant si la fonction repose sur divers objets du navigateur, comme le modèle objet de document (DOM) ou XMLHttpRequest.

Je vous suggère au moins numériser les éléments internes de la fonction urchinTracker () pour voir si tel est le cas.

Autres conseils

Le API Java script ( javax.scripting) package a été introduit en Java 6, de sorte que ne sera pas disponible en Java 1.4 ou 5. Comme l'installation par défaut, Java sE 6 est livré avec une version dépouillée de Rhino Mozilla qui est interfacé par javax.scripting.

Cependant, Mozilla Rhino lui-même ne nécessite pas Java 6. Dans la page des exigences:

  

Les versions récentes de Rhino ont seulement   été testé avec JDK 1.4 et plus.   Les anciennes versions prennent en charge le plus tôt JDKs   comme 1.1.

Par conséquent, utiliser Rhino, il semble que Java 1.4 est en fait suffisante.

En ce qui concerne les ressources, les Rhino semble avoir beaucoup d'informations. En particulier, la section Embedding Rhino pourrait être utile de voir comment le script fonctionne.

Bien sûr, l'absence du paquet javax.scripting signifie que l'interface de Rhino lui-même va nécessiter l'utilisation de l'API Rhino plutôt que Java 6 API de script natif, mais je suppose que la fonctionnalité va être assez similaire . Le seul inconvénient que je vois est, si à l'avenir, Java 6 va être pris en charge sur la plate-forme cible et / ou en utilisant une autre langue, il peut nécessiter une ré-écriture d'utiliser l'API Java script plutôt que Rhino supportant directement.

JavaScript côté serveur pour la liste des projets qui exécute JavaScript au niveau du serveur -side.

Pour votre utilisation, en utilisant Rhino semble que le chemin à parcourir.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top