History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: IDEADEV-23840
Type: New Feature New Feature
Status: Open Open
Priority: Normal Normal
Assignee: Dmitry Avdeev
Reporter: Mike Hanafey
Votes: 2
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
IDEA: Development

JSF Facelets: File needs to be both xhtml and jspx

Created: 10 Dec 07 17:06   Updated: 12 Dec 07 13:31
Component/s: J2EE.JSF
Fix Version/s: None

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown

Build: 7,584
Severity: Medium


 Description  « Hide
There are very significant benefits using the Facelets view handler over the standard JSP view handler, and IDEA currently supports this, sort of.

One big issue is around the file type assigned to the facelets view files, which normally have the extension and behaviour of XHTML files. The problem is XHTML files do not recognize EL expressions, and consequently with XHTML files mapped to "*.xhtml", the programmer gets no help around the names of managed beans, and their property names, etc. This is fixed by registering "*.xhtml" as a JSPx file, but there is a catch: now IDEA does not provide the very useful action "Show applies styles for tag", and so the programmer is forced to do the mechanical CSS cascade mentally.

In addition, the XHTML syntax checking is more lenient when mapped as a JSPx, and consequently when this file registration is in effect, silly errors show up when the web app is deployed, instead of immediately getting caught in the editor.

This would be solved if there was a composite file type "XHTML + JSF" which would behave like a pure XHTML with the small extension that it would be EL and mananged bean aware. It should also support structured comments for variables and CSS paths for special cases where extra information is needed because it cannot be inferred automatically.



 All   Comments   Work Log   Change History      Sort Order:
Mike Hanafey - 11 Dec 07 18:58
Eliminated extraneous boldingin the original description.