TUTORIEL www.antislashn.org
GWT 2.7 - Jetty et sources de données
ObjectifsConfigurer une source de données avec GWT et Jetty.
ProblématiqueGWT 2.7 utilise Jetty 8.1 (cf. http://www.gwtproject.org/release-notes.html).
Le projet Jetty a migré de mortbay vers eclipse. Les exemples classiques que l'on trouve habituellement sur internet ne fonctionnent pas car :
• les classes utilisées dans le fichier de configuration ne sont pas les mêmes• les librairies nécessaires pour l'utilisation des classes du fichier de configuration ne sont pas
livrées avec le SDK de GWT
Pré-requisEn plus du SDK de GWT, il faut télécharger l bundle Jetty pour en extraire les librairies manquantes.
Page de téléchargement : http://download.eclipse.org/jetty/Bien choisir la version 8.1.17
Franck SIMON Titre 1/[email protected] 26/07/2015 - version 1.0
\n
TUTORIEL www.antislashn.org
Fichier de configuration des sources de données
Le fichier jetty-web.xml doit être créé dans le répertoire WEB-INF (au même niveau que le fichier web.xml).
Le listing suivant en donne la structure de base :
<?xml version="1.0"?><!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext"><New id="DB" class="org.eclipse.jetty.plus.jndi.Resource">
<Arg>jdbc/france</Arg><Arg>
<New class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource"><Set name="Url">jdbc:mysql://localhost:3306/france</Set><Set name="User">user</Set><Set name="Password">password</Set>
</New></Arg>
</New></Configure>
Notez les packages des classes de Jetty.
Le premier argument passé à la classe Resource correspond au nom JNDI de la source de données. Ce nom JNDI sera utilisé par la couche de persistance, soit dans le fichier persistence.xml, soit par injection de dépendance, ou recherche JNDI. Dans l'exemple le nom JNDI est jdbc/france.
Le second paramètre correspond à la source de donnée elle-même. Ici celle de MySql. On retrouve ensuite la liste habituelle de paramètres permettant la connexion à la base de donnée.
Ajout des librairies
Décompressez l'archive de Jetty, récupérez dans le répertoire lib les bibliothèques suivantes :• jetty-jndi-8.1.17.v20150415.jar• jetty-plus-8.1.17.v20150415.jar
et copiez les dans le répertoire WEB-INF/lib de votre projet.
Le répertoire war de votre projet doit ressembler à ceci :
Franck SIMON Titre 2/[email protected] 26/07/2015 - version 1.0
\n
Top Related