You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by mr...@apache.org on 2007/01/20 09:44:14 UTC
svn commit: r498091 - in /struts/struts2/trunk/core/src:
main/java/org/apache/struts2/components/UIBean.java
test/java/org/apache/struts2/components/UIBeanTest.java
Author: mrdon
Date: Sat Jan 20 00:44:14 2007
New Revision: 498091
URL: http://svn.apache.org/viewvc?view=rev&rev=498091
Log:
Fixed parsing of name for ognl when no id is specified and using name value
WW-1617
Modified:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/UIBean.java
struts/struts2/trunk/core/src/test/java/org/apache/struts2/components/UIBeanTest.java
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/UIBean.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/UIBean.java?view=diff&rev=498091&r1=498090&r2=498091
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/UIBean.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/UIBean.java Sat Jan 20 00:44:14 2007
@@ -872,9 +872,10 @@
addParameter("id", id);
}
} else if (form != null) {
- addParameter("id", form.getParameters().get("id") + "_" + escape(name));
+ addParameter("id", form.getParameters().get("id") + "_"
+ + escape(name != null ? findString(name) : null));
} else {
- addParameter("id", escape(name));
+ addParameter("id", escape(name != null ? findString(name) : null));
}
}
Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/components/UIBeanTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/components/UIBeanTest.java?view=diff&rev=498091&r1=498090&r2=498091
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/components/UIBeanTest.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/components/UIBeanTest.java Sat Jan 20 00:44:14 2007
@@ -48,6 +48,22 @@
assertEquals("txtFldId", txtFld.getParameters().get("id"));
}
+
+ public void testPopulateComponentHtmlIdWithOgnl() throws Exception {
+ ValueStack stack = ValueStackFactory.getFactory().createValueStack();
+ MockHttpServletRequest req = new MockHttpServletRequest();
+ MockHttpServletResponse res = new MockHttpServletResponse();
+
+ Form form = new Form(stack, req, res);
+ form.getParameters().put("id", "formId");
+
+ TextField txtFld = new TextField(stack, req, res);
+ txtFld.setName("txtFldName%{'1'}");
+
+ txtFld.populateComponentHtmlId(form);
+
+ assertEquals("formId_txtFldName1", txtFld.getParameters().get("id"));
+ }
public void testPopulateComponentHtmlId2() throws Exception {
ValueStack stack = ValueStackFactory.getFactory().createValueStack();