You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2015/10/12 13:24:26 UTC

[jira] [Commented] (WW-4424) When a property doesn't exists, the log warn message always misses information

    [ https://issues.apache.org/jira/browse/WW-4424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14952998#comment-14952998 ] 

Hudson commented on WW-4424:
----------------------------

SUCCESS: Integrated in Struts-JDK7-master #371 (See [https://builds.apache.org/job/Struts-JDK7-master/371/])
WW-4424 Fixes log message to properly report missing property (lukaszlenart: rev f1c04d6f4d4f2af6244977a15714aca18fdc3224)
* xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStack.java


> When a property doesn't exists, the log warn message always misses information
> ------------------------------------------------------------------------------
>
>                 Key: WW-4424
>                 URL: https://issues.apache.org/jira/browse/WW-4424
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Value Stack
>    Affects Versions: 2.3.16.3
>            Reporter: Brendan Le Ny
>            Assignee: Lukasz Lenart
>            Priority: Trivial
>              Labels: easyfix, patch
>             Fix For: 2.3.24
>
>         Attachments: WW-4424.patch
>
>
> As a developer, I write long JSPs and sometimes I make mistakes. For example, i can write the line underneath:
> {code:xml}
> <s:if test="ghamRestitution.moraHalfFoodFree">blah</s:if>
> {code}
> if the the field "moraHalfFoodFree" doesn't exists on bean "ghamRestitution", XWork raise a warn such as:
> {quote}
> 2014/11/25 11:45:08  WARN (CommonsLogger.java:56) warn Could not find property [null]
> {quote}
> The problem is that the message always say "Count not find property [null]" and it's very hard for the developer to know where the bug is in a long JSP.
> {code:title=com.opensymphony.xwork2.ognl.OgnlValueStack}
>     private Object handleOgnlException(String expr, boolean throwExceptionOnFailure, OgnlException e) {
>         Object ret = findInContext(expr);
>         if (ret == null) {
>             if (shouldLogMissingPropertyWarning(e)) {
>                 LOG.warn("Could not find property [" + ((NoSuchPropertyException) e).getName() + "]");
>             }
>             if (throwExceptionOnFailure) {
>                 throw new XWorkException(e);
>             }
>         }
>         return ret;
>     }
> {code}
> {quote}
> ((NoSuchPropertyException) e).getName() 
> {quote}
> always returns null, instead we should use expr parameter which give the right information.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)