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

Andreas Wolf commented on WW-4354:
----------------------------------

The isWithinLengthLimit method uses another notifyDeveloper Method:

{code}
protected void notifyDeveloper(Object action, String property, String message) {
        String developerNotification = 
LocalizedTextUtil.findText(ParametersInterceptor.class, "devmode.notification",
                ActionContext.getContext().getLocale(), "Developer 
Notification:\n{0}",
                new Object[]{
                        "Unexpected Exception caught setting '" + property + "' 
on '" + action.getClass() + ": " + message
                }
        );
        LOG.error(developerNotification);
        // see https://issues.apache.org/jira/browse/WW-4066
        if (action instanceof ValidationAware) {
            Collection<String> messages = ((ValidationAware) 
action).getActionMessages();
            messages.add(message);
            ((ValidationAware) action).setActionMessages(messages);
        }
    }
{code}

This method ignores devMode!

> ParametersInterceptor's isWithinLengthLimit() method ignores devMode
> --------------------------------------------------------------------
>
>                 Key: WW-4354
>                 URL: https://issues.apache.org/jira/browse/WW-4354
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Interceptors
>    Affects Versions: 2.3.16.3
>            Reporter: Andreas Wolf
>             Fix For: 2.3.18
>
>
> In the Class com.opensymphony.xwork2.interceptor.ParametersInterceptor
> the method isWithinLengthLimit( String name ) does not consider the *devMode* 
> flag.
> {code}
> protected boolean isWithinLengthLimit( String name ) {
>         boolean matchLength = name.length() <= paramNameMaxLength;
>         if (!matchLength) {
>             notifyDeveloper("Parameter [#0] is too long, allowed length is 
> [#1]", name, String.valueOf(paramNameMaxLength));
>         }
>         return matchLength;
> }
> {code}
> As a result, an ERROR is logged when a Paramter is too long.
> E.g.
> [com.opensymphony.xwork2.interceptor.ParametersInterceptor] [Developer 
> Notification (set struts.devMode to false to disable this message):
> Unexpected Exception caught setting '****' on 'class java.lang.String: 100]



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to