LINUX+Apache+Tomcat服务器下怎样才能输出图片!

songqzs 2004-05-07 11:52:45
程序是参考下面的
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=168989
在windows下调试都正常,但是在LINUX+Apache+Tomcat服务器上就无法输出图片,应该怎么配置呢!欢迎参与讨论!
...全文
419 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
viano 2004-05-07
  • 打赏
  • 举报
回复


你把你的错误提示, 说出来

我整理一下 给你一个详细的解决办法!
songqzs 2004-05-07
  • 打赏
  • 举报
回复
能发给我一个说得比较清楚的论坛帖子地址吗?
songqzs 2004-05-07
  • 打赏
  • 举报
回复
这个我试过了,没什么反映,是不是还需要什么插件之类,另外“让图片 连接到 准确地址!”是什么意思,图片都是得到在服务器上的物理路径啊!
viano 2004-05-07
  • 打赏
  • 举报
回复
造成图片不能被服务器处理的主要原因:


jdk 图形处理需要 jvm, jvm 会去寻找图形环境,这里没有图形环境

通常,我们的 linux 服务器是不启动图形界面的,所以不能正常处理!

命令 java -Djava.awt.headless=true 就是启动 headless 服务器

不需要检测图形界面!

这个问题在一些 外国论坛里面说的很清楚!
viano 2004-05-07
  • 打赏
  • 举报
回复
在 服务器 启动教本里面加入参数:


-Djava.awt.headless=true


!我就是那样做的, 后来好了!

让图片 连接到 准确地址!
viano 2004-05-07
  • 打赏
  • 举报
回复


我就是学生呀!

不过马上就要工作了!
songqzs 2004-05-07
  • 打赏
  • 举报
回复
主要问题已经解决,多谢,多谢!!
在LINUX下没有X-server会很麻烦,我改了图片的读取方式和缓存方式,终于可以运行了!
给分拉!
songqzs 2004-05-07
  • 打赏
  • 举报
回复
呵呵~~
还是学生吗!
viano 2004-05-07
  • 打赏
  • 举报
回复
http://forum.java.sun.com/thread.jsp?forum=20&thread=132877
viano 2004-05-07
  • 打赏
  • 举报
回复


我们学校用的是 教育网 因为访问 外网要国际账号,我没有!

所以你在 vwww.google.com 里面 搜索一下 就有很多这样的信息


-Djava.awt.headless
viano 2004-05-07
  • 打赏
  • 举报
回复
对于一个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工具包。



我用的是 jboss 服务器:

我得 jdk 是 1。4。2 的!

那么我在 服务器的启动脚本run.sh 里面加入了语句:

$JAVA_OPTS="-Djava.awt.headless=true";

你可以参照你的 启动脚本 在适当的位置写入!


songqzs 2004-05-07
  • 打赏
  • 举报
回复
jdk1.4
viano 2004-05-07
  • 打赏
  • 举报
回复
java.awt.HeadlessException
at java.awt.GraphicsEnvironment.checkHeadless


? 你用的是 哪个 版本的 jdk ?
songqzs 2004-05-07
  • 打赏
  • 举报
回复
多谢多谢
songqzs 2004-05-07
  • 打赏
  • 举报
回复
java.awt.HeadlessException
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:121)
at java.awt.Window.<init>(Window.java:274)
at java.awt.Frame.<init>(Frame.java:401)
at java.awt.Frame.<init>(Frame.java:366)
at cn.com.s520.process.ValidateImageProcess.doStart(ValidateImageProcess.java:43)
at net.apache.jsp.framework.controller.impl.MainServletProcessImpl.processRequest(MainServletProcessImpl.java:170)
at net.apache.jsp.framework.controller.impl.MainServletProcessImpl.doRequest(MainServletProcessImpl.java:113)
at net.apache.jsp.framework.controller.MainServlet.doGet(MainServlet.java:62)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧