struts2从log4j.properties文件中禁用日志

时间:2018-06-11 09:15:16

标签: struts2 struts

我正在从struts1迁移到struts2,我遇到了日志问题,这些日志不断用调试级别进行日志记录

以下是我从日志文件中获取的日志

DEBUG   15287   [freemark] (): Key "errorposition" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), java.lang.Object@3c9557f1=freemarker.ext.beans.OverloadedMethods@174dae2d, clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@293312fd={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@6ce6184e, public int java.util.HashMap.size()=[Ljava.lang.Class;@7645e0bc, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@65a5934d, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@5969d85d, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@33fbef87, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@612aa2ba, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@3621932c, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@56454977, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@5eda4fe0, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@4eb22bc6, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@1357fc87, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@75840cfc, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@3070b0aa, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@365e81be, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@7697fcd4, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@7457ff1f, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@3d2e87e5}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], toString=public java.lang.String java.util.AbstractMap.toString(), java.lang.Object@4d514eb3=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), putAll=public void java.util.HashMap.putAll(java.util.Map)}
DEBUG   15287   [freemark] (): "template/css_xhtml/form-close.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): "template/xhtml/form-close.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): "template/~~~css_xhtml/control-close.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): "template/simple/form-close.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): Key "customOnsubmitEnabled" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), java.lang.Object@3c9557f1=freemarker.ext.beans.OverloadedMethods@174dae2d, clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@293312fd={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@6ce6184e, public int java.util.HashMap.size()=[Ljava.lang.Class;@7645e0bc, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@65a5934d, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@5969d85d, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@33fbef87, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@612aa2ba, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@3621932c, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@56454977, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@5eda4fe0, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@4eb22bc6, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@1357fc87, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@75840cfc, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@3070b0aa, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@365e81be, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@7697fcd4, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@7457ff1f, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@3d2e87e5}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], toString=public java.lang.String java.util.AbstractMap.toString(), java.lang.Object@4d514eb3=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), putAll=public void java.util.HashMap.putAll(java.util.Map)}
DEBUG   15287   [freemark] (): "template/~~~css_xhtml/form-close-tooltips.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): Key "hasTooltip" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), java.lang.Object@3c9557f1=freemarker.ext.beans.OverloadedMethods@174dae2d, clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@293312fd={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@6ce6184e, public int java.util.HashMap.size()=[Ljava.lang.Class;@7645e0bc, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@65a5934d, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@5969d85d, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@33fbef87, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@612aa2ba, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@3621932c, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@56454977, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@5eda4fe0, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@4eb22bc6, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@1357fc87, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@75840cfc, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@3070b0aa, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@365e81be, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@7697fcd4, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@7457ff1f, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@3d2e87e5}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], toString=public java.lang.String java.util.AbstractMap.toString(), java.lang.Object@4d514eb3=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), putAll=public void java.util.HashMap.putAll(java.util.Map)}
DEBUG   15287   [freemark] (): "template/~~~css_xhtml/form-close-validate.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): Key "validate" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), java.lang.Object@3c9557f1=freemarker.ext.beans.OverloadedMethods@174dae2d, clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@293312fd={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@6ce6184e, public int java.util.HashMap.size()=[Ljava.lang.Class;@7645e0bc, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@65a5934d, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@5969d85d, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@33fbef87, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@612aa2ba, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@3621932c, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@56454977, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@5eda4fe0, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@4eb22bc6, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@1357fc87, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@75840cfc, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@3070b0aa, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@365e81be, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@7697fcd4, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@7457ff1f, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@3d2e87e5}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], toString=public java.lang.String java.util.AbstractMap.toString(), java.lang.Object@4d514eb3=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), putAll=public void java.util.HashMap.putAll(java.util.Map)}
DEBUG   15287   [freemark] (): Key "focusElement" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), java.lang.Object@3c9557f1=freemarker.ext.beans.OverloadedMethods@174dae2d, clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@293312fd={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@6ce6184e, public int java.util.HashMap.size()=[Ljava.lang.Class;@7645e0bc, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@65a5934d, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@5969d85d, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@33fbef87, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@612aa2ba, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@3621932c, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@56454977, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@5eda4fe0, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@4eb22bc6, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@1357fc87, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@75840cfc, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@3070b0aa, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@365e81be, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@7697fcd4, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@7457ff1f, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@3d2e87e5}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], toString=public java.lang.String java.util.AbstractMap.toString(), java.lang.Object@4d514eb3=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), putAll=public void java.util.HashMap.putAll(java.util.Map)}

以下是war文件中存在的jar

enter image description here

以下是我的log4j.properties

log4j.rootLogger=info, stdout, R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=../MyLogin.log

log4j.appender.R.MaxFileSize=1000KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1

log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %d{dd MMM yyyy HH:mm:ss,SSS} %c - %m%n

#log4j.category.com.opensymphony.xwork2=OFF
#log4j.category.org.apache.struts2=OFF
#log4j.category.freemarker.beans=OFF
#log4j.category.freemarker.cache=OFF

log4j.logger.com.opensymphony.xwork2=INFO
log4j.logger.org.apache.struts2=INFO
log4j.logger.freemarker.cache=INFO
log4j.logger.freemarker.beans=INFO

我尝试了以下组合,但即便如此,日志仍会被记录

#log4j.category.com.opensymphony.xwork2=OFF
#log4j.category.org.apache.struts2=OFF
#log4j.category.freemarker.beans=OFF
#log4j.category.freemarker.cache=OFF

log4j.logger.com.opensymphony.xwork2=INFO
log4j.logger.org.apache.struts2=INFO
log4j.logger.freemarker.cache=INFO
log4j.logger.freemarker.beans=INFO
来自struts.xml的

代码段

<!--
  <constant name="struts.devMode" value="true"/>
  -->

  <constant name="struts.action.extension" value="do"/>

  <constant name="struts.ui.theme" value="css_xhtml" />
  <constant name="struts.custom.i18n.resources" value="global"></constant>

下面是将log4j.logger.freemarker.ext=INFO添加到我的log4j文件后的日志

DEBUG   15287   [freemark] (): "template/~~~css_xhtml/form-close-tooltips.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): Key "hasTooltip" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@7a41f6ea={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@43a645b0, public int java.util.HashMap.size()=[Ljava.lang.Class;@59294882, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@25577c89, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@12b11986, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@2902b600, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@70facf08, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@622e502a, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@4e9127c1, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@1bc91833, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@2f53ca85, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@2614fa09, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@2b2b7867, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@32edc855, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@18fb5e92, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@1efdd00e, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@29665707, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@7ddba1cc}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), java.lang.Object@65fbf80e=freemarker.ext.beans.OverloadedMethods@5e5b98a1, values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], java.lang.Object@4d3fac52=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), toString=public java.lang.String java.util.AbstractMap.toString(), putAll=public void java.util.HashMap.putAll(java.util.Map)}
DEBUG   15287   [freemark] (): "template/~~~css_xhtml/form-close-validate.ftl"("en_US", UTF-8, parsed) cached copy not yet stale; using cached.
DEBUG   15287   [freemark] (): Key "validate" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@7a41f6ea={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@43a645b0, public int java.util.HashMap.size()=[Ljava.lang.Class;@59294882, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@25577c89, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@12b11986, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@2902b600, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@70facf08, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@622e502a, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@4e9127c1, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@1bc91833, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@2f53ca85, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@2614fa09, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@2b2b7867, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@32edc855, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@18fb5e92, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@1efdd00e, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@29665707, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@7ddba1cc}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), java.lang.Object@65fbf80e=freemarker.ext.beans.OverloadedMethods@5e5b98a1, values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], java.lang.Object@4d3fac52=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), toString=public java.lang.String java.util.AbstractMap.toString(), putAll=public void java.util.HashMap.putAll(java.util.Map)}
DEBUG   15287   [freemark] (): Key "focusElement" was not found on instance of java.util.LinkedHashMap. Introspection information for the class is: {getClass=public final native java.lang.Class java.lang.Object.getClass(), clone=public java.lang.Object java.util.HashMap.clone(), put=public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object), get=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), remove=public java.lang.Object java.util.HashMap.remove(java.lang.Object), equals=public boolean java.util.AbstractMap.equals(java.lang.Object), entrySet=public java.util.Set java.util.HashMap.entrySet(), hashCode=public int java.util.AbstractMap.hashCode(), class=java.beans.PropertyDescriptor[name=class; propertyType=class java.lang.Class; readMethod=public final native java.lang.Class java.lang.Object.getClass()], keySet=public java.util.Set java.util.HashMap.keySet(), java.lang.Object@7a41f6ea={public void java.util.LinkedHashMap.clear()=[Ljava.lang.Class;@43a645b0, public int java.util.HashMap.size()=[Ljava.lang.Class;@59294882, public int java.util.AbstractMap.hashCode()=[Ljava.lang.Class;@25577c89, public final native java.lang.Class java.lang.Object.getClass()=[Ljava.lang.Class;@12b11986, public java.util.Set java.util.HashMap.keySet()=[Ljava.lang.Class;@2902b600, public java.util.Set java.util.HashMap.entrySet()=[Ljava.lang.Class;@70facf08, public boolean java.util.LinkedHashMap.containsValue(java.lang.Object)=[Ljava.lang.Class;@622e502a, public java.lang.Object java.util.HashMap.remove(java.lang.Object)=[Ljava.lang.Class;@4e9127c1, public java.lang.Object java.util.HashMap.put(java.lang.Object,java.lang.Object)=[Ljava.lang.Class;@1bc91833, public java.lang.Object java.util.HashMap.clone()=[Ljava.lang.Class;@2f53ca85, public boolean java.util.AbstractMap.equals(java.lang.Object)=[Ljava.lang.Class;@2614fa09, public java.lang.String java.util.AbstractMap.toString()=[Ljava.lang.Class;@2b2b7867, public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object)=[Ljava.lang.Class;@32edc855, public void java.util.HashMap.putAll(java.util.Map)=[Ljava.lang.Class;@18fb5e92, public boolean java.util.HashMap.containsKey(java.lang.Object)=[Ljava.lang.Class;@1efdd00e, public java.util.Collection java.util.HashMap.values()=[Ljava.lang.Class;@29665707, public boolean java.util.HashMap.isEmpty()=[Ljava.lang.Class;@7ddba1cc}, size=public int java.util.HashMap.size(), clear=public void java.util.LinkedHashMap.clear(), isEmpty=public boolean java.util.HashMap.isEmpty(), containsKey=public boolean java.util.HashMap.containsKey(java.lang.Object), java.lang.Object@65fbf80e=freemarker.ext.beans.OverloadedMethods@5e5b98a1, values=public java.util.Collection java.util.HashMap.values(), containsValue=public boolean java.util.LinkedHashMap.containsValue(java.lang.Object), empty=java.beans.PropertyDescriptor[name=empty; propertyType=boolean; readMethod=public boolean java.util.HashMap.isEmpty()], java.lang.Object@4d3fac52=public java.lang.Object java.util.LinkedHashMap.get(java.lang.Object), toString=public java.lang.String java.util.AbstractMap.toString(), putAll=public void java.util.HashMap.putAll(java.util.Map)}

请帮我解决一下如何解决这个日志问题

1 个答案:

答案 0 :(得分:0)

对于Struts 2.5 log4j2,需要实现。

对于freemarker,我认为仍使用较旧的log4j版本,如果在此方面输入错误,请纠正我。

但是,仅添加了 log4j-1.2-api-2.10.0.jar 文件,freemarker日志在调试模式下就不再存在