You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Lukasz Lenart (JIRA)" <ji...@apache.org> on 2014/02/07 15:07:19 UTC
[jira] [Comment Edited] (WW-4285) ParametersInterceptor's
isWithinLengthLimit method does not detect the devMode's value
[ https://issues.apache.org/jira/browse/WW-4285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13894548#comment-13894548 ]
Lukasz Lenart edited comment on WW-4285 at 2/7/14 2:07 PM:
-----------------------------------------------------------
It's not a debug message, it's a error message which logs by this 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}
There are tow notifyDeveloper methods in ParametersInterceptor, the notifyDeveloper call by isWithinLengthLimit is not your mentioned method. Perhaps this bug's caused by the two ambiguous defined notifyDeveloper methods.
was (Author: greatrobert):
It's not a debug message, it's a error message which logs by this method:
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);
}
}
There are tow notifyDeveloper methods in ParametersInterceptor, the notifyDeveloper call by isWithinLengthLimit is not your mentioned method. Perhaps this bug's caused by the two ambiguous defined notifyDeveloper methods.
> ParametersInterceptor's isWithinLengthLimit method does not detect the devMode's value
> --------------------------------------------------------------------------------------
>
> Key: WW-4285
> URL: https://issues.apache.org/jira/browse/WW-4285
> Project: Struts 2
> Issue Type: Bug
> Affects Versions: 2.3.16
> Reporter: wangzhenghang
> Assignee: Lukasz Lenart
> Fix For: 2.3.17
>
>
> When the length of parameter name exceeds the paramNameMaxLength, notifyDeveloper method is invoked directly and devMode's value is ignored.
> So, this error log is printed as follow:
> [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.1.5#6160)