2008-12-24 4 views
1

Je voudrais créer une application simple Google Web Toolkit qui utilise des RPC. Pour la persistance, j'aimerais utiliser quelque chose comme l'API Java Persistence. Est-ce que cela signifie que je dois utiliser un serveur d'application comme Glassfish? ou puis-je rester avec un simple conteneur web?La façon la plus simple d'utiliser JPA avec mon application GWT

En termes de bibliothèques de béton, comment dois-je procéder? TopLink? Hiberner? ...

Répondre

3

Je crois que la substance GWT RPC est implémentée en tant que simples servlets. En supposant que, vous pouvez totalement utiliser JPA dans un conteneur Web comme Tomcat et n'avez pas besoin d'un serveur d'application J2EE complet.

Pour ce faire, vous devrez faire un peu de configuration manuelle pour rendre l'accès au PersistenceContext plus simple. Hibernate suggère d'utiliser ThreadLocal, et j'ai une entrée sur mon blog qui détaille comment je l'ai fait pour Tomcat here

2

Je recommanderais personnellement Glassfish, comme étant plus stable, mieux implémenté et généralement de meilleure qualité que Tomcat. Je ne veux pas commencer une guerre de flammes (en disant que mettre J2EE dans Tomcat est comme mettre du rouge à lèvres sur un cochon), mais je vais vous dire comment nous déployons toutes nos applications:

Nous utilisons Glassfish comme toile conteneur, TopLink en tant que fournisseur de persistance, généralement connecté à une base de données MySQL 5. Nous utilisons les POJO JPA depuis la couche EJB, via le niveau Web et la couche GWT, via RPC. Nous utilisons également des Stripes et des JSP pour toute la logique de présentation qui ne nécessite pas de fonctionnalité AJAX. Nous n'avons jamais eu de problème avec cette approche et avons jusqu'à présent fait au moins 10 projets de grande envergure de cette façon. C'est la meilleure architecture que nous avons eu à ce jour, et nous en avons eu beaucoup (tomcat, jboss, hibernate, struts, spring, etc, etc.).

+0

Comment puis-je utiliser JPA POJOS via la couche Web GWT? J'ai un problème avec la sérialisation - aidez-moi s'il vous plaît mon ami! –

1

Vous pouvez utiliser n'importe quel conteneur que vous voulez, je veux dire les conteneurs servlet et jpa.

Le point clé est que GWT ne supporte pas jpa, donc vous devez utiliser parten de conception DTO. Cela va garder tout organisé et vous n'aurez pas de problèmes avec le chargement paresseux.

Questions connexes