如易互联 发布于75月前 1答/1417阅
环境:ORACLE 12C
JDK: 1.8
版本号: EOVA-1.6 BATE6
问题现象:
WidgetManager 覆盖源码时,元数据管理功能不可用
Sql: select count(*) from eova_object where id > 999
Sql: select * from ( select row_.*, rownum rownum_ from ( select id,code,name,view_name,table_name,pk_name,data_source,is_single,is_celledit,is_show_num,is_first_load,default_order,filter,biz_intercept,diy_js,view_sql,config from eova_object where id > 999 order by id desc ) row_ where rownum <= 15) table_alias where table_alias.rownum_ > 0
08-29 09:52:51[ERROR]/grid/query/eova_object_code-eova_object
java.lang.ClassCastException: com.eova.model.User cannot be cast to [Ljava.lang.Object;
at com.eova.widget.WidgetManager.convertValueByExp(WidgetManager.java:443)
at com.eova.widget.grid.GridController.query(GridController.java:136)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.jfinal.aop.Invocation.invoke(Invocation.java:73)
at com.eova.interceptor.AuthInterceptor.intercept(AuthInterceptor.java:49)
at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
at com.eova.interceptor.LoginInterceptor.intercept(LoginInterceptor.java:69)
at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
at com.jfinal.core.ActionHandler.handle(ActionHandler.java:78)
at com.eova.handler.UrlBanHandler.handle(UrlBanHandler.java:38)
at com.jfinal.plugin.druid.DruidStatViewHandler.handle(DruidStatViewHandler.java:81)
at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:73)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:365)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:937)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:998)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:856)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Unknown Source)
重现步骤:
按照规范在override 下建立副本,原样拷贝,不做任何改动
重新运行程序,并登录点击 元数据管理,即报错如上问题现象.问题代码定位如下