You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@netbeans.apache.org by Jens Zurawski <jz...@diegurus.de> on 2021/01/28 13:31:29 UTC

Netbeans 12.2 Java EE code completion (e.g. omnifaces) not always working as expected

Hi all,

I'm currently developing a new Java EE Web application (targeting a 
TomEE 8.x webprofile), and because it's a new development I already want 
to start it in Java EE 8/JSF 2.3 (but the code completion problems also 
shows in a Java EE 7/JSF 2.2 setup). I have to admit that I'm fairly new 
to Java EE development, so please don't shoot me, if my questions are 
silly ;-)

Problem exists in Netbeans 11.1 and even in a completely fresh installed 
Netbeans 12.2.

The problem is that when I'm including the omnifaces library, building 
and deployment works without problems and the Web application is working 
like it should. But in the IDE the code completion either don't work at 
all, e.g. on the omnifaces EL functions (namespace 
http://omnifaces.org/functions) or offers the "wrong" namespace 
short-name. E.g. omnifaces are considered to be included as "o: " but 
Netbeans completion always offers "oou: ".

As far as I understand, the *.taglib.xml files give a hint for the 
short-name to be used, and in META-INF/omnifaces-ui.taglib.xml its 
clearly declared as:
<short-name>o</short-name>

Is this a bug in Netbeans that it doesn't use this hint? Or is it by 
purpose and there is a good reason for this behaviour? Interestingly 
when including Primefaces, it works perfectly as expected and the 
offered short-name from Netbeans is correctly "p: " and not "pou: ".

Of course this short-name issue is just a little inconvenience during 
coding and can easily be changed after Netbeans completion has inserted 
it into the file. But it's a bit annoying to do it in every new Facelet 
file.

But the total missing of the omnifaces EL function completion is a 
bigger annoyance, because remembering the exact function name of all the 
functions, especially the ones which are not used very often, is the job 
an IDE code completion is for. ;-)

Am I missing something or doing something wrong?

To reproduce this, just create a new "Java with Maven -> Web 
Application", add omnifaces dependency (3.x for EE8, or 2.x for EE7) and 
try to add something like <o:form> (the IDE will offer <oou:form>) or 
#{of:prettyURL} (the IDE will offer nothing at all) into a Facelet file.

thanks and cu
Jens





---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@netbeans.apache.org
For additional commands, e-mail: users-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists