jsf
the javaserver faces tools subproject
WTP LogoWTP Home
Design discussion meeting notes: 2006-03-03.
 

Attendees

 
  • From Oracle: Raghu Srinivasan, Gerry Kessler, Ian Trimble, Justin Chen, Cameron Bateman
  • From IBM: David Williams, Amy Wu, Phillip Avery, Nitin Dahyabhai
  • From Sybase: Jean Choi
Talking points for the discussion
 

Purpose: To allow JSF-specific content assist to be hosted in relevant attribute value within the JSP editor.
The bug 130041 logs the proposed change request to support content assist for JSF EL in the JSP editor including a patch for the existing configuration. Proposal:

 

Summary:
1) For expression language (EL) attribute values (those of the form "#{...}"), a patch would be applied to StructuredTextViewerConfigurationJSP.getContentAssistProcessors that handles the currently unhandled case for the partition IJSPPartitions.JSP_DEFAULT_EL2. This new logic would call into a new class called ContentAssistantProcessorLocator. This new class would use a new extension point (or alternatively a new provisional element of the editorConfiguration extension) to find all ContentAssistProcessors that wish to contribute to content-assist for late-bound (JSF) EL attribute values. JSF content assist would use this extension point to contribute it's logic. The impact to existing logic is almost nil. All new logic will be provided by JSF team as part of the patch.

 

NOTE: this scheme could extended in the future to support content assist contributors for other partition type as well. Most of the delta would be localized to the same configuration method.

 

2) For non-EL attributes the existing Model Query extension point would be used. While this is not a public interface, it was the only way found that content assist could provided unobtrusively for partitions not already handled by the JSP editor configuration.

 

An alternative would be to add similar extension point support as discussed in 1), but add it for partition types already handled. Again, JSF team would provide all new logic required in this area.