2010-01-29 3 views
1

Je viens juste de commencer à étudier Java EE et j'ai fait quelques exemples (Just Hello World et d'autres un peu plus compliqués). Maintenant, je fais moi-même une petite application à des fins d'apprentissage. J'ai fait un EAR, un EJB et un WAR juste comme in this example mais, au lieu de travailler avec des interfaces, je travaille avec de vraies classes. En résumé, EJB et WAR sont dans le même package, mais je ne peux pas instancier une classe EJB à partir d'une servlet WAR, car elle ne semble pas trouver cette implémentation de classe. Lorsque vous essayez d'instancier une classe appelée « base de données » dans mon servlet, je suis l'erreur suivante d'Eclipse:Utilisation d'une classe de beans à partir d'une servlet dans une application Java EE

Database cannot be resolved to a type 

Il arrive aussi avec d'autres classes.

Une idée? Merci beaucoup.

+0

Les choses ne sont pas claires. Que voulez-vous dire par * "EJB et WAR sont dans le même paquet" *? Que voulez-vous dire par * "Je ne peux pas instancier un EJB" *, comment faites-vous cela exactement? Qu'est-ce que la classe 'Database'? Pouvez-vous clarifier ces points? Peut-être montrer du code? –

+0

Désolé Pascal, il m'est difficile de faire une meilleure explication, puisque ces concepts sont très nouveaux pour moi. De toute façon, Kaleb a eu l'idée et a répondu correctement. Merci. – Silas

+0

Pas de problème, surtout si le problème est résolu (les EJB ne sont peut-être pas le point de départ le plus facile BTW). Bonne chance. –

Répondre

2

Il semble que les dépendances du module ne soient pas définies. Le projet WAR doit avoir le projet EJB en tant que dépendance de module.

Cliquez avec le bouton droit sur le projet WAR, cliquez sur Propriétés, sur Dépendances du module Java EE et vérifiez que l'EJB est sélectionné.

Les dépendances de module sont représentées dans le fichier MANIFEST.MF de chaque composant Java EE. Ce fichier contient les noms de tous les composants dont il dépend et l'éditeur Java EE Module Dependencies met à jour ce fichier.

Questions connexes