Eclipse autocomplete (aide au contenu) avec facelets (jsf) et xhtml

Comment activer l’assistance de contenu eclipse (3.5, WTP) dans les pages .xhtml pour les tags JSF (1.2), en utilisant des facelets? Il fonctionne dans les fichiers .jsp, mais pas dans xhtml.

Je google beaucoup, et dans beaucoup d’endroits (y compris le wiki MyFaces) il est dit – “Eclipse ne peut pas fonctionner avec xhtml et facelets”

Comme cela fonctionne avec les fichiers .jsp, je suppose qu’il existe peut-être un mécanisme pour activer cette aide au contenu.

J’ai commencé à travailler sur un projet qui possède déjà une base de code volumineuse. Changer les extensions n’est donc pas une option. Des plugins supplémentaires sont également indésirables, mais acceptables si rien d’autre ne fonctionne.

(Je pose la question pour vérifier si quelqu’un n’a pas trouvé de solution de contournement spirituelle à ce problème – sinon je sais que ce n’est pas possible)

J’ai trouvé la solution assez rapidement après avoir posé la question (et une heure après avoir essayé de la résoudre):

Window > Preferences > General > Content Types > Text > JSP > Add (xhtml)

Rend les fichiers traités comme des fichiers jsp. Ainsi, lorsqu’ils sont ouverts avec l’éditeur JSP, l’autocomplétion de toute bibliothèque de balises ayant ses définitions au format .tld ( et par exemple) fonctionne. Les facelets et les étiquettes à facelets ne fonctionnent toujours pas. Leurs équivalents .tld devraient être ajoutés quelque part dans les projets. Facelet peut être trouvé ici .

Une autre solution, un peu plus complexe, est décrite ici .

Dans Eclipse Indigo (3.7), l’ ajout de * .xhtml en tant que fichier jsp ne fonctionne pas.

L’ajout d’une facette de projet résout le problème:

Faites un clic droit sur le projet -> Préférences -> Facettes du projet -> Cliquez sur “JavaServer Faces”, la version devrait probablement être 2.0.

Ensuite, il demande une bibliothèque, vous pouvez cliquer sur “Désactiver …” , car vous auriez probablement déjà configuré les pots. Je n’ai pas la mienne comme bibliothèque, alors j’ai ignoré cette partie.

Capture d’écran: entrer la description de l'image ici

Utilisez JBoss Tools, c’est ce que j’utilise pour mes projets JSF + Facelets. C’est le meilleur que vous puissiez obtenir si vous devez utiliser cette technologie.

http://www.jboss.org/tools

Je recommande d’utiliser la dernière version candidate qui est CR1 car c’est celle qui est compatible avec Eclipse 3.5, la version finale devrait être bientôt disponible mais CR1 est solide.

http://in.relation.to/Bloggers/JBossTools31CR1Released

JBoss Tools a été installé et ma facette JavaServer Faces a été configurée pour mon projet (dans Eclipse Mars), mais je n’ai toujours pas reçu d’assistance de contenu de mes fichiers .xhtml . Une solution non mentionnée ici consiste à choisir des fonctionnalités JSF Add :

Ajouter des capacités JSF

Faites simplement un clic droit sur le projet et sélectionnez Configurer -> Ajouter des capacités JSF .

Cela ressemblerait à l’image ci-dessus, mais il s’agirait d’ append des fonctionnalités JSF au lieu de supprimer les fonctionnalités JSF . Dans l’image ci-dessus, j’avais déjà ajouté des fonctionnalités JSF.

Avez-vous pensé à MyEclipse ? Ce n’est pas gratuit, mais c’est un très bon outil. Cela a beaucoup aidé lorsque j’ai développé avec JSF.

Vérifiez que vous avez l’inclusion de l’espace de nom primefaces! Ainsi, votre balise html pourrait ressembler à ceci:

  

J’ai utilisé dans Eclipse Luna et Primefaces 5.

Si rien ne fonctionne, vous devez aller dans Preferences-> General-> Keys Puis recherchez “content assist” si un seul “content assist” for “lorsque” Editing Java source “existe, copiez cette commande. Et définissez la liaison sur ctrl + espace et lors de la modification de la source JSP.

Si vous avez déjà installé JBoss Tools et que vous rencontrez toujours ce problème, désinstallez les outils JBoss. Redémarrez l’éclipse. Assurez-vous de ne pas avoir d’outil JBoss dans la liste des composants installés.

Revenons maintenant au marché des éclipses.

Installez simplement: JBoss JSF, JBoss Richfaces et JBoss Visual Page Editor à partir de l’ensemble d’outils JBoss. Ne téléchargez pas le package complet fourni avec plus de 30 outils. Il s’agit d’un paquet gonflé qui ralentira l’éclipse et gonflera inutilement votre cas d’éclipse.

Activez la facette JSF avec la dernière bibliothèque d’implémentation JSF. Je vous recommande de le télécharger directement sur ce site depuis le site officiel du JSF.

Fermer l’éclipse.

Ouvrez eclipse et créez un nouvel espace de travail.

Importez le projet dans le nouvel espace de travail.

Cela a fonctionné pour moi!

J’ai installé JBoss Tool à des fins de codage JSF.Mais dans * .XHTML, il n’a pas montré d’aide au contenu pour ManagedBean .. donc j’ai suivi les étapes qui me conviennent.

Pour mon projet, ces étapes ont fonctionné.

1) Faites un clic droit sur le projet -> Configurer -> Ajouter des capacités JSF. Procédure pas à pas (Vailaaa !!! Résolution de problèmes). Allez dans le fichier Xhtml et essayez de coder # {m ^ anagedBeans.HelloJSF ( )} où (^) c’est le sysmbol que vous devez juste “Ctrl + espace” Content Assist fonctionnera. ici

Suggestion: en éclipse Indigo (classique) et en travaillant avec des projets Maven

Comme l’image que vous pouvez voir ci-dessous, vous ne pouvez pas trouver la sélection de Project Facets suggérée par @mist (parce que je n’ai pas installé de plug-ins mais m2e je suppose).

entrer la description de l'image ici

alors, je l’ai fait pour résoudre ce problème:

Window >> Preference >> General >> Content Types >> XML >> Add file association (*.xhtml)

ce travail pas si bien (arrêt de contenu).