2010-11-08 7 views
8

Im cercando JSF2 CDI (saldatura) fagioli in Helios eclissi invece di ManagedBeans, ma non può fare il completamento automatico all'interno del linguaggio di espressione per i miei Named fagioli (la #{myNamedBean.Ctrl +Spazio} thingy)Content Assist per JSF2 + CDI (saldatura) fagioli + Eclipse Helios

Ma OTOH con ManagedBeans, il contenuto assistere funziona bene .. è il contenuto assist per i fagioli CDI ancora supportato in Eclipse Helios?

Qualcuno ha avuto esperienze in questo?

risposta

13
  1. Installare JBoss tools. Quindi aggiungendo <nature>org.jboss.tools.jsf.jsfnature</nature> alla sezione natures del file .project, il supporto è migliorato nella mia edizione Eclipse J2EE Helios. (Questo passaggio è probabilmente uguale a Configure->Add JSF Capabilities nelle impostazioni del progetto.) Il completamento del contesto funziona quindi per cc.attrs.<ctrl-space> durante la creazione di composizioni di componenti, ma purtroppo ancora non per qualsiasi @ManagedBean s.

  2. Passare dalla ManagedBeans al CDI: ho cambiato tutti i @ManagedBean s per @javax.inject.Named e gli scopi per @javax.enterprise.context.*Scoped ecc ho anche abilitare il supporto CDI nelle impostazioni del progetto. Poi ottengo il completamento del contesto sui fagioli in .xhtml!

Prima limitazione: Funziona solo quando EL è parte di un valore di attributo. Non funziona se si utilizza semplicemente #{EL} altrove nella pagina .xhtml.

Seconda limitazione: se si definisce il nome del bean tramite una costante, non viene riconosciuto per il concorso di contesto: Non funziona: @Named(value = MyBean.BEANNAME). Devi impostare il nome come una stringa, ad esempio: @Named(value = "myBean")

Terza limitazione: se si utilizzano chiamate di metodo parametrate (ad esempio con Tomcat7 o Glassfish), questo non è supportato dal completamento automatico. Il completamento automatico mostra solo get/set/è proprietà del bean.

Nota: Funziona fuori dalla scatola in Netbeans 7.

+0

Grande, grazie! – bertie

+0

Quando aggiungiamo ' org.jboss.tools.jsf.jsfnature' a.file di progetto c'è qualche problema nel distribuire il progetto su Glassfish o usare il plugin Glassfish in Eclipse? E quale di tutti gli strumenti JBoss dobbiamo installare per ottenere l'assistenza di contenuto per facelets, quando non vogliamo installare tutti gli strumenti di JBoss? –

+0

Primo: non penso che ci sarà alcun problema con Glassfish. Secondo: prova tutti con JSF e CDI nei loro nomi. – alfonx

2

Se esiste un supporto, lo è da JBoss Tools.

+0

grazie per le informazioni, ma stavo pensando a qualcosa che non è specifico per JBoss – bertie

+0

@Albert Kam questo è un plugin per Eclipse Penso – Bozho

0

Prima di installare JBossTools, si ricorda che per EL automatico supporto completo e gestito mappatura di fagioli tutto ciò che serve è questi 2 componenti dal set JBoss Tool.

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

Se non si selezionano questi strumenti specifici, verranno installati tutti gli strumenti 20+.

Inoltre, notare che a volte l'associazione * .xhtml del file predefinito non cambierà dopo l'installazione dello strumento. Potrebbe essere necessario modificare manualmente la preferenza dell'associazione file. File>Preference>File Associations. Select * .xhtml e set "JBoss Tools Visual Page Editor" as the default editor.