DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=27818>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=27818 Cannot execute method named as "delete" from javascript in flow Summary: Cannot execute method named as "delete" from javascript in flow Product: Cocoon 2 Version: Current CVS 2.1 Platform: Other OS/Version: Other Status: NEW Severity: Blocker Priority: Other Component: Flowscript AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Error message is: org.apache.avalon.framework.CascadingRuntimeException: missing name after . operator problematic code: session.delete(bean); Cocoon tries to interprete delete as standard delete function from JavaScript instead of method of object session. Solution for this problem is to use java reflection and it's also not so simple because "class" is also reserved word and Packages.java.lang.Object.class returns the same exception. Correct invocation of above code is: var paramDefs = new Array(1); paramDefs[0] = new Packages.java.lang.Class.forName("java.lang.Object"); var method = session.getClass().getMethod("delete", paramDefs); var paramValues = new Array(1); paramValues[0] = bean; method.invoke(session, paramValues);
