[
https://issues.apache.org/jira/browse/WW-3909?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lukasz Lenart updated WW-3909:
------------------------------
Description:
Sample code:
{code:java}
import com.opensymphony.xwork2.ActionSupport;
public class HelloAction extends ActionSupport {
private String pName;
public String execute() {
return SUCCESS;
}
public String getpName() {
return pName;
}
public void setpName(String pName) {
this.pName = pName;
}
}
{code}
I can't set param's value use url '{contextPath}/hello.action?pName=111'.
According to JavaBeans Spec sec 8.8 "Capitalization of inferred names":
Thus when we extract a property or event name from the middle of an existing
Java name, we normally convert the first character to lower case. However to
support the occasional use of all upper-case names, we check if the first two
characters of the name are both upper case and if so leave it alone. So for
example,
“FooBah” becomes “fooBah”
“Z” becomes “z”
“URL” becomes “URL”
We provide a method Introspector.decapitalize which implements this conversion
rule.
String java.beans.Introspector.decapitalize(String name)
Utility method to take a string and convert it to normal Java variable name
capitalization. This normally means converting the first character from upper
case to lower case, but in the (unusual) special case when there is more than
one character and both the first and second characters are upper case, we leave
it alone.
Thus "FooBah" becomes "fooBah" and "X" becomes "x", but "URL" stays as "URL".
was:
Sample code:
-------------------------------------------------
import com.opensymphony.xwork2.ActionSupport;
public class HelloAction extends ActionSupport {
private String pName;
public String execute() {
return SUCCESS;
}
public String getpName() {
return pName;
}
public void setpName(String pName) {
this.pName = pName;
}
}
-------------------------------------------------
I can't set param's value use url '{contextPath}/hello.action?pName=111'.
According to JavaBeans Spec sec 8.8 "Capitalization of inferred names":
Thus when we extract a property or event name from the middle of an existing
Java name, we normally convert the first character to lower case. However to
support the occasional use of all upper-case names, we check if the first two
characters of the name are both upper case and if so leave it alone. So for
example,
“FooBah” becomes “fooBah”
“Z” becomes “z”
“URL” becomes “URL”
We provide a method Introspector.decapitalize which implements this conversion
rule.
String java.beans.Introspector.decapitalize(String name)
Utility method to take a string and convert it to normal Java variable name
capitalization. This normally means converting the first character from upper
case to lower case, but in the (unusual) special case when there is more than
one character and both the first and second characters are upper case, we leave
it alone.
Thus "FooBah" becomes "fooBah" and "X" becomes "x", but "URL" stays as "URL".
> Not set parameter value to Action correctlly
> ---------------------------------------------
>
> Key: WW-3909
> URL: https://issues.apache.org/jira/browse/WW-3909
> Project: Struts 2
> Issue Type: Bug
> Components: Core Actions
> Affects Versions: 2.3.4.1, 2.3.6
> Environment: JDK: 1.6.0_37
> AS: Tomcat 7.0.22
> Reporter: lwen.ma
> Priority: Critical
> Fix For: 2.3.7
>
>
> Sample code:
> {code:java}
> import com.opensymphony.xwork2.ActionSupport;
> public class HelloAction extends ActionSupport {
> private String pName;
> public String execute() {
> return SUCCESS;
> }
> public String getpName() {
> return pName;
> }
> public void setpName(String pName) {
> this.pName = pName;
> }
> }
> {code}
> I can't set param's value use url '{contextPath}/hello.action?pName=111'.
> According to JavaBeans Spec sec 8.8 "Capitalization of inferred names":
> Thus when we extract a property or event name from the middle of an existing
> Java name, we normally convert the first character to lower case. However to
> support the occasional use of all upper-case names, we check if the first two
> characters of the name are both upper case and if so leave it alone. So for
> example,
> “FooBah” becomes “fooBah”
> “Z” becomes “z”
> “URL” becomes “URL”
> We provide a method Introspector.decapitalize which implements this
> conversion rule.
> String java.beans.Introspector.decapitalize(String name)
> Utility method to take a string and convert it to normal Java variable name
> capitalization. This normally means converting the first character from upper
> case to lower case, but in the (unusual) special case when there is more than
> one character and both the first and second characters are upper case, we
> leave it alone.
> Thus "FooBah" becomes "fooBah" and "X" becomes "x", but "URL" stays as "URL".
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira