You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Mike Calmus (JIRA)" <ji...@apache.org> on 2008/04/03 17:56:58 UTC

[jira] Updated: (WW-2480) Some OGNL expressions do not work with DateTimePicker component

     [ https://issues.apache.org/struts/browse/WW-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mike Calmus updated WW-2480:
----------------------------

          Component/s:     (was: Plugin - Tags)
                       Plugin - Dojo Tags
    Affects Version/s: 2.1.1
                       2.0.12
                       2.0.11.1
                       2.1.0

This is also an issue in 2.1.x

> Some OGNL expressions do not work with DateTimePicker component
> ---------------------------------------------------------------
>
>                 Key: WW-2480
>                 URL: https://issues.apache.org/struts/browse/WW-2480
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Dojo Tags
>    Affects Versions: 2.0.11, 2.0.11.1, 2.0.12, 2.1.0, 2.1.1
>            Reporter: Mike Calmus
>
> Certain expressions do not parse when using the DateTimePicker tag. This same expression works fine with the textfield tag:
> The following line throws a parse exception.
>         <s:datetimepicker name="aList.get(%{#attr['item_rowNum'] - 1}).startDate" />
> whereas this works fine:
>         <s:textfield name="aList.get(%{#attr['item_rowNum'] - 1}).startDate" />
> The problem seems to be that the latter uses the standard UIBean evaluateParams()  implementation whereas the former overrides it. This caused a problem with a third-party component as well. Based upon code usage, I believe this may affect other components as well. The following patch should fix both built-in as well as third-party modules:
> Index: core/src/main/java/org/apache/struts2/components/UIBean.java
> ===================================================================
> --- core/src/main/java/org/apache/struts2/components/UIBean.java        (revision 620628)
> +++ core/src/main/java/org/apache/struts2/components/UIBean.java        (working copy)
> @@ -588,8 +588,6 @@
>          addParameter("templateDir", getTemplateDir());
>          addParameter("theme", getTheme());
> -        String name = null;
> -
>          if (this.key != null) {
>             if(this.name == null) {
> @@ -603,8 +601,8 @@
>          }
>          if (this.name != null) {
> -            name = findString(this.name);
> -            addParameter("name", name);
> +            this.name = findString(this.name);
> +            addParameter("name", this.name);
>          }
>          if (label != null) {

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.