`
kimfly
  • 浏览: 47111 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

JFreeChart部署问题

    博客分类:
  • java
阅读更多

JFreechart部分在本地windows+tomcat下运行良好,但是放到服务器上linux+websphere后,图表图片不能正常显示,图片出显示红叉子,图片上的文字都不能显示。
这是因为所用到的图形部分的API基本上总是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。然而,运行一个不必要的X-server并不是一种好的网络管理方式。这个解决方案依赖于你的Java版本。如果你运行在JDK1.4上,那么你将有机会运行headless服务器。 -Djava.awt.headless=true
对于JDK1.3及更低的版本,有个来自eTeks的PJA工具包(Pure Java AWT Toolkit,纯Java AWT工具集)可以使用。它是一个在配置上与Sun的1.4版非常相似的headlessJava服务器,这种配置方式包含一组-D属性标志。你需要下载相关的jar(包括两个,pja.jar,pjatools.jar),将它们放到相应的路径下(如=/opt/WebSphere/AppServer/installedApps/tester/nzstat_war.ear/nzstat.war/dqchartdir,下面还包含了一个font文件夹,用来存放用到的字体,如simsun.ttc,可以从windows操作系统下获取)。在websphere5.0下进行下述操作:点击该应用程序服务器--点击"进程定义"--点击java虚拟机 在"类路径"框中,添加综合统计部署后 dqchartdir 文件夹在服务器上的全路径; 在"引导类路径"框中,添加综合统计部署后 dqchartdir 文件夹在服务器上的全路径下的pja.jar在服务器上的全路径; 在"一般JVM自变量"框中,添加如下内容 -Dawt.toolkit=com.eteks.awt.PJAToolkit -Djava.awt.graphicsenv=com.eteks.java2d.PJAGraphicsEnvironment -Djava2d.font.usePlatformFont=false -Djava.awt.fonts=/opt/WebSphere/AppServer/installedApps/tester/nzstat_war.ear/nzstat.war/dqchartdir/font
注意:
如果仍然有问题(如文字没有显示),那么通过locale命令查看当前操作系统的语言环境。对于 LANG 变量来说,有时候你即使在所有这些初始化脚本里面 export 过了,LANG 的值还是纹丝不动。实际上,你需要去修改 /etc/sysconfig/i18n 文件里面的内容。改为zh_CN.GB2312,重新启动计算机。
用cewolf开发的图表,在本地windows+tomcat下运行良好,但是放到服务器上linux+resin后,图表图片不能正常显示,图片出显示红叉子,有经验的来吧
是不是没有启用headless?
To run our environment with a headless implementation, the follow property may be specified at the java command line: -Djava.awt.headless=true Source code should check for headless, so that the exception may be caught gracefully.
对于一个Java服务器来说经常要处理一些图形元素,例如地图的创建或者图形和图表等。这些API基本上总是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。然而,运行一个不必要的X-server并不是一种好的网络管理方式。

这个解决方案依赖于你的Java版本。如果你运行在JDK1.4上,那么你将有机会运行headless服务器。

-Djava.awt.headless=true

对于JDK1.3及更低的版本,有个来自eTeks的PJA工具包(Pure Java AWT Toolkit,纯Java AWT工具集)可以使用。它是一个在配置上与Sun的1.4版非常相似的headlessJava服务器,这种配置方式包含一组-D属性标志。

你需要下载相关的jar,将它们放到你的CLASSPATH中,然后设置下面的标志:

Dawt.toolkit=com.eteks.awt.PJAToolkit
Djava.awt.graphicsenv=com.eteks.java2d.PJAGraphicsEnvironment

在IBM的JDK下,你能找到下列所需的属性,这里我们将PJA的jar要放到lib/pja下:

Djava.awt.fonts=$JAVA_HOME/jre/lib/fonts
Djava2d.font.usePlatformFont=false
Duser.home=lib/pja

你可以从eTeks网站上下载PJA工具包。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics