本帖最后由 kaidishi 于 2014-03-28 11:34:45 编辑

解决方案 »

  1.   

    其他错误信息
    java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor1082.invoke(Unknown Source) at 
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at 
    java.lang.reflect.Method.invoke(Method.java:597) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:452) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:291) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:254) at 
    com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176) at 
    com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263) at 
    org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
     at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) at 
    com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) at 
    com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) at
     com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166) at 
    com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    com.gdcy.interceptor.LoginedCheckInterceptor.intercept(LoginedCheckInterceptor.java:48) at 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) at 
    org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52) at 
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485) at 
    org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77) at 
    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91) at 
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at 
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at 
    org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) at 
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at 
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at 
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at 
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at 
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at 
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at 
    org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) at 
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at 
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at 
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at 
    org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1813) at 
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at 
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at 
    java.lang.Thread.run(Thread.java:662) Caused by: java.lang.StackOverflowError at 
    java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:391) at 
      

  2.   

    我认为是Tomcat配置的问题导致的,但不清楚该怎么设置
    而跳转到该Action使用到了2个方法都有抛出错误(有特别对这2方法做了标记),查看服务器那边的日志却没有记录,也不见启动中的Tomcat出现错误信息
      

  3.   

    应该是tomcat的jvm参数问题,你可以尝试着加大tomcat里的参数设置,根据你的服务器配置来设置参数
    具体参数设置的地方catalina.sh
    tomcat 命令行运行是设置jvm运行时参数
    set JAVA_OPTS=set JAVA_OPTS=%JAVA_OPTS% -server -Xms4096m -Xmx4096m -XX:PermSize=128M  -XX:MaxPermSize=256m -XX:NewSize=256m -XX:MaxNewSize=512m 
    具体参数根据你实际情况来调整
      

  4.   

    谢谢你的回复,昨天,想起以前也遇到个类似的问题,终于找到一个解决的方案:
    需求:要对查询的某字段先order by再group by,然后再在另一个条件中进行order by
    当时的方法:由于hibernate不支持子查询,所以采用了先查询出依据order  by排序的数据,然后依据一定的逻辑找出第一条数据(添加数据后,再由相同就排开,达到先order by再group by的效果),再把这些id放进第二条查询语句中查询
    造成错误的原因:条件有一条是where  id  in(‘id1’,'id2','id3'...),而那用户的查询居然有6000条数据,导致出错
    暂时的解决方法:将id分组(1000条一组),使用  ( id  in  (......)  or  id  in(......)    or  id  in (......))的方式查询,这样就不会出错但是心里还是有很多疑问,为什么in查询会造成这样?是因为in条件有限制吗?而为什么我本机调试又没问题?除了直接使用SQL语句,hibernate有没的先order by 再group by的方式?我这样or 查询效率应该很低吧?- -!