jfreechart在Unix下无法显示

[复制链接]

826

主题

826

帖子

446

积分

中级会员

Rank: 3Rank: 3

积分
446
分享到:
发表于 2022-5-10 14:52:31 | 显示全部楼层 |阅读模式
JFreechart部分在本地windows+tomcat下运行良好,但是放到服务器上unix+tomcat后,图表图片不能正常显示,图片出显示红叉子,图片上的文字都不能显示。

在网上搜索了许多相关问题,终于找到问题根源:
java在*unix平台实现绘图功能时,依赖于操作系统XServer进行绘图。从终端界面启动时,无法调用。

详细解释以及解决方式如下:
系统使用jfreechart画图,在部分*unix系统中出现问题,解决方法如下,其他类似问题也可以参考解决

1.图形无法显示,异常为:Can't connect to X11 window server using ':0.0' as
the value of the DISPLAY variable.
原因:java在*unix平台实现绘图功能时,依赖于操作系统XServer进行绘图。从终端界面启动时,无法调用。
解决:使用java的headles模式,不调用操作系统本地资源。
配置:进入到was控制台 > 服务器 > 应用程序服务器 > servername > 进程定义 >
Java 虚拟机,设置“通用 JVM 实参” 为
“-Djava.awt.headless=true”,重启WAS。

2.可以绘图,但中文显示为方块
原因:jdk默认使用英文的font.properties描述文件
解决:将字体描述文件替换为中文版,进入WAS使用JRE的lib目录,如/opt/IBM/WebSphere/AppServer/java/jre
/lib,备份原font.properties,将font.properties.zh改名为font.properties,重启WAS。
云专线_海外IDC http://www.vecloud.com/

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表