[
http://issues.apache.org/jira/browse/COCOON-1825?page=comments#action_12442413
]
vincent Demay commented on COCOON-1825:
---
I think this simple patch could resolve the issue :
Index: C:/Program
Files/Eclipse3.01/workspace/forms/resources/org/apache/cocoon/forms/resources/forms-field-styling.xsl
===
--- C:/Program
Files/Eclipse3.01/workspace/forms/resources/org/apache/cocoon/forms/resources/forms-field-styling.xsl
(revision 464244)
+++ C:/Program
Files/Eclipse3.01/workspace/forms/resources/org/apache/cocoon/forms/resources/forms-field-styling.xsl
(working copy)
@@ -730,14 +730,18 @@
| fi:struct - has no visual representation by default
+-->
-
+
+
+
-
+
+
+
> [PATCH] Ajax error when an active state widget become invisible state widget
>
>
> Key: COCOON-1825
> URL: http://issues.apache.org/jira/browse/COCOON-1825
> Project: Cocoon
> Issue Type: Bug
> Components: Blocks: Forms
>Affects Versions: 2.1.9
>Reporter: vincent Demay
> Assigned To: Antonio Gallardo
>
> Some widget (field with selection-list and styling=radio, group, etc...) can
> not be hidden (state=invisible)in ajax mode.
> I declare some widgets without state attribute in the form definition, my
> form is in ajax mode, when I set the widget state to INVISIBLE, the ajax
> response can not be applied to the form because id="widget-name">... is not available in source code.
> I think about 2 patches :
> *putting a in forms-field-styling.xsl where is not set
> *or modifing abstractWidgetDefinition.java in ordre to generate a placeholder
> around each widget (but patch seems to need a lot of modification in
> forms-field-styling.xsl too)
> Here is the patch for first
> --- forms-field-styling.orig 2006-04-13 15:37:06.590221200 +0200
> +++ forms-field-styling.xsl 2006-04-13 15:38:22.525291200 +0200
> @@ -198,8 +198,9 @@
>
> select="string(fi:styling/@list-orientation) != 'horizontal'"/>
>
> -
> - title="{fi:hint}">
> +
> +
> + title="{fi:hint}">
>
>
>
> @@ -224,6 +225,7 @@
>
>
>
> +
>
>
>
> @@ -682,22 +684,24 @@
>| know where to insert the widget if it becomes visible
>+-->
>
> -
> +
>
>
>
>
> -
> +
>
>
>
>
> -
> +
>
> +
> +
>
>
>
> Here for the second
> --- AbstractWidget.orig 2006-04-13 15:31:07.851701200 +0200
> +++ AbstractWidget.java 2006-04-13 15:30:31.446616200 +0200
> @@ -483,6 +483,10 @@
> public void generateSaxFragment(ContentHandler contentHandler, Locale
> locale)
> throws SAXException {
>
> + AttributesImpl placeHolderAttrs = new AttributesImpl();
> + placeHolderAttrs.addCDATAAttribute("id", getRequestParameterName());
> +contentHandler.startElement(FormsConstants.INSTANCE_NS,
> "placeholder", FormsConstants.INSTANCE_PREFIX_COLON + "placeholder",
> placeHolderAttrs);
> +
> if (getCombinedState().isDisplayingValues()) {
> // FIXME: we may want to strip out completely widgets that
> aren't updated when in AJAX mode
> String element = this.getXMLElementName();
> @@ -497,15 +501,9 @@
>
> generateItemSaxFragment(contentHandler, locale);
>
> -contentHandler.endElement(FormsConstants.INSTANCE_NS, element,
> FormsConstants.INSTANCE_PREFIX_COLON + element);
> -
> -} else {
> -// Generate a placeholder that can be used later by AJAX updates
> -AttributesImpl attrs = new AttributesImpl();
> -attrs.addCDATAAttribute("id", getRequestParameterName());
> -contentHandler.startElement(FormsConstants.INSTANCE_NS,
> "placeholder", FormsConstants.INSTANCE_PREFIX_COLON + "placeholder", attrs);
> -contentHandler.endElement(FormsConstants.INSTANCE_NS,
> "placeholder", FormsConstants.INSTANCE_PREFIX_COLON + "placeholder");
> +contentHandler.endElement(FormsConstants.INSTANCE_NS, element,
> FormsConstants.INSTANCE_PREFIX_COLON + element);
> }
> +contentHandler.endElement(FormsConstants.INSTANCE_NS, "placeholder",
> FormsConstants.INSTANCE_PREFIX_COLON + "placeholder");
> }
>
> public Object getAttribute(String name) {
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/s