javax.ws.rs.WebApplicationException: org.saiku.service.util.exception.SaikuServiceException: org.saiku.service.util.exception.SaikuServiceException: Cannot get native cube for cube ( [pda].[pdaTest].[pdaTest].[鑽簵鍒嗘瀽] )

at org.saiku.web.rest.resources.Query2Resource.createQuery(Query2Resource.java:167)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409)
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.saiku.web.rest.resources.CORSFilter.doFilter(CORSFilter.java:21)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:168)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:48)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:162)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:205)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:120)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:53)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.saiku.service.util.exception.SaikuServiceException: org.saiku.service.util.exception.SaikuServiceException: Cannot get native cube for cube ( [pda].[pdaTest].[pdaTest].[鑽簵鍒嗘瀽] )
at org.saiku.service.olap.OlapDiscoverService.getProperties(OlapDiscoverService.java:224)
at org.saiku.service.olap.ThinQueryService.createQuery(ThinQueryService.java:131)
at org.saiku.web.rest.resources.Query2Resource.createQuery(Query2Resource.java:164)
... 84 more
Caused by: org.saiku.service.util.exception.SaikuServiceException: Cannot get native cube for cube ( [pda].[pdaTest].[pdaTest].[鑽簵鍒嗘瀽] )
at org.saiku.service.olap.OlapDiscoverService.getNativeCube(OlapDiscoverService.java:97)
at org.saiku.service.olap.OlapDiscoverService.getProperties(OlapDiscoverService.java:212)
... 86 more
Caused by: org.saiku.olap.util.exception.SaikuOlapException: 无法获取本地多维数据集 ( [pda].[pdaTest].[pdaTest].[鑽簵鍒嗘瀽] )
at org.saiku.olap.discover.OlapMetaExplorer.getNativeCube(OlapMetaExplorer.java:193)
at org.saiku.service.olap.OlapDiscoverService.getNativeCube(OlapDiscoverService.java:95)

... 87 more

解决方法:首先给你的查看你的schema文件cube里面的name属性是否是中文,如果是修改成英文,如果想显示中文添加

<Cube name="xxx" caption="xxx">即可caption里面最好是把中文转成Unicode码!!

1、然后找到Query2Resource类,找到createQuery方法

修改filecontent = new String( (byte[]) f.getEntity());

成 filecontent = new String( (byte[]) f.getEntity(),"utf-8");

2、找到类QueryResource的createQuery方法

修改 xml = new String( (byte[]) f.getEntity());

成 xml = new String( (byte[]) f.getEntity(),"utf-8");

3、找到类QueryDeserializer的getFakeCube方法,

修改 InputSource source = new InputSource( ( new ByteArrayInputStream( xml.getBytes() ) ) );

成 InputSource source = new InputSource( ( new ByteArrayInputStream( xml.getBytes("UTF-8") ) ) );

4、找到类BasicRepositoryResource2的saveResource方法

修改

String resp = datasourceService.saveFile(content, file, username, roles);

成 byte[] resp = new byte[0];
try {
resp = datasourceService.saveFile(content, file, username, roles).getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}

5、找到类BasicRepositoryResource2的getResource方法

修改

String data = datasourceService.getFileData(file, username, roles);

成 byte[] data = new byte[0];
try {
  data = datasourceService.getFileData(file, username, roles).getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
  log.error("Error reading file encoding",e);
}

解决生成的saiku文件读取中文乱码的问题相关推荐

  1. freemarker html 乱码,Freemarker生成静态html文件及中文乱码的问题.pdf

    Freemarker生成静态html文件及中文乱码的问题,freemarker静态化页面,freemarker静态化,freemarker乱码,freemarker静态方法,freemarker中文乱 ...

  2. java 文件读取中文乱码_java文件读取时发生中文乱码怎么解决

    java文件读取时发生中文乱码怎么解决 发布时间:2020-06-23 09:33:47 来源:亿速云 阅读:59 作者:Leah java文件读取时发生中文乱码怎么解决?这篇文章运用了实例代码展示, ...

  3. Java文件读取 中文乱码

    1 字节流以及编码转换说明 String str = "中"; byte[] b_gbk =str.getBytes("GBK"); byte[] b_utf8 ...

  4. win10完美解决cmd运行java文件出现中文乱码问题

    在看反射课程研究编译静态加载类动态加载类的时候需要用命令行运行记事本写的java文件,出现中文乱码,如图 解决办法: 在命令行运行chcp 936

  5. 火爆全网MySQL路线笔记!java文件读取中文乱码

    正文 模块(Module).组件(Component).包(Package),这些概念对于我们技术同学并不陌生,但并不是所有人都能理解其要义. 深入理解之后,我才发现,其背后的深意是分类思维.而这种分 ...

  6. spring使用@Value标签读取*.properties文件的中文乱码问题的解决

    spring使用@Value标签读取*.properties文件的中文乱码问题的解决 参考文章: (1)spring使用@Value标签读取*.properties文件的中文乱码问题的解决 (2)ht ...

  7. ios html中文显示乱码,iOS读取txt文件出现中文乱码的解决方法

    一.情景描述: 后台给一个txt文件,编码是utf-8,在mac电脑xcode开发环境下读取txt文件内容,汉字会出现乱码,英文没有乱码这种情况. 二.尝试解决方法: 修改编码格式,尝试了nsutf1 ...

  8. Activiti保存.png 流程图片文件且解决idea中保存图片时显示中文乱码的解决方法

    Activiti保存.png 流程图片文件且解决idea中保存图片时显示中文乱码的解决方法 Eclipse 工具中的操作 流程图片生成的两种方式: 使用 activiti-designer 设计流程图 ...

  9. C++ ifstream open 读取txt/json文件出现中文乱码的解决问题

    C++ ifstream open 读取txt/json文件出现中文乱码的解决方法 作者:虚坏叔叔 博客:https://xuhss.com 早餐店不会开到晚上,想吃的人早就来了!

最新文章

  1. 一个前端在校生的2018年终总结
  2. Python生成(x,y,z)三维坐标序列
  3. java机考_【Java】(机考常用)类集
  4. 字符串:3.KMP算法(快速模式匹配算法)详解
  5. 虚拟机Linux----Ubuntu1204----root登录设置
  6. 钉钉web版防撤回、屏蔽已读
  7. linux下查看pck设备,Linux中查看硬件信息超强命令sar
  8. bat与jscript开发工具时遇到的一些问题
  9. Container With Most Water(C++)
  10. TakeColor取色器的使用
  11. html js 读取资源文件,javascript如何读取文件?
  12. 普林斯顿微积分读本篇二:三角学
  13. 蓝牙音箱CSR芯片系列解密
  14. Codeforces1336A Linova and Kingdom (思维)
  15. 男人必备!泡妞全攻略
  16. 《Accurate eye center localisation by means of gradients》论文阅读
  17. UE4 材质笔记之水洼(贴花)
  18. 【Word画线条5大技巧】
  19. Armadillo使用介绍(十二):fft / ifft
  20. t-检验(t-test)的应用举例及matlab代码

热门文章

  1. 数据大屏可视化2-超全的基础图形模板(基础模版)
  2. centos7安装thefuck命令
  3. JAVA-什么是 Java?
  4. Sklearn实现岭回归
  5. 详解html中 offsetTop、clientTop、scrollTop、offsetTop 的各属性
  6. 学习心得------Django通过配置使用mysql数据库
  7. windows解决0x80070035找不到网络路径--最牛的解决办法
  8. 在busybox中挂载nfs
  9. Android如何判断当前手机是否正在播放音乐,并获取到正在播放的音乐的信息
  10. QML入门教程(5):Label、TextField用法介绍