10
votes

GWT injecter un élément de script dans le fichier HTML

sur mon projet GWT. J'ai un script qui appelle le dictionnaire: xxx

au lieu d'écrire cet élément de script dans le fichier HTML. Je veux l'injecter dans le HTML du point d'entrée, sur la charge du module.

Comment puis-je le faire?

gwt

1 commentaires

Une question similaire a également été posée: GWT: chargement différé de ressources JS externes


4 Réponses :


8
votes

Fondamentalement, vous injectez l'élément de script dans votre chargeur Onmoduleload ():

    Element head = Document.get().getElementsByTagName("head").getItem(0);
    ScriptElement sce = Document.get().createScriptElement();
    sce.setType("text/javascript");
    sce.setSrc("conf/iw_dictionary.js");
    head.appendChild(sce);


2 commentaires

Utile pour ceux d'entre nous utilisant 2.3 (ScriptInjectorCor est introduit en 2.4)


Je mettant en œuvre la protection de la CSRF dans mon application Web. J'ai fait toute la configuration requise et je peux voir le jeton d'être généré / injecté dans l'en-tête de la demande. Permettez-moi de vous dire un peu l'architecture de l'application, j'ai des pages JSP qui appellent des services à des services à l'aide d'Ajax pour obtenir les données et afficher dans l'interface utilisateur. Ma question ici est "Pouvons-nous protéger les appels de service également avec le CSRF Guard?" Si cela est possible, comment puis-je faire cela parce que cela ne va pas à la classe CSRFGuardFilter.java lorsque je débrouge dans l'exécution. Merci de votre aide.



14
votes

Utiliser com.google.gwt.core.client.gwt.core.client.scriptInjector , car il a été créé spécifiquement pour des trucs comme celui-ci xxx


3 commentaires

ScriptInjectorCor La classe est disponible dans GWT_V2.7.0. Si je dois injecter un fichier JavaScript avec gwt_v.1.x, alors est-il possible ou pas?


Il est possible, mais vous devrez utiliser des solutions des réponses ci-dessous. Vous pouvez utiliser la réponse fournie par DOM (mais vous devrez utiliser une API plus ancienne pour la création d'éléments) ou Thomas Broyer Réponse (je ne suis pas sûr à 100% s'il travaillait pour GWT 1.xx)


Je mettant en œuvre la protection de la CSRF dans mon application Web. J'ai fait toute la configuration requise et je peux voir le jeton d'être généré / injecté dans l'en-tête de la demande. Permettez-moi de vous dire un peu l'architecture de l'application, j'ai des pages JSP qui appellent des services à des services à l'aide d'Ajax pour obtenir les données et afficher dans l'interface utilisateur. Ma question ici est "Pouvons-nous protéger les appels de service également avec le CSRF Guard?" Si cela est possible, comment puis-je faire cela parce que cela ne va pas à la classe CSRFGuardFilter.java lorsque je débrouge dans l'exécution. Merci de votre aide.



3
votes

Vous pouvez simplement ajouter un