On Wed, 24 Jul 2002 [EMAIL PROTECTED] wrote:
> Date: Wed, 24 Jul 2002 09:15:19 -0400
> From: [EMAIL PROTECTED]
> Reply-To: Struts Developers List <[EMAIL PROTECTED]>
> To: Struts Developers List <[EMAIL PROTECTED]>
> Subject: RE: cvs commit:
> jakarta-struts/src/share/org/apache/struts/action ActionServlet.java
>
>
> An alternative may be to define a "namespace" for the struts tags and
> provide others an opportunity to mix tags in the files.
>
> For example - it may be possible to have something like:
>
> -----------------------
> <struts:form-beans>
> <struts:form-bean name="testbean"
> type="org.apache.struts.webapp.exercise.TestBean"/>
> </struts:form-beans>
>
> <struts:AppTag>
> <myapp:myTag myAttrib="myValue" />
> </struts:AppTag>
>
> ------------------------------
>
> or something similar.
>
> The idea I'm attempting to demonstrate would be allowing the struts tags
> to still be validated as they are namespace qualified.
>
> The <struts:AppTag> idea is the creation of a special struts-config.xml
> tag that allows application specific tags (qualified by their own
> namespaces)
> to be embedded in a predictible place.
>
> In reality it may be possible to accomplish mixing tags and retaining
> validation even without the use of a special <struts:AppTag> tag.
>
> It should be a requirement, though, that struts-config.xml files not
> contain the namespace qualifiers to ensure backward compatibility.
>
Namespaces are a great way to introduce extensibility -- I used this
approach in the commons-workflow package (in jakarta-commons-sandbox) for
exactly that reason.
The problem is that, even with namespaces, you cannot extend the
one-and-only DTD used for validation. Schemas will fix that (in fact, the
deployment descriptors in J2EE 1.4, including Servlet 2.4's web.xml, will
support extensibility via namespaces -- and provide schemas for
validation).
In the mean time, I checked in some changes last night that let you turn
off validation safely again.
Craig
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>