2010-11-08 45 views
8

Im essayant JSF2 CDI (soudure) haricots éclipse helios au lieu de ManagedBeans, mais ne peut pas faire l'auto-complétion dans la langue d'expression pour mes Named haricots (le #{myNamedBean.Ctrl +espace} thingy)Content Assist pour JSF2 + CDI (soudure) haricots + Eclipse Helios

Mais OTOH avec ManagedBeans, le contenu aide fonctionne bien .. le contenu est d'aider pour les haricots CDI encore pris en charge dans Eclipse Helios?

Quelqu'un at-il des expériences dans ce domaine?

Répondre

13
  1. Installez JBoss tools. Puis en ajoutant <nature>org.jboss.tools.jsf.jsfnature</nature> à la section natures du fichier .project, le support a été amélioré dans mon édition Eclipse J2EE Helios. (Cette étape est probablement égale à Configure->Add JSF Capabilities dans les paramètres du projet.) L'achèvement du contexte fonctionne alors pour cc.attrs.<ctrl-space> lors de la construction de compositions de composants, mais malheureusement pas pour @ManagedBean s.

  2. Passer du ManagedBeans au CDI: J'ai changé tous les @ManagedBean s à @javax.inject.Named et les champs d'application à @javax.enterprise.context.*Scoped etc. Je permettent également Support CDI dans les paramètres du projet. Ensuite, j'obtiens l'achèvement du contexte sur les haricots au .xhtml!

Première limitation: Cela ne fonctionne que lorsque EL fait partie d'une valeur d'attribut. Cela ne fonctionne pas si vous utilisez simplement #{EL} ailleurs sur la page .xhtml.

Deuxième limitation: Si vous définissez le nom de votre bean via une constante, il n'est pas reconnu pour la concurrence de contexte: Ne fonctionne pas: @Named(value = MyBean.BEANNAME). Vous devez définir le nom comme une chaîne, comme: @Named(value = "myBean")

Troisième limitation: Si vous utilisez des appels de méthode paramétrés (par exemple avec Tomcat7 ou Glassfish), cela n'est pas pris en charge par la saisie semi-automatique. La saisie semi-automatique affiche uniquement les propriétés get/set/is du bean.

Note: Il fonctionne hors de la boîte à Netbeans 7.

+0

Grand, merci! – bertie

+0

Lorsque nous ajoutons « org.jboss.tools.jsf.jsfnature» à la.fichier de projet est-il un problème pour déployer le projet sur Glassfish ou pour utiliser le plugin Glassfish dans Eclipse? Et lequel de tous les outils JBoss nous devons installer pour obtenir l'assistance de contenu pour les facelets, quand nous ne voulons pas installer tous les outils de JBoss? –

+0

Premièrement: Je ne pense pas qu'il y aura de problème avec Glassfish. Deuxièmement: Essayez tous avec JSF et CDI dans leurs noms. – alfonx

2

S'il y a un support, ce serait à partir de JBoss Tools.

+0

merci pour l'info, mais je pensais à quelque chose qui n'est pas spécifique pour jboss – bertie

+0

@Albert Kam c'est un plug-in pour Eclipse Je pense que – Bozho

0

Avant d'installer JBossTools, s'il vous plaît noter que pour un support complet automatique EL et géré la cartographie de haricots tout ce que vous avez besoin est ces 2 composants de l'ensemble d'outils JBoss.

1. JBoss Tools JSF 
2. JBoss Tools Visual Page Editor 

Si vous ne sélectionnez pas ces outils spécifiques, tous les outils 20+ seront installés. Notez également que votre association de fichier * .xhtml par défaut ne changera pas après l'installation de l'outil. Vous devrez peut-être modifier manuellement la préférence d'association de fichier. File>Preference>File Associations. Select * xhtml et set "JBoss Tools Visual Page Editor" as the default editor.