Ulrich Mayring wrote:
>
> It's not up to me what framework our business partners use. But I have
> to able to communicate with them - the Sitemap is an inappropriate
> format for this communication. It's too low-level, we need to think in
> concepts :-)
I agree. I don't think the Sitemap is the propper place for it.
> > I believe redirects as a result of business logic belong in Actions. That
> > logic can be a result of a parameter or whatever--but I don't think the sitemap
> > is the place for it. But given your previous arguments that you would argue
> > that Actions are also proprietary.
>
> Not if they provide a neutral interface like XSP taglibs do. Hey, Avalon
> is full of interfaces :)
The interface they provide is:
interface Action {
Map act(Redirector redirector, SourceResolver resolver, Map objectMap, String
source, Parameters parm);
}
So a Cocoon Redirector, SourceResolver, and objectMap are passed. The source is the
value passed in <act type="action" src="passed-in"/>, and the Parameters are the
Avalon Parameters object. You can see that an Action is somewhat Cocoon centric.
You can provide your own generic interface, and use those in a Controller Action.
> > Does the solution I provided above work for you? By tying your logic to session
> > beans, you have a portable infrastructure that minimizes dependance on some aspects
> > of Cocoon.
>
> I like XSP taglibs, because XML is more a standard than Beans. I can't
> give Beans to folks not using Java, but I can give them XML.
That is a problem inherent in JSP, ASP, and ColdFusion. Each has their own proprietary
way of handling logic. XSP is the first "scripting" language that allows you to
use logicsheets defined in other languages--but any time you use the <xsp:logic/> tag,
you lose portability accross languages.
Also, XSP is only used in AxKit and Cocoon at this time. You are still fairly limited
in your frameworks you can choose.
Lastly, you can set up Actions that respond to an XML document. Check out the action
with the longest name: AbstractComplimentaryConfigurableAction. It provides a
mechanism
for you to specify a run-time Configuration setup (i.e. an XML file you specify as a
parameter). It loads and caches the XML in the form of an Avalon Configuration object.
Your action can now do very dynamic things and the XML representation of the logic
is in a portable XML file.
S/MIME Cryptographic Signature