[
https://issues.apache.org/struts/browse/WW-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=44000#action_44000
]
James Holmes commented on WW-2480:
----------------------------------
I'm confused as to why there is a need to explicitly get the "name" parameter
from the parameters map. How is that value going to be different than the value
that is set on the component via the setName() method.
Just trying to understand this more and the ramifications of the change before
I commit the code.
> 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
> Priority: Blocker
>
> 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.