2010-05-07 21 views
3

Je migre une application JSF 1.1 vers le profil Web Java EE 6 en procédant par étapes. Je suis en train de passer de JSP avec JSF 1.1 à Facelets sous JSF 1.2 en utilisant jsf-facelets.jar pour JSF 1.2, et j'ai reçu une trace de pile "intéressante" en essayant de chercher une clé dans une Map en utilisant un "{Bean .foo.map.key} "où la pile-stack se plaignait de" clé "n'étant pas un entier valide. (Après introspection de code, je suis en train de le contourner en utilisant un nombre comme clé). Ce bug n'est pas la raison de cette question.Glassfish 3: Comment obtenir et utiliser une construction de développeurs pour pouvoir naviguer dans une trace de pile, y compris le code Glassfish?

Dans une telle situation, il est essentiel de pouvoir naviguer dans la source de chaque ligne de la trace de la pile. Dans Eclipse, j'attache normalement un fichier source à chaque fichier jar du chemin de compilation, mais dans ce cas particulier, l'adaptateur de serveur Glassfish crée automatiquement une bibliothèque contenant les fichiers jar. De plus, il n'y a pas, à ma connaissance, de version de débogage de Glassfish où les sources sont incluses dans le paquet. Glassfish est un projet Maven non trivial, et un peu difficile aussi. Je ne suis pas très familier avec maven, mais j'ai réussi à vérifier le code de Subversion et à le construire pour la balise 3.0 selon http://wiki.glassfish.java.net/Wiki.jsp?page=V3FullBuildInstructions#section-V3FullBuildInstructions-CheckoutTheWorkspace - il semble que ce soit le code correspondant à la version 3.0 officielle. Après avoir terminé la partie "mvn -U install", j'ai ensuite essayé de créer des projets Eclipse en utilisant d'abord "mvn -DdownloadSources = true eclipse: eclipse", puis les importer dans Eclipse Java EE 3.5.2 et en spécifiant La variable M2_REPO mais la plupart des projets ont encore des erreurs de compilation, et je ne trouve aucune instruction d'Oracle sur la façon de le faire.

J'apprécierais de vous aider à obtenir un espace de travail IDE fonctionnel reflétant la version 3.0 de Glassfish. J'ai Eclipse 3.5.2, NetBeans 6.8 et 6.9 beta, et IntelliJ IDEA 9, et Linux/Windows/OS X le font.

Répondre

0

Il y avait un fil récent sur la liste de diffusion glassfish au sujet du débogage glassfish. Voici un lien vers le thread pertinent si vous suivez ce fil, vous devriez être sur votre chemin.

+0

Merci - pointeur intéressant, mais il semble que les développeurs ne l'ont pas déjà en place. Je me demande comment ils font le travail réel? –

2

Est-ce que http://wiki.glassfish.java.net/Wiki.jsp?page=V3DevelopmentInstructions aide? Par ailleurs, si mvn install fonctionnait correctement, il devrait être possible d'importer le projet sous Eclipse après mvn eclipse:eclipse sans erreurs de compilation. Je ne peux pas reproduire le problème en ce moment mais je me demande vraiment pourquoi vous obtenez des erreurs de compilation (par exemple, est-ce dû à des dépendances manquantes?).

Alternativement, vous pouvez essayer d'ouvrir le projet sous NetBeans ou IDEA, ils peuvent tous deux comprendre un pom.xml hors de la boîte. Mais comme je l'ai dit, cela devrait aussi fonctionner avec Eclipse si la compilation sur la ligne de commande réussit.

+0

Merci, cette page aide beaucoup. J'ai d'abord trouvé la page de construction, puis je me suis concentrée sur la construction (selon la page avec les instructions de construction), puis j'ai exécuté "mvn eclipse: eclipse" sur cette build, que je n'ai pas trouvé hors des sentiers battus. Les tests initiaux montrent que Netbeans et IDEA peuvent travailler directement avec l'extraction de l'emplacement de subversion approprié, mais que je trouve IDEA plus intuitif pour naviguer vers une personne Eclipse. –