Don
Pilgrim, Peter wrote:
-----Original Message----- From: Don Brown [mailto:[EMAIL PROTECTED]
This reminds me of this improvement Struts was going to make a long time ago, pre 1.1 days for stxx. stxx wanted to extend the Struts config to add support for multiple xslt transformations. The problem was Struts config was stuck to a rigid DTD. A hack was introduced where you could add Digester rules to support your new config elements, but you had to either turn validation off or replace the DTD all together.
The solution, I believe, is to move to a XML schema-validated Struts config file. Give the usual Struts config a namespace to validate against. Then, allow any Struts extension the ability to define their own namespace and have their config intermingle with the normal Struts config. This allows an extension the ability to add elements and attributes wherever it wants without compromising validation. It has the added side benefit of making it possible to reduce the size of the element names, since we don't have to make them unique.
If we did this, and the code detected an old DTD-based config, we just apply an XSL transform and we have 100% backwards compatibility.
==////==
Namespace of the Struts configuration should be easy as added a one line to the Digester RuleSetBase class.
--
Peter Pilgrim
Operations/IT - Credit Suisse First Boston, 10 South Colonnade, London E14 4QJ, United Kingdom
Tel: +44-(0)207-883-4497
============================================================================== This message is for the sole use of the intended recipient. If you received this message in error please delete it and notify us. If this message was misdirected, CSFB does not waive any confidentiality or privilege. CSFB retains and monitors electronic communications sent through its network. Instructions transmitted over this system are not binding on CSFB until they are confirmed by us. Message transmission is not guaranteed to be secure. ==============================================================================
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]