[ http://issues.apache.org/jira/browse/COCOON-1804?page=comments#action_12371298 ]
Simone Gianni commented on COCOON-1804: --------------------------------------- Andrew, a validator is simply a java class, so you can create your own validators writing a java class implementing o.a.c.forms.validation.WidgetValidator . Once you have the class, you have to write also another class implementing WidgetValidatorBuilder which acts as a factory creating instances of your validator class, and register this builder in cocoon.xconf so that cocoon forms can load, configure and use it thru the avalon framework. But Reinhard, AFAIK this does not solve (at least not directly) the problem of accessing the session from inside this validator, if not with some context/objectmodel static classes. Could you tell us how to retrieve the current session (request, object model.. ) from inside a java widget validator (so, eventually, translating it to javascript it could be usable also inside the javascript validator)? > Javascript FOM_SCOPE issue when using Java as the flow engine - > ReferenceError: "cocoon" is not defined > ------------------------------------------------------------------------------------------------------- > > Key: COCOON-1804 > URL: http://issues.apache.org/jira/browse/COCOON-1804 > Project: Cocoon > Type: Bug > Components: Blocks: Java Flow > Versions: 2.1.8 > Reporter: Andrew Madu > Priority: Blocker > > I have created a java flow class which does the following: > //Load in validation file > FormInstance form = new FormInstance("forms/login.xml"); > My login map (snippet) is as follows: > Login.xml: > <fd:validation> > <fd:javascript> > var success = true; > var newUserReg = new Packages.test.User(); > var username = widget.lookupWidget("username"); > var password = widget.lookupWidget("password"); > > try { > > var checkUserTest = newUserReg.getUser(username.value, > password.value); > > if (checkUserTest != null) { > cocoon.session.setAttribute("user", checkUserTest); > success = true; > }else{ > username.setValidationError(new > Packages.org.apache.cocoon.forms.validation.ValidationError(e, false)); > password.setValidationError(new > Packages.org.apache.cocoon.forms.validation.ValidationError("The password, > username combination does not exist. Please enter another one.", false)); > success = false; > } > } catch (e) { > username.setValidationError(new > Packages.org.apache.cocoon.forms.validation.ValidationError(e, false)); > password.setValidationError(new > Packages.org.apache.cocoon.forms.validation.ValidationError("e.", false)); > success = false; > } > return success; > </fd:javascript> > </fd:validation> > I am getting an error message when the line > 'cocoon.session.setAttribute("user", checkUserTest)' is hit.: > ReferenceError: "cocoon" is not defined > What is the issue here, can I create a session object from within form > validation/javascript in another way? > Andrew -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
