j2js - Global
L’include de script j2js vous permet de convertir des objets Java en objets JavaScript.
Si la valeur donnée est un objet Java qui peut être converti en un objet JavaScript équivalent, cette conversion est effectuée et le résultat est renvoyé. Sinon, l’objet Java d’origine est renvoyé.
La classe j2js est disponible pour les scripts côté serveur.
Conversion spécifique effectuée dans l’ordre où elles sont vérifiées.
- Chaîne Java > chaîne JavaScript
- Booléen Java -> booléen JavaScript
- Nombre entier Java > numéro JavaScript
- Java Long > numéro JavaScript
- Java Double > numéro JavaScript
- Octet Java > numéro JavaScript
- Numéro Java Float -> JavaScript
- Java Short -> numéro JavaScript
- Caractère Java > numéro JavaScript
- Tableau Java -> tableau JavaScript avec ordre préservé
- Liste Java > tableau JavaScript avec ordre préservé
- Carte Java > objet JavaScript avec les paires clé/valeur traduites en paires propriété/valeur
- Ensemble Java > tableau JavaScript dans un ordre arbitraire
Les conversions sont effectuées de façon récursive sur les éléments des tableaux, des listes ou des collections. Par exemple, étant donné un tableau Java ArrayList de ArrayLists de chaînes, cela renvoie un tableau JavaScript de tableaux de chaînes.
j2js - j2js(Objet javaObject)
Convertit un objet Java du code système en objet JavaScript.
| Nom | Type | Description |
|---|---|---|
| objet java | Objet | Un objet Java à partir du code système tel qu’un appel de packages. |
| Type | Description |
|---|---|
| Objet | Un objet JavaScript si le paramètre peut être converti, sinon il renvoie l’objet Java. |
var tu = new TableUtils("cmdb_ci_win_server");
var classes = tu.getHierarchy();
//getHierarchy returns a Java ArrayList, which is not exactly like a JavaScript Array
//for example you cannot get length
gs.print("classes = " + classes);
gs.print("classes.length = " + classes.length);
//convert to a JavaScript Array
gs.include("j2js");
var jsClasses = j2js(classes);
gs.print("jsClasses = " + jsClasses);
gs.print("jsClasses.length = " + jsClasses.length);
Sortie :
classes = [cmdb_ci_win_server, cmdb_ci_server, cmdb_ci_computer, cmdb_ci_hardware, cmdb_ci]
classes.length = undefined
jsClasses = cmdb_ci_win_server,cmdb_ci_server,cmdb_ci_computer,cmdb_ci_hardware,cmdb_ci
jsClasses.length = 5