Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [wtp-jsf-dev] Visual Page Designer support for Facelets

Hi,
Due to present time contraints I am going to have to work on getting something working on the 1.5.2 release since this is a stable base for me to work on top of.

Some comments (although please bear in mind that I am pretty new to Facelets):
The idea of a 'tag execution environment' sounds like a good way forward and should reduce the effort required for people to use a custom component library. From a Facelets point of view I think that the 'tag execution environment' will need to link in with the *.taglib.xml files rather than *.tld files for JSPs. Then the *.taglib.xml files will tell the environment what facelet ComponentHandlers to use. These control creating the component and copying the attribute values across. This applies for how Converters and Validators are handled as well. There may also be some difference to how EL is handled since I think Facelets allows for EL expressions to be used outside of a component.

The Palette also needs to work based on *.taglib.xml files as well as *.tld files. I think this means that some thought is required about how namespace URIs are mapped to the tag file. For example if I am editting a JSP document (i.e. JSP written as a XML doc where the taglibs are specified using something like <jsp:root xmlns:h="http://java.sun.com/jsf/html"; etc. then I use the XMLCatalog to tie the URI http://java.sun.com/jsf/html to the html_basic.tld file. However for Facelets I would specify <html xmlns:h="http://java.sun.com/jsf/html"; etc at the top of the XHTML file and then use the XMLCatalog to tie the URI to jsf-html.taglib.xml file. Obviously both these mappings cannot be set up in the XMLCatalog at the same time. So how is this handled if we wish to support both JSP and Facelets XHTML editting in the same workspace. This may somehow tie in with the JSF Facets ideas of how people should specify component libraries. However, I have not really looked at that in detail yet. The Palette also needs to pick its items up from either the *.tld files or *.taglib.xml files based on the type of file being edited, a JSP or XHTML file.

How far progressed is the work on defining an API and having something working with the tag execution environment? As soon as I have something working with the 1.5.2 release I would plan to move onto looking at the HEAD stream as that is obviously the way forward for a long term solution.

Regards,
	Steven

________________________________________
From: wtp-jsf-dev-bounces@xxxxxxxxxxx [mailto:wtp-jsf-dev-bounces@xxxxxxxxxxx] On Behalf Of raghunathan srinivasan
Sent: 20 November 2006 20:50
To: Java Server Faces Tools developer discussion
Subject: RE: [wtp-jsf-dev] Visual Page Designer support for Facelets

Hi Steven,

Thanks for you work on support for Facelets.  

We are currently reviewing the design of the Visual Page Designer. We would like to architect it to satisfy the requirements listed at http://wiki.eclipse.org/index.php/Visual_JSF_Page_Designer. Specifically we are evaluating the need for a 'tag execution environment' to support the following requirement: 
Visual components are rendered as faithfully as possible to the way they would be rendered in a browser. The editor, by default, will not require design-time rendering support from the component. The default rendering by the editor for a component can be enhanced by providing design-time rendering information.

This might result in changes to the current contribution. We welcome your input on this and also your active contribution/participation in the development of the Visual Page Designer, including the support for Facelets.

Please note that we will be doing all development on the Visual Page Deisgner in the  HEAD version ( and not on 1.5.2). We are in the process of refactoring the plugins. See note, http://dev.eclipse.org/mhonarc/lists/wtp-jsf-dev/msg00205.html. We will post to this list once we have completed the refactoring task


Thanks
Raghu

________________________________________
From: wtp-jsf-dev-bounces@xxxxxxxxxxx [mailto:wtp-jsf-dev-bounces@xxxxxxxxxxx] On Behalf Of Steven Oglesby
Sent: Monday, November 20, 2006 4:37 AM
To: wtp-jsf-dev@xxxxxxxxxxx
Subject: [wtp-jsf-dev] Visual Page Designer support for Facelets

Hello,
I am looking at adding support for Facelets to the Visual Page Designer contribution from Sybase. Currently, I have been working on getting the TagConverters to work when using XHTML files rather than JSP files. I have found that this is possible if a 'fix' is applied to how XHTML files are handled by the structured source editor (see enhancement bug# 164957). This allows a ContentModel to be supplied and picked up for Facelets *.taglib.xml files via the extension point 'org.eclipse.wst.xml.core.documentFactories'. At present my ContentModel just holds the name of the tags that are defined in the *.taglib.xml file and this is enough so that the correct TagConverterFactory can be found and therefore a TagConverter created.

I am now starting to look at how the contribution to the Palette works. At present the PaletteItemManager is tied into looking at *.tld files. However, the PaletteHelper then seems to subsequently work using CMDocuments. I would suggest that the PaletteItemManager should define an extension point that allows plugins to contribute how items for the palette are found. The lookup of *.tld files would then be contributed by the JSP supporting part of the page designer and a Facelets supporting part could contribute lookup of *.taglib.xml files.

I think this is slightly different to the existing 'org.eclipse.jst.pagedesigner.PaletteItemConfigContributions' extension point, which is used to provide additional information to the Palette about items.

Does anyone have any comments on this?

I am working on top of WTP 1.5.2 so I am not sure how this fits in with any restructuring / changes to the API that are happening to tidy up the Sybase contribution. Should I be worrying about this?

I am of course be planning to give anything I get working back to you.

Steven


Back to the top