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工具包。
分享到:
相关推荐
标题 "jfreechart部署在Linux服务器上生成图片乱码的解决方案" 涉及到的主要知识点是关于Java图形库JFreeChart在Linux环境中的使用,特别是解决中文字符乱码的问题。JFreeChart是一个广泛使用的开源Java库,它允许...
### JFreeChart与Eclipse集成应用详解 #### 引言 在数据分析与可视化领域,图表作为数据呈现的重要手段,能够直观地展现复杂数据关系,帮助用户快速理解数据背后的故事。JFreeChart,作为一款功能强大的Java图表...
在Linux环境下使用JFreeChart库绘制图表时,可能会遇到中文乱码的问题。JFreeChart是一个强大的Java库,它提供了一套完整的解决方案来创建各种图表,如饼图、柱状图、线图等。然而,由于编码问题,当图表中包含中文...
标题“JFreechart在Linux下不显示及中文乱码问题”指出的是在使用JFreechart库创建图表时,在Linux操作系统环境下遇到的两个主要问题:图表无法正常显示以及中文字符出现乱码。JFreechart是一个Java库,用于生成高...
2. **配置Cewolf**:在Web应用的部署描述符(如web.xml)中添加Cewolf Servlet的配置信息。 3. **发送请求**:当用户请求图表时,向Cewolf Servlet发送包含图表数据的HTTP请求。 4. **Servlet处理请求**:Cewolf接收...
在Linux环境下使用JFreeChart库绘制图形时,可能会遇到一个问题,即在图形上显示的文本出现方框框,而不是预期的汉字。这个问题通常涉及到字体渲染和Unicode字符支持。以下是对这个现象的详细分析和解决方法。 ...
5. **配置server.xml**:确保应用能够正确部署到服务器上。 6. **测试页面**:通过浏览器访问页面验证图表是否正常显示。 #### 八、JFreeChart使用的优缺点 ##### 优点 1. **开源免费**:无需支付任何费用即可...
#### 二、JFreeChart的下载与部署 ##### 下载 JFreeChart的下载地址为:[http://sourceforge.net/projects/jfreechart/files/sourceforge](http://sourceforge.net/projects/jfreechart/files/sourceforge)。在这个...
无论是在Windows、Linux还是Mac OS上,只要安装了JVM(Java虚拟机),jFreeChart就能运行无阻,这极大地提高了应用的部署灵活性。 #### 社区支持与资源丰富 jFreeChart拥有活跃的开发者社区,这意味着有大量的教程...
### Java报表JFreeChart开发知识点总结 #### 1. 简介 ##### 1.1 什么是JFreeChart JFreeChart是一款免费且开源的Java图表库,它提供了多种类型的图表绘制功能,如饼图、条形图、折线图等。JFreeChart适用于各种Java...
7.2 创建 web.xml:配置项目的部署描述符,定义Servlet等信息。 7.3 配置 web.xml:为JFreeChart生成图表的Servlet添加映射和初始化参数。 7.4 创建含有 JFreeChart 图片的页面:在JSP或HTML页面中,通过请求Servlet...
5. **整合与部署**:将Struts2和JFreeChart的代码整合到一个Web项目中,包括添加依赖库,配置Web.xml,以及打包和部署到服务器(如Tomcat)的过程。 6. **前端交互**:尽管示例可能不涉及复杂的前端交互,但理解...
6. **部署与显示** 在完成 JFreeChart 图表的创建后,可以通过将图表输出为图片文件(如 PNG 或 JPEG),然后在 HTML 页面中使用 `<img>` 标签显示。或者,如果使用了 jqPlot,可以直接在 JavaScript 中生成图表并...
- **JFreeChart帮助文档**:文档中提到,为了使图片能够在客户端浏览器中正确显示,需要在部署描述符(web.xml)中添加特定的servlet及其映射。 - **servlet示例**: ```xml <servlet-name>DisplayChart ...
在部署应用程序时,也需要确保这些依赖库一起打包,以防止运行时出现缺失类的错误。 总结一下,JFreeChart的这些依赖文件共同为Java开发者提供了创建专业、美观图表的能力,包括核心的图表生成库JFreeChart,辅助...
总结来说,JFreeChart是一个功能强大的Java图表库,通过提供的Eclipse项目实例,我们可以全面了解和掌握如何利用JFreeChart创建各种类型的图表,并将其部署到Web环境中。无论是在桌面应用还是Web应用中,JFreeChart...
通过SSH,开发者可以在本地机器上编写和运行代码,然后通过SSH发送到远程服务器执行,这在分布式系统或者需要在不同环境部署的应用中非常常见。 在"ssh-jfreechart"的场景下,开发者可能需要在远程服务器上生成图表...
- **部署方法**: - **Web 开发**:将 lib 目录下的 `jcommon-1.0.0-rc1.jar` 和 `jfreechart-1.0.0-rc1.jar` 放置于 web 应用程序的 `WEB-INF/lib` 目录。 - **Java 开发**:将这两个 jar 包添加到项目的 ...
#### 五、部署图表 为了使图表能够在Web环境中使用,还需要创建一个Servlet来处理图表的请求。 1. **创建Servlet**: - 创建一个继承自`HttpServlet`的类,并重写`doGet`方法。 ```java public class ...
在部署JFreeChart项目时,你需要确保Java环境已经配置好,并将JFreeChart的jar包加入到项目的类路径中。解压后的项目可能包含源代码、示例程序和所需的资源文件。通过运行这些示例,你可以快速了解如何使用...