The primary goal of this "plugin" design is to help us organize our framework code, and make it easier for folks to use optional features, "Just drop in the jar." However, since it is really just a set of conventions, it could be used for an application - "struts-default.xml,struts-plugin.xml,struts-app-plugin.xml, struts.xml". Where this idea breaks down is when you have a complex hierarchy of modules and dependencies that can't be broken down into a one or two level structure. In that case, I'd go back to the one struts.xml that includes others. The older style of configuration still works.

As for annotations, this is really orthogonal to them. Yes, we'd like to use them more heavily so that you may skip the XML altogether, but that's another subject. For those that use XML, and those that want to use plugins without having to define results, interceptors, stacks, and actions from scratch, this should help.

Don

Ian Roughley wrote:
Do you see plug-in's being used for enhancing the framework features, for adding "modules" to web apps or both? I ask this because the list of possible plug-ins so far see to be framework related. The ordering that Toby suggested seems to make more sense from a web-app perspective (as features of one web-app may depend on another module being loaded), or both?

We should also consider annotations. Using annotations would we need the xml file at all? Or should it be included so that we are declaratively specifying what we want to be running, rather than what's in the classpath.

/Ian



Don Brown wrote:
While I appreciate the idea, I don't particularly think that plugins should be deterministic. Perhaps plugin is the wrong word as it brings to mind descriptors, versioning, dependencies, etc. for some people. In this case, I see it as simply a way to organize code and provide default configuration for that code. Anything that is common to multiple plugins should be pushed into the core.

Now, since the names of what configuration files are configurable, you could change it to load "struts-default.xml, struts-plugin.xml, struts-plugin-ext.xml, struts.xml" or whatever other files you'd like. From a core framework POV, I think simply loading struts-plugin.xml in a non-deterministic order is fine for our needs.

Don

tm jee wrote:
Hi guys, Just some thoughts, maybe we could have an order parameter introduced eg struts-plugin.xml
 <struts>
     <param name="order">10</param>
     <package ....>
</package>
 </struts>
So we could have control of which plugin gets the priority when loading and we could defined order 1-100 is for struts, custom plugin starts from 101 etc. Ordering for plugins with same ordering would be undefined. The ordering could maybe applied only to plugin (struts-plugin.xml) as we have just one bootstrap configuration (struts.xml) Thoughts? rgds
----- Original Message ----
From: David H. DeWolf <[EMAIL PROTECTED]>
To: Struts Developers List <dev@struts.apache.org>
Sent: Thursday, 28 September, 2006 12:15:12 AM
Subject: Re: Struts plugins

Not sure if this is exactly what you're looking for, but the patch to upgrade from 0.2 to 2.0 exists:

https://issues.apache.org/struts/browse/WW-1418



Also, while you're looking at this, here's another patch related to tiles that I'd be interested in:

https://issues.apache.org/struts/browse/WW-1450


David


Don Brown wrote:
Is there any Tiles 2 migration code I can put into a block or does it need to be written yet? I do agree it would be a great candidate.

Don

Antonio Petrelli wrote:
Don Brown ha scritto:
The first batch of plugins:
1. Configuration Browser
2. Jasper Reports
3. JFreeChart
4. JSF
5. Pell Multipart handler
6. Sitemesh
7. Struts 1
You forgot Tiles 2 :-)

Ciao
Antonio


---------------------------------------------------------------------
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]



---------------------------------------------------------------------
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]


---------------------------------------------------------------------
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]

Reply via email to