# JSP JSF Source Page Editing Tools

Currently there is no graphical editor supplied with in the Eclipse Web Tools Project so the only way to edit a JSF JSP page is through a text or source editor. The JSF Tools team has provided enhancements to the JSP source editor making JSF page development simpler.

The JSF Tooling has provided frameworks that allow the source page editor to provide services for most of the attribute values from the JSF standard Core and HTML tag libraries where it makes sense. These frameworks are "meta-data" driven and extensible which would allow tag library developers to add their own content assist, validation and other service quite easily. In other words, the features supplied with the JSF Tooling will eventually make it to the WTP layer so that the source editing experience for other JSP tag libraries will be improved.

## Content Assist

Content Assist is the Eclipse text editor term for providing context-based proposals at the currrent text insertion point. The JSP editor already provides excellent tag library support whereby a popup of possible tags and attributes are made available as you type.

Examples of non-Expression Language (EL) support
- String enumerations:
- Faces Configuration Elements:

Examples of Expression Language (EL) support
- Value Bound Attributes:
- Method Bound Attributes:

## Validation

Beyond the basic JSP validation already provided with the JSP editor, there is now semantic validation of the JSF standard tag libraries for both EL and non-EL attribute values.

The EL validation is quite comprehensive offering not only basic syntax validation, but also object existence and type and signature validations.

If there is a problem with the value provided for an attribute it will be detected and you should see either a warning or error marker along with a "squiggly" under the value depending on the severity. There may be multiple problems and each will be listed if you hover your mouse over the squiggly or the annotation marker in the side ruler. The validation is aware of the JSF Faces Configuration model(s) in the the project and can flag problems of missing configuration items.

## Future Features

The JSF Tools team would like to be able to provide the following features for the JSF standard tag libraries using the meta-data frameworks developed in this release:

- Quick Fix/Quick Assist - provide context sensitive proposals for creating approriate Java Classes and Faces Configuration elements
- Hyperlink - the ability to jump from the JSF JSP source editor to the referenced object's appropriate editor
- Others? - please enter enhancement requests for your ideas using Bugzilla

JSF Application Configuration

Taglibrary Library
JSF Core Library
JSF HTML Library
Faces Configuration Editor

Create JSF JSP Page