I like this idea. I think David is right - a lot of people do extend
ActionServlet just to initialize resources. While this idea wouldn't remove
all of the reasons to build a custom servlet, it would provide a
systematic - and potentially simpler - way to solve a common problem.
--
Martin Cooper
----- Original Message -----
From: "David Winterfeldt" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, June 10, 2001 11:37 AM
Subject: Re: [PROPOSAL] Struts Extensions
> It might be nice if there was a way to register an
> interface with the ActionServlet in the config file
> for it to initialize a service. All the
> ValidatorServlet I made does is parse the xml file
> with the Digester and put an object into application
> scope. If a class could be registered, then a servlet
> wouldn't hang around for no reason and it wouldn't
> need to be defined in the web.xml. And it sounds like
> a lot of people extend the ActionServlet just to
> initialize resources on startup.
>
> David
>
> --- Ted Husted <[EMAIL PROTECTED]> wrote:
> > I agree that most extensions would be best written
> > as independant
> > servlets that plug into the application alongside
> > the Struts
> > ActionServlet. Though, I'm not sure they would need
> > to register with the
> > ActionServlet to access other parts of the
> > framework.
> >
> > I haven't worked with the Digester directly, but
> > most of the other
> > Struts services are already exposed through the
> > application context.
> > Custom tags, for example, already access the Action
> > Mappings this way.
> > So any other servlet in the application (since
> > that's all JSP's are)
> > should be able to do the same.
> >
> > Another example is the Generic Connection Pool. The
> > datasource is
> > exposed through the application context and other
> > services, like the
> > TagLibs JDBC tags, can use the pool without knowing
> > anything about
> > Struts (or Struts knowing anything about them).
> >
> > So I would suggest that if there are other services
> > that an extension
> > needs to share that we expose them through the
> > Application context.
> >
> > Oleg V Alexeev wrote:
> >
> > > To support flexible extensions mechanism for
> > struts there are can be
> > > made some additions to the core structure of the
> > framework -
> > >
> > > 1. Add ability to register components or external
> > servlets (at
> > > application level) via struts-config file.
> > > 2. Give such external components or servlets
> > ability to use action
> > > mappings database from ActionServlet.
> > > 3. Extend core API of struts to support pluggable
> > extensions - for
> > > example use event model or direct calls via
> > registrations in action
> > > mappiongs database.
> > >
> > > The best way for my mind is to write external
> > servlets, register it in
> > > struts ActionServlet and use it as external
> > services. This approach
> > > can be useful in case of mutliple ActionServlet
> > instances in one
> > > application - every ActionServlet subscribe to use
> > and uses some
> > > amount of external services.
>
>
> __________________________________________________
> Do You Yahoo!?
> Get personalized email addresses from Yahoo! Mail - only $35
> a year! http://personal.mail.yahoo.com/