This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
wiki:epims4_0m2:developer:ep-admin [2008/09/17 09:21] dupierris créée |
wiki:epims4_0m2:developer:ep-admin [2008/10/02 10:21] (current) |
||
---|---|---|---|
Line 19: | Line 19: | ||
(référence : [[http://code.google.com/docreader/#p=google-web-toolkit-doc-1-5&s=google-web-toolkit-doc-1-5&t=GettingStartedCreateProject| GWT Project]] | (référence : [[http://code.google.com/docreader/#p=google-web-toolkit-doc-1-5&s=google-web-toolkit-doc-1-5&t=GettingStartedCreateProject| GWT Project]] | ||
- | * Sous cea.edyp.epims.admin on trouve ''AdminManager.gwt.xml'' : définition du module | + | * Sous cea.edyp.epims.admin on trouve ''AdminManager.gwt.xml'' : définition du module utilisé pour le //hosted// mode. |
* package cea.edyp.epims.admin.public : contient les fichiers (css, js, html...) qui seront copié tels quel dans l'application web finale. | * package cea.edyp.epims.admin.public : contient les fichiers (css, js, html...) qui seront copié tels quel dans l'application web finale. | ||
* package cea.edyp.epims.admin.client : Code qui sera ensuite compilé en JS pour être exécuté coté client. Voir les restriction sur le site GWT... | * package cea.edyp.epims.admin.client : Code qui sera ensuite compilé en JS pour être exécuté coté client. Voir les restriction sur le site GWT... | ||
* package cea.edyp.epims.admin.server : Code Java exécuté coté serveur. | * package cea.edyp.epims.admin.server : Code Java exécuté coté serveur. | ||
+ | |||
+ | ==== Hosted Mode pour le développement Développement ==== | ||
+ | GWT permet de tester son application avec un serveur embarqué. | ||
+ | |||
+ | Le fichier ''AdminManager.gwt.xml'', qui est utilisé pour ce mode et uniquement pour ce mode, est mis à jour automatiquement lors de la création de RemoteService par CypalStudio. La définition du servlet implémentant le nouveau RemoteService est ajouté : | ||
+ | <servlet class="cea.edyp.epims.admin.server.DataManagmentServiceImpl" path="/data.service"/> | ||
+ | |||
+ | Or nous utilisons une architecture hibernate / spring et l'accès aux services GWT ne peut pas se faire directement ! Il est nécessaire de passer via les servelt dispatcher de spring ... voir chapitre cote serveur... ce qui n'est pas possible en //hosted mode//. Par conséquent, lors de l'ajout de nouveau RemoteService il est nécessaire : | ||
+ | * de créer, coté serveur, un FakeXXXGWTServiceImpl | ||
+ | * de modifier ''AdminManager.gwt.xml'' pour référencer cette classe | ||
+ | |||
+ | <servlet class="cea.edyp.epims.admin.server.FakeDataMngtServiceImpl" path="/data.service"/> | ||
+ | |||
==== Code Client ==== | ==== Code Client ==== | ||
Line 86: | Line 99: | ||
</bean> | </bean> | ||
- | * définition des bean appelé : tous ayant la même classe d'implémentation mais avec la propriété remoteService initialisée différement. Ces remoteService correspondent à l'implémentation des RemoteService GWT : | + | * définition des bean appelé : tous ayant la même classe d'implémentation mais avec la propriété remoteService initialisée différement. Ces remoteService correspondent à l'implémentation des RemoteService GWT. __**Attention**__ : en plus de ce que dit la doc, GWTController doit également implémenter ServletContextAware pour être correctement initialisé ! |
<bean id="archiveController" class="cea.edyp.epims.admin.server.GWTController"> | <bean id="archiveController" class="cea.edyp.epims.admin.server.GWTController"> |