You can inherit packages and their defined defaults. Therefore, in this
case, you could define the default interceptor stack and result type for
a root package then not have to specify it in any action configs of that
package or child packages.
Don
Frank W. Zammetti wrote:
A bit of a tangential question here... does Webwork support
inheritance of some sort with regard to Action mappings? Or perhaps
some sort of prototype? I think it's great that you can set things on
a per-mapping basis, that makes things very flexible and powerful...
but one can imagine where that leads to rather complex-looking config
files... and I'm not sold on annotations yet, I'm still in the config
file camp myself... still, configuring everything per mapping could
get messy. If there is a way to have basically a prototype mapping
that others can inherit from, that would eliminate that possibility,
more or less. Just curious, because I've only done one Webwork
project thus far, and it's relatively basic, so I didn't have a need
for this capability.
Frank
Don Brown wrote:
Frank W. Zammetti wrote:
I've been historically pretty anti-JSF, so I hope this means
something in light of that history: this is *very* interesting and I
congratulate you on making it happen! I've had the same "I think it
can be done" thoughts about mixing the two, just never actually did
anything with the idea, so I'm happy that someone has, if for no
other reason than to prove it can be done. Kudos!
The one concern I have initially is about performance... as you
describe, running through all the normal interceptors, and *then*
going through the JSF phases, sounds like an awful lot of code to
execute per request. I wonder about how well this will scale. Time
will tell of course, but that is my one concern.
This is why I left the JSF stack with just JSF phase interceptors and
not including the whole default stack. This lets you mix and match
at the action level, so if the action wanted the full action 2 stack
plus JSF, it can, or it can just use the JSF phase interceptors. The
full stack, or at least the params interceptor, is useful so that a
page can accept an "id" parameter, then look up the data to be
available in the JSF page later. In Action 2, nothing is forced an
you, making it very easy to override or set other defaults as needed.
Don
Good work in any case Don, I look forward to seeing this polished!
Frank
Don Brown wrote:
Jason Carreira wrote:
Great work Don! This is very cool. I've been saying we could do
this for a long time, but it's good to know I wasn't just making
that up :-)
Heh, I know. After bragging about it after many beers at JavaOne,
I figured it was time to put up or shut up :)
I think it's interesting to think of the JSF lifecycle as a
particular profile of our interceptor lifecycle. Similarly, the
Portlet support is a different profile. For simple pages, you can
choose a simple profile.
Exactly. SAF2 makes a great controller.
Don, does this make SAF a full JSF implementation (minus the
bundled components)?
No, this requires a JSF implementation. For the example in
showcase, I used MyFaces. The integration code, however, doesn't
require any particular JSF implementation. If we were a full
implementation, there would be a ton more code; not something I
think we'd be interested in maintaining :)
Don
---------------------------------------------------------------------
Posted via Jive Forums
http://forums.opensymphony.com/thread.jspa?threadID=31659&messageID=61356#61356
---------------------------------------------------------------------
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]