excel导出在docker环境中总是失败的问题

 更新时间:2020年09月28日 15:24:04   作者:紫木冰焰  
这篇文章主要介绍了excel导出在docker环境中总是失败的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,

excel导出在docker环境中总是失败 ,最直接的原因还是因为没有安装中文字体,解决方法如下:

DOCKER环境中没有安装中文字体,需要安装

java.lang.NullPointerException: null
2020/5/29 上午8:40:11 at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
2020/5/29 上午8:40:11 at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
2020/5/29 上午8:40:11 at sun.awt.FontConfiguration.init(FontConfiguration.java:107)
2020/5/29 上午8:40:11 at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:776)
2020/5/29 上午8:40:11 at sun.font.SunFontManager$2.run(SunFontManager.java:431)
2020/5/29 上午8:40:11 at java.security.AccessController.doPrivileged(Native Method)
2020/5/29 上午8:40:11 at sun.font.SunFontManager.<init>(SunFontManager.java:376)
2020/5/29 上午8:40:11 at sun.awt.X11FontManager.<init>(X11FontManager.java:57)
2020/5/29 上午8:40:11 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
2020/5/29 上午8:40:11 at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
2020/5/29 上午8:40:11 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
2020/5/29 上午8:40:11 at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
2020/5/29 上午8:40:11 at java.lang.Class.newInstance(Class.java:442)
2020/5/29 上午8:40:11 at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
2020/5/29 上午8:40:11 at java.security.AccessController.doPrivileged(Native Method)
2020/5/29 上午8:40:11 at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
2020/5/29 上午8:40:11 at java.awt.Font.getFont2D(Font.java:491)
2020/5/29 上午8:40:11 at java.awt.Font.canDisplayUpTo(Font.java:2060)
2020/5/29 上午8:40:11 at java.awt.font.TextLayout.singleFont(TextLayout.java:470)
2020/5/29 上午8:40:11 at java.awt.font.TextLayout.<init>(TextLayout.java:531)
2020/5/29 上午8:40:11 at org.apache.poi.ss.util.SheetUtil.getDefaultCharWidth(SheetUtil.java:254)
2020/5/29 上午8:40:11 at org.apache.poi.xssf.streaming.AutoSizeColumnTracker.<init>(AutoSizeColumnTracker.java:117)
2020/5/29 上午8:40:11 at org.apache.poi.xssf.streaming.SXSSFSheet.<init>(SXSSFSheet.java:77)
2020/5/29 上午8:40:11 at org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:636)
2020/5/29 上午8:40:11 at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:657)
2020/5/29 上午8:40:11 at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:71)
2020/5/29 上午8:40:11 at com.chanjet.dsf.util.ExcelUtil.exportExcel(ExcelUtil.java:783)
2020/5/29 上午8:40:11 at com.chanjet.dsf.base.BaseService.uploadExcel(BaseService.java:89)
2020/5/29 上午8:40:11 at com.chanjet.dsf.goods.service.impl.GoodsServiceImpl.importExcel(GoodsServiceImpl.java:340)
2020/5/29 上午8:40:11 at com.chanjet.dsf.goods.service.impl.GoodsServiceImpl$$FastClassBySpringCGLIB$$d268cc51.invoke(<generated>)
2020/5/29 上午8:40:11 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
2020/5/29 上午8:40:11 at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:685)
2020/5/29 上午8:40:11 at com.chanjet.dsf.goods.service.impl.GoodsServiceImpl$$EnhancerBySpringCGLIB$$a0a512ec.importExcel(<generated>)
2020/5/29 上午8:40:11 at com.chanjet.dsf.goods.controller.GoodsController.importExcel(GoodsController.java:105)
2020/5/29 上午8:40:11 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2020/5/29 上午8:40:11 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
2020/5/29 上午8:40:11 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2020/5/29 上午8:40:11 at java.lang.reflect.Method.invoke(Method.java:497)
2020/5/29 上午8:40:11 at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
2020/5/29 上午8:40:11 at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:879)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
2020/5/29 上午8:40:11 at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
2020/5/29 上午8:40:11 at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
2020/5/29 上午8:40:11 at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2020/5/29 上午8:40:11 at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2020/5/29 上午8:40:11 at com.chanjet.dsf.filter.RefreshContextFilter.doFilter(RefreshContextFilter.java:29)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2020/5/29 上午8:40:11 at com.chanjet.dsf.filter.WebLogMDCFilter.doFilter(WebLogMDCFilter.java:27)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2020/5/29 上午8:40:11 at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
2020/5/29 上午8:40:11 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2020/5/29 上午8:40:11 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2020/5/29 上午8:40:11 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
2020/5/29 上午8:40:11 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
2020/5/29 上午8:40:11 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
2020/5/29 上午8:40:11 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
2020/5/29 上午8:40:11 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
2020/5/29 上午8:40:11 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
2020/5/29 上午8:40:11 at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:747)
2020/5/29 上午8:40:11 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
2020/5/29 上午8:40:11 at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367)
2020/5/29 上午8:40:11 at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
2020/5/29 上午8:40:11 at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
2020/5/29 上午8:40:11 at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1639)
2020/5/29 上午8:40:11 at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
2020/5/29 上午8:40:11 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
2020/5/29 上午8:40:11 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
2020/5/29 上午8:40:11 at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
2020/5/29 上午8:40:11 at java.lang.Thread.run(Thread.java:745)

到此这篇关于excel导出在docker环境中总是失败的问题的文章就介绍到这了,更多相关docker excel失败内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详细docker-maven-plugin使用方法

    详细docker-maven-plugin使用方法

    本文主要介绍了详细docker-maven-plugin使用方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 使用Docker部署Spring Boot的实现方法

    使用Docker部署Spring Boot的实现方法

    这篇文章主要介绍了使用Docker部署Spring Boot的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Docker attach 命令卡死的问题及解决方案

    Docker attach 命令卡死的问题及解决方案

    Docker 是一种轻量级的容器化平台,可以实现快速部署、运行和管理应用程序,这篇文章给大家介绍Docker attach 命令卡死的解决方案,感兴趣的朋友一起看看吧
    2023-12-12
  • docker可视化工具Portainer部署并汉化的操作

    docker可视化工具Portainer部署并汉化的操作

    这篇文章主要介绍了docker可视化工具Portainer部署并汉化的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Spring Boot 分层打包 Docker 镜像实践及分析(推荐)

    Spring Boot 分层打包 Docker 镜像实践及分析(推荐)

    这篇文章主要介绍了Spring Boot 分层打包 Docker 镜像实践及分析,本文通过图文并茂的形式实例代码相结合给大家介绍的非常详细,需要的朋友可以参考下
    2021-12-12
  • Docker内如何更新Jenkins

    Docker内如何更新Jenkins

    本文详细介绍了如何在Docker中使用Jenkins,包括Jenkins的基本概念、准备工作、下载和运行Jenkins、通过docker-compose部署Jenkins以及更新Jenkins的步骤
    2024-11-11
  • docker-compose部署MySQL8的实现

    docker-compose部署MySQL8的实现

    本文主要介绍了docker-compose部署MySQL8的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-11-11
  • Docker设置日志滚动的解决方案

    Docker设置日志滚动的解决方案

    Docker容器默认将日志写入同一文件,可能导致磁盘满,解决方案包括修改全局docker.service配置或针对特定容器修改hostconfig.json,下面给大家介绍Docker设置日志滚动的解决方案,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • docker-compose中的redis-stack详解

    docker-compose中的redis-stack详解

    Redis是一个开源的内存数据结构存储系统,主要用于数据库、缓存和消息代理,支持多种数据结构,RedisStack则基于Redis,提供栈的操作及扩展功能,适合复杂数据处理,本文给大家介绍docker-compose中的redis-stack,感兴趣的朋友跟随小编一起看看吧
    2024-09-09
  • docker system命令集合的使用

    docker system命令集合的使用

    本文主要介绍了docker system命令集合的使用,主要包括清理没有使用的数据,包括镜像数据,已经停止的容器等等,具有一定的参考价值,感兴趣的可以了解下
    2021-10-10

最新评论