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=36749>.
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=36749

           Summary: form binding  ambiguity creating new paths
           Product: Cocoon 2
           Version: Current SVN 2.2
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: normal
          Priority: P3
         Component: CocoonForms
        AssignedTo: [email protected]
        ReportedBy: [EMAIL PROTECTED]


The current way cform binding is handled is a bit confusing regarding the
creation of new (jx)path elements.

While fb:value works (to me) as expected, other bindings behave quite different.
E.g. the following binding would create the given path if non-existing. 
<fb:value id="form.test" path="/test/hello" />
Others, such as fb:set-attribute or fb:custom would not and throw an exception
given the path above. This must be due the fact that the doSave() method of each
binding class is implemented differently. The ValueJXPathBinding class calls
createPathAndSetValue() while others expect that the given path does already
exist calling getRelativeContext() directly. This behaviour is especially
annoying for fb:custom bindings in my case.

See also:
http://issues.apache.org/bugzilla/show_bug.cgi?id=30693
http://www.mail-archive.com/[email protected]/msg20645.html

fb:custom exception:
org.apache.commons.jxpath.JXPathException: Cannot create a relative context for
a non-existent node: /form/test
        at
org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.getRelativeContext(JXPathContextReferenceImpl.java:581)
        at
org.apache.cocoon.forms.binding.CustomJXPathBinding.doSave(CustomJXPathBinding.java:83)
        at
org.apache.cocoon.forms.binding.JXPathBindingBase.saveFormToModel(JXPathBindingBase.java:192)

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

Reply via email to