Je démarre un nouveau projet d'entreprise et utilise Glassfish 3
comme serveur d'application et NetBeans 6.9
comme IDE
. J'ai quelques EJBs
que je veux accéder à distance d'une application Swing
de bureau. TOUJOURS il y a deux options - utilisez la recherche JNDI
ou exécutez l'application Swing
dans un conteneur client-application et utilisez les annotations @EJB
. J'ai essayé avec succès la première option mais j'ai dû copier toutes les bibliothèques glassfish
pour satisfaire les dépendances (environ 50MB, que je ne trouve pas normal). Maintenant, j'essaie la deuxième option. Dans NetBeans
, je crée un nouveau projet Enterprise Application Client
, ajoutez le projet EJB en tant que dépendance et appuyez sur Exécuter. Je reçois l'exception suivante: Sniffers with type [ejb] and type [appclient] should not claim the archive at the same time
. Maintenant, si je supprime la case à cocher package
, à côté du projet EJB dans les propriétés du projet du client d'application, j'obtiens une exception ClassNotFound
différente de mon interface distante. Je me sens un peu coincé :(Pourrait plus certains gars expérimentés, dites-moi comment accéder à leurs EJB à distance, en utilisant Glassfish 3
? Comme je l'ai écrit ci-dessus, je réussis avec la première option, mais 50 Mo sont trop dans mon avis pour un simple clientEJB remote application-client
Edit:.? Quelle approche choisir pour le déploiement et l'accès à distance du client, si vous avez la logique métier dans ejbs
sur un serveur distant
Merci pour toute suggestion!
Je vous souhaite le meilleur, Petar
Avez-vous téléchargé la version complète ou simplement le profil web? Le 'renifleur' fait partie du conteneur glassfish qui détermine le conteneur à démarrer lorsque vous déployez un fichier jar. Il introspecte le fichier jar pour rechercher des fichiers témoins comme web.xml, etc. Comme sniffer se plaint de ne pas pouvoir trouver le conteneur ejb, je suppose que vous avez peut-être téléchargé le profil web. Essayez d'obtenir la «plate-forme complète» –
J'ai téléchargé la version complète et je pense que le conteneur client se plaint parce qu'il trouve deux choses - ejb et client d'application et il ne sait pas lequel exécuter. Mais comment puis-je référencer mon projet ejb alors? –
@Chuk Voir aussi mon édition. –