tim 2004/01/26 20:20:51
Modified: src/blocks/woody/java/org/apache/cocoon/woody/binding
UnionJXPathBinding.java
Log:
Make UnionJXPathBinding respect path attribute.
Revision Changes Path
1.4 +5 -3
cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/binding/UnionJXPathBinding.java
Index: UnionJXPathBinding.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/binding/UnionJXPathBinding.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- UnionJXPathBinding.java 11 Jan 2004 20:51:16 -0000 1.3
+++ UnionJXPathBinding.java 27 Jan 2004 04:20:51 -0000 1.4
@@ -92,6 +92,7 @@
*/
public void doLoad(Widget frmModel, JXPathContext jxpc) {
Widget widget = frmModel.getWidget(this.widgetId);
+ JXPathContext subContext =
jxpc.getRelativeContext(jxpc.getPointer(this.xpath));
if (!(widget instanceof Union))
throw new RuntimeException("Binding: Expected Union widget, but
received class: \"" +
widget.getClass().getName() + "\".");
@@ -100,7 +101,7 @@
if (subBindings != null) {
int size = subBindings.length;
for (int i = 0; i < size; i++) {
- subBindings[i].loadFormFromModel(unionWidget, jxpc);
+ subBindings[i].loadFormFromModel(unionWidget, subContext);
}
}
if (getLogger().isDebugEnabled()) {
@@ -115,11 +116,12 @@
*/
public void doSave(Widget frmModel, JXPathContext jxpc) throws
BindingException {
Union unionWidget = (Union)frmModel.getWidget(this.widgetId);
+ JXPathContext subContext =
jxpc.getRelativeContext(jxpc.getPointer(this.xpath));
Binding[] subBindings = getChildBindings();
if (subBindings != null) {
int size = subBindings.length;
for (int i = 0; i < size; i++) {
- subBindings[i].saveFormToModel(unionWidget, jxpc);
+ subBindings[i].saveFormToModel(unionWidget, subContext);
}
}
if (getLogger().isDebugEnabled()) {