JSF with Facelets broken?
First, thank you so much for SEAM support. This is the number one feature I have been waiting for.
Unfortunately it looks like JSF is no longer working in xhtml facelets pages.
Pages starting like this:
all resources are marked as red (URI is not registered (Setting | IDE Settings | Resources), except the ui facelets tag lib.
The JSF and seam libs are added as Module libraries.
I have tried creating a new project from scratch and loading a 7.0.3 project. Same result.
Loading the project in 7.0.3 works fine.
Also, creating a jsp page and using
<%@ taglib prefix="f" uri="http://java.sun.com/jsf/core" %>
<%@ taglib prefix="h" uri="http://java.sun.com/jsf/html" %>]]>
also works fine.
Any suggestions?
Thanks and Regards,
Claus
Please sign in to leave a comment.
It seems your xhtml files are not recognized as facelets. How do you
configure facelets support? IDEA expects something like
com.sun.facelets.FaceletViewHandler ]]>
in your faces-config.xml.
Also, do you have web facet and jsf facet configured?
Yes, I do have the faceletsviewhandler defined in my faces-config. The project also compiles, deploys and works from inside IDEA. Also, all my Facets are detected correctly including SEAM and WEB facet with JSF 1.2.
But problem is now solved. I had to go into Settings -> filetypes and re-assign *.xhtml to the "Facelets file type" instead of the default XHTML file type. After that everything is fine.
Guess I must have done that for the old IDEA 7 releases also.
In my opinion, it is not very obvious that you need to do this in order to use facelets. Maybe IDEA should auto detect this from the faces-config file?
Regards,
Claus
Yes it should. Have you a JSF facet configured for your web module?
Yes, and IDEA also shows the correct information in the JSF Facet settings (JSF Version = Java Server Faces 1.2 and JSF Implementation = Java Server Faces Reference Implementation).
Dmitry Avdeev wrote:
Uh, oh, that will be a problem when you use trinidad - see
http://wiki.apache.org/myfaces/Facelets_with_Trinidad
With trinidad the facelet view handler is configured in web.xml as
<context-param>
<param-name>org.apache.myfaces.trinidad.ALTERNATE_VIEW_HANDLER</param-name>
<param-value>com.sun.facelets.FaceletViewHandler</param-value>
</context-param>
I see. It seems we have no reliable way to auto-detect facelets :( I think
there will be an option like "treat xhtml files as facelets" in jsf facet
configuration. The facelets file type will be most probably dropped.
Hi!
I thought that too. We have an inherited ViewHandler here, you would
have to check the inheritance too to autodetect facelets.
Doable I think, but an option to override the autodetection would be
nice anyway.
Ciao,
Mario
I too ran into trouble trying to use the trinidad taglibs. Actually for both Tomahawk and Trinidad to function correctly in IntelliJ when developing facelets I had to manually extract the .xml taglib files from the .jar's META-INF folder and put them in my webapps /WEB-INF folder. Also had to then configure the taglibs as a resource and point to the new taglib files.
Would sure be nice if my inclusion of the tomahawk-facelets-taglib.jar and trinidad-impl.jar would allow auto tag completion when working in an .xhtml view!
Edited by: Greg Roll on Aug 7, 2008 9:20 PM