History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: WW-1303
Type: Bug Bug
Status: Closed Closed
Resolution: Cannot Reproduce
Priority: Major Major
Assignee: Rainer Hermanns
Reporter: Cris Daniluk
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
WebWork

notify appears to be freemarker reserved word

Created: 20/Jun/06 02:10 PM   Updated: 14/Aug/06 10:03 AM
Component/s: Views
Affects Version/s: 2.2.2
Fix Version/s: 2.2.3

Environment: WebWork 2.2.2, bundled Freemarker+XWork


 Description  « Hide
When using an action with boolean field name "notify" and corresponding getters/setters, this fails:

<@ww.checkbox name="notify" />

If the name refers to a non-existant field, no error is rendered. I've worked around by renaming the field. However, it is a bit annoying. It seems like something, either in Freemarker or WebWork, is treating notify as an undocumented reserved word. The exception is as follows:


?size is unsupported for: freemarker.ext.beans.SimpleMethodModel
The problematic instruction:
----------
==> list fieldErrors[parameters.name] as error [on line 3, column 1 in template/xhtml/checkbox.ftl]
----------

Java backtrace for programmers:
----------
freemarker.template.TemplateModelException: ?size is unsupported for: freemarker.ext.beans.SimpleMethodModel
at freemarker.ext.beans.SimpleMethodModel.size(SimpleMethodModel.java:151)
at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167)
at freemarker.core.Environment.visit(Environment.java:351)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
at freemarker.core.Environment.visit(Environment.java:196)
at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
at freemarker.core.Environment.visit(Environment.java:196)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:196)
at freemarker.core.Environment.process(Environment.java:176)
at freemarker.template.Template.process(Template.java:231)
at com.opensymphony.webwork.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:124)
at com.opensymphony.webwork.components.UIBean.mergeTemplate(UIBean.java:637)
at com.opensymphony.webwork.components.UIBean.end(UIBean.java:591)
at com.opensymphony.webwork.views.freemarker.tags.CallbackWriter.afterBody(CallbackWriter.java:65)
at freemarker.core.Environment.visit(Environment.java:235)

 All   Comments   Change History      Sort Order:
Rainer Hermanns - [17/Jul/06 03:22 PM ]
Hmmm.. notify is neither a keyword in freemarker nor in webwork...
Maybe java.lang.Object's notify() method is causing you problem here...

Rainer Hermanns - [14/Aug/06 10:03 AM ]
Cannot reproduce and closing now...
Feel free to reopen if you still think this is a bug