Oleg:
I just wanted to let you know that it looks like our integration between
Expresso and Struts is nearly complete - and that we did not have to extend
ActionServlet at all in any case!
The models are sufficiently compatible between the two frameworks that it
was mostly a matter of minor refactoring on the Expresso side, and no code
changes at all on the Struts side - we're using an "out of the box" Struts
1.0 release.
We've been able to make Expresso's Controller objects (basically a "group"
of Action objects organized as a finite-state machine) inherit directly from
Action. There are a few additional capabilities now - such as the ability to
transition between different Controller objects programmatically - but the
highly flexible nature of Struts made it an easy integration!
We've been able to map the "multiple view" capabilities of Controller's
directly to the "forward" capability in Struts, allowing any controller to
be switched between JSP (with of course the tag library) views, generated
HTML views (great for prototyping), and XML views (with optional XSL
transformation). We're hoping soon to have examples of Velocity and WebMacro
views as well...
Thanks for the assist - when we release a full version I'll post a summary
in case anyone wants to check it out.
Regards,
Mike
Jcorporate Ltd.
http://www.jcorporate.com
> I want to suggest you another approach to integrate Struts and
> Expresso - use ServiceManager as connector with Struts.
>
> Contrib directory of Struts HEAD branch contains Service-Manager and
> ServicesServlet with support of ServiceManager. Main idea of it - to
> stop extending of ActionServlet and make pluggable mechanism for
> struts extensions. ServiceManager lets developer to write his own
> Service and use common struts-config.xml to store config about
> connected services. Each service can place its config to the
> struts-config too, to the special section.
>
> ServiceManager config contains description of core processing points
> of struts - preprocess, validateBefore, validateAfter, etc. All
> services can subscribe to the registered processes. At some processing
> point, preprocess, for example, ServiceManager pass throw
> subscriptions to this process and perform calls to the all subscribed
> services.
>
> P.S. Now I attempt to build samples of using for ServiceManager. But
> 24 hours is so short to perform all activity...
>
> Friday, July 20, 2001, 1:12:56 AM, you wrote:
>
> MN> Hello All:
>
> MN> I'd like to request any input and comments that you might
> have on our design
> MN> & efforts to integrate Struts with Expresso (an open-source
> app framework,
> MN> but with a different "tilt" than Struts). Expresso is
> designed to allow this
> MN> kind of integration, and we think it looks like a pretty good
> fit from our
> MN> perspective, but would appreciate any and all comments on
> what we're doing &
> MN> how we're going about it.
>
> MN> Feel free to email me off-list if you prefer, or post to the Forums or
> MN> mailing list on our site at http://www.jcorporate.com
>
> MN> We've got an initial plan on how we're going about the
> integration that was
> MN> submitted by one of our contributors on the site at
> MN>
http://www.jcorporate.com/html/products/expresso/struts_integration.html,
MN> and most of what's discussed in that is either done or well underway.
There
MN> are no mods required to Struts itself, and the changes for Expresso are
MN> pretty straightforward.
MN> Thanks!
MN> Regards,
MN> Mike
MN> Jcorporate Ltd.
MN> [EMAIL PROTECTED]
MN> http://www.jcorporate.com