GWT: Où dois-je placer des ressources externes pouvant être incluses dans mon fichier .gwt.xml?

J'utilise GWT 2.4. Je souhaite inclure des fichiers Javascript et CSS dans ma page principale du module GWT. Mais j'ai du mal à les charger. Dans mon fichier .gwt.xml, j'ai

<!--  Scripts -->
<script src="js/tabber.js"/>
<script src="js/sortable.js"/>

<!--  Stylesheets -->


Les dossiers "js" et "css" se trouvent dans mon répertoire "war", mais ce n’est évidemment pas le bon endroit pour les placer. Où devraient-ils aller? Les répertoires (relatifs à la racine de mon projet) sont

gwt-unitCache
src
test
test-classes
war
1
Si vous avez une question à propos de JSNI, posez-la séparément. Cette question concerne le chargement des scripts via un fichier gwt.xml .
ajouté l'auteur Jason Terk, source

1 Réponses

Autant que je m'en souvienne, ces chemins sont relatifs à l'emplacement du fichier .gwt.xml. Avez-vous essayé de les placer là-bas? (c'est-à-dire juste à côté des paquets java pour ce module particulier)

Update:

"The default public path is the public subdirectory underneath where the Module xml File is stored." - http://code.google.com/webtoolkit/doc/latest/DevGuideOrganizingProjects.html#DevGuideModules

3
ajouté
Malheureusement, placer les dossiers "js" et "css" dans le même dossier que mon fichier .gwt.xml ne fonctionnait pas. Mon fichier .gwt.xml se trouve dans le dossier src/com/myco/clearing/productplus. Google continue de parler d'un dossier "public"? Le chemin que j'ai énuméré est-il public?
ajouté l'auteur Dave, source
Voir mon édition. Déplacer des éléments dans un dossier public me permet de référencer des éléments via une URL, mais ma fonction JSNI (incluse ci-dessus) ne recherche pas les fonctions. Quelqu'un sait quelque chose sur JSNI?
ajouté l'auteur Dave, source
Hé Jason, c'est tout à fait correct. Si vous créez une réponse, je l'accepterai. Merci, -
ajouté l'auteur Dave, source
Remarque: les chemins sont relatifs à votre module construit ( GWT.getModuleBaseURL() ), mais vous pouvez également mettre des références d’URI absolues (par exemple, au API Google Libraries ou tout autre CDN)
ajouté l'auteur Thomas Broyer, source
Votre application GWT s'exécute dans le contexte d'une iframe sur la page. La fonction tabberAutomatic ne lui est donc pas visible. Accédez à la fonction à l'aide de l'objet $ wnd défini de manière implicite: $ wnd.tabberAutomatic (tabberOptions) .
ajouté l'auteur Jason Terk, source
Si votre projet est mavenisé, vous devrez placer le dossier public sur "src/main/resources/your/package/public" en vous assurant que le chemin est égal à celui de votre fichier gwt.xml. Cela fonctionne très bien pour les modules maven qui produisent un pot et sont destinés à être utilisés par un autre projet.
ajouté l'auteur cirovladimir, source
@Dave: Créez simplement un dossier appelé "public" dans "src/com/myco/clearing/productplus" et placez-y votre JS et votre css. De cette façon, les dossiers JS et CSS seront copiés là où se trouve le JavaScript GWT compilé. Je ne suis pas trop sûr des détails (cela fait un moment), mais vous devriez pouvoir les trouver ici: code.google.com/webtoolkit/doc/latest/…
ajouté l'auteur Flo, source