This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
|Summary:||Design-time only wrapper components|
|Product:||obsolete||Reporter:||Gregory Murphy <gjmurphy>|
|Component:||visualweb||Assignee:||Gregory Murphy <gjmurphy>|
|Issue Type:||ENHANCEMENT||Exception Reporter:|
Description Gregory Murphy 2007-03-03 14:53:20 UTC
There are many JSF component libraries in which more than one JSP tag and renderer combination is used with the same component, or in which the tags have attributes without corresponding component properties. Since Visual Web Pack models components only, there is currently no way to model these "orphaned" tags and attributes. This is a common design pattern in JSF, since components are often designed to be independent of rendering context. One solution is to use "wrapper components" at design-time, to model the "orphaned" tags and attributes. The design-time component class must extend the run-time component class, but would probably act as a delegate to an instance of the run-time class. There is one wrapper component per tag, and a property definition for all unmatched attributes in the tag. Insync models the design-time component, but persists all changes using references to the run-time component. Properties defined only by the design-time component can be manipulated at design-time as are all other properties: they appear in the properties sheet, and are available as customizers. But they will be persisted only as tag attributes. Design-time component wrapper classes could also help to solve another problem. Component tag classes sometimes have special configuration logic that is used to process attribute values before they are set as property values on the component. Setter methods in the wrapper class could be used to duplicate this logic.