Ivelin Ivanov wrote:
I'm currently recovering the previous threads from the archive and reading them.I hope you are the last hero trying to confront this monster.The discussion how to combine the two has been going on forever, but we have not come to an agreement.
I would gladly offer my tactical guidance for your effort.
Thank you.
But, as Ovidiu pointed out, you can!If I was to do this with Actions, I could use well known and standardized Java APIs - JWSP or JDBC.
var schemaFactory =
Packages.org.apache.cocoon.components.validation.SchemaFactory.lookup
("http://www.ascc.net/xml/schematron");
var is = new Packages.org.xml.sax.InputSource
("flows/newuser-schema.xml");
var schema = schemaFactory.compileSchema(is);
var validator = schema.newValidator();
validator.setProperty("http://xml.apache.org/cocoon/validator/phase",
"NewUser");
violations = validator.validate(userBean);
This is just a quick hack I put together looking at the code for the AbstractXMLFormAction and Form, but it works. I just need to define some symbolic constants for the namespaces and find a way to access a SourceResolver from JavaScript to make it pretty.
Anyway, if you prefer to write complex business logic in Java (and I'd agree wholeheartedly with that), you can encapsulate it in a Java method that returns a boolean or an index to drive the flow that will be implemented by an if/then/else or a switch in JavaScript.
What do we gain by this? We remove flow logic from the sitemap in the form of actions and put it in the flowscript, where it belongs (IMHO).
Ugo
--
Ugo Cei - http://www.beblogging.com/blog/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]