cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Suzan Foster (JIRA)" <>
Subject [jira] Commented: (COCOON-1686) [PATCH] COCOON-1671 Form not binding when prefix in binding definition is unequal to that in the instance data for the same namespace.
Date Mon, 21 Nov 2005 14:54:42 GMT
    [ ] 

Suzan Foster commented on COCOON-1686:

The JXPathContext's derived from the parent-path attribute on the multi-value and repeater
bindings are used without applying JXPathBindingBase's applyLeniency(JXPathContext) and applyNSDeclarations(JXPathContext)
members as they would if they were passed through the loadFormFromModel(Widget, Object) and
saveFormToModel(Widget, Object) members of a binding class. The error is fixed by making applyLeniency(JXPathContext)
and applyNSDeclarations(JXPathContext) public and passing the derived contexts to them before
further processing.

> [PATCH] COCOON-1671 Form not binding when prefix in binding definition is unequal to
that in the instance data for the same namespace.
> --------------------------------------------------------------------------------------------------------------------------------------
>          Key: COCOON-1686
>          URL:
>      Project: Cocoon
>         Type: Bug
>   Components: Blocks: Forms
>     Versions: 2.1.8
>     Reporter: Michael Schlotfeldt
>  Attachments: DomHelper.txt, JXPathBindingManager.txt
> This is a patch to solve bug entry COCOON-1671.
> The problem was the SAX parser used in createBinding(Source) of JXPathBindingManager
did not have the "" set to true. This ment the
namespaces could not be extracted from the DOM when calling getInheritedNSDeclarations(Element).
Therefore the JXPathContext was never having namespaces registered.
> Enabling the features solves these problems. The patch (which is against the SVN as of
today) that are being submit changes 2 files: (1) (2)JXPathBindingMangager
> In DomHelper I added an additional parse method that takes a SAXParser in place of the
servicemanager. This way you can set features on the SAXParser before the parsing to dom is
done. The parse method that existed before still does but i modified that as well so it uses
the new method so we do not duplicate code.
> Three more things:
> 1. My experinece with Excalibur is not complete. I am unsure if i can lookup the SAXParser
and then parametize it. Or if it should be done another way. The patch looks it up and then
parametizes this. I believe this is the correct way, but if it is not please let me know.
> 2. The SAXParser used by JXPathBindingMangager no turns on the feature we want. But the
JaxpParser class from Excalibur (which is what is returned) has a system print out in it if
you enable the feature we are now.  So everytime a binding occurs it says: "NAMESPACE PREFIX!!!!!!!!!!!!!!!!!!!!!!!!!!".
If anybody has acces to the repository for that class PLEASE remove that line. It shoudl not
be there.
> 3. There is another bug report for the form samples (#6) that uses namespace binding.
I need somebody to confirm this but it appears that this patch also fixes that bug report.
The number for that report is:   COCOON-1595

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message