commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ram (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JXPATH-146) JavaBean XPath with uppercase initial characters
Date Fri, 26 Mar 2010 07:18:27 GMT

    [ https://issues.apache.org/jira/browse/JXPATH-146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12850025#action_12850025
] 

Ram commented on JXPATH-146:
----------------------------

The following change seems to work. The code tries to convert the first character to lowercase
(see last 4 lines of new code.).

{code:title=BeanPropertyPointer.java}
   private PropertyDescriptor getPropertyDescriptor() {
        if (propertyDescriptor == null) {
            int inx = getPropertyIndex();
            if (inx == UNSPECIFIED_PROPERTY) {
                propertyDescriptor =
                    beanInfo.getPropertyDescriptor(propertyName);
                char fc = propertyName.charAt(0);
                if (propertyDescriptor == null && fc <= 'Z') {
                	String newPropName = new String(fc+"").toLowerCase() + propertyName.substring(1);
                	propertyDescriptor = beanInfo.getPropertyDescriptor(newPropName);
                }
            }
....
{code}

I only did a quick test for "getValue". Not sure if this impacts anything else.



> JavaBean XPath with uppercase initial characters
> ------------------------------------------------
>
>                 Key: JXPATH-146
>                 URL: https://issues.apache.org/jira/browse/JXPATH-146
>             Project: Commons JXPath
>          Issue Type: Improvement
>    Affects Versions: 1.3
>            Reporter: Ram
>            Priority: Minor
>
> XPath expressions executed against a JavaBean only work when the initial character is
lower case.
>  context.getValue("firstName")   //works
>  context.getValue("FirstName")   //doesn't work
> The code internally is looking at PropertyDescriptors and these start with lower case
as per the JavaBean spec.
> I will be nice if both versions work ( just like 'firstName' and '@firstName' work even
though JavaBeans don't differentiate attributes vs elements).
> The fix may be simple as converting the initial character to lower case before the PropertyDescriptor
lookup. Haven't looked at the impacts in detail though.
> Thoughts ?

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


Mime
View raw message