Objet externe + Rhino

J 'ai reproduit l’exemple de la documentation :
https://docs.simplicite.io/documentation/01-core/externalobject-code-examples.md

Paragraphe : Using HTTP parameters

FrontMailAnnMep.display = function(params) {
    var name = params.getParameter("myname", "");
    if (name != "") return "Hello " + name + " !";
    return "<form action=\"" + params.getLocation() + "\" method=\"post\">"
        + "Your name: <input type=\"text\" name=\"myname\"/>"
        + "<input type=\"submit\"/>"
        + "</form>"
};

Le formulaire est bien présent, néanmoins l’entête est mal interprétée.

Simplicité version 5.1.5

Oui c’est un vieux pattern qui date de la 3.x et qui ne doit plus être appliqué pour les UI de la 4.0 et des 5.x => quand la methode display d’un objet externe de base (Java ou Rhino) retourne du HTML le résultat s’affiche dans une iframe, c’est non seulement totalement dépassé mais c’est contraire aux principes de la UI responsive

Le bon pattern moderne pour les objets externes c’est de lui faire hériter de ResponsiveExternalObject et de l’implémenter avec des ressources HTML/JS/CSS cf. Simplicité® documentation/01-core/externalobject-code-examples et/ou les exemples de la démo

En outre, à partir de la version 5.0, Rhino est à considérer comme deprecated, en particulier pour les objets externes qui offrent, en Java, des helpers beaucoup plus avancés.

EDIT nous avons supprimé le bouton legacy “aller à la définition” (hérité de la UI 3.x) dans le cas de l’affichage en iframe (et, pour mémoire le titre peut être masqué totalement via un this.setTitle(false)) mais faire retourner du HTML reste fondamentalement un pattern 3.x dépassé à ne plus utiliser

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.