cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Simone Gianni (JIRA)" <j...@apache.org>
Subject [jira] Commented: (COCOON-1804) Javascript FOM_SCOPE issue when using Java as the flow engine - ReferenceError: "cocoon" is not defined
Date Tue, 21 Mar 2006 21:09:02 GMT
    [ 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


Mime
View raw message