各位大虾,帮帮忙,有个JSP图片问题,在Windows下面正常显示,到了Linux下面不能正常显示(急,送100分)

snowfoxes 2004-10-08 10:52:49
错误:
//////////////////////////////////////////////////////////////////////////////////////
scription The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.VCode_jsp._jspService(VCode_jsp.java:121)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

java.lang.NoClassDefFoundError
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:140)
java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:62)
java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1041)
java.awt.image.BufferedImage.getGraphics(BufferedImage.java:1031)
org.apache.jsp.VCode_jsp._jspService(VCode_jsp.java:72)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


//////////////////////////////////////////////////////////////////////////////////////


JSP源代码
//////////////////////////////////////////////////////////////////////////////////////
<%@ page contentType="image/jpeg; charset=gb2312" language="java" errorPage="" %>
<%@ page import="java.util.*, java.awt.*, java.awt.geom.*, java.awt.image.*, com.sun.image.codec.jpeg.*" %>

<%
//创建一个120*22的图像
int width=120, height=22;
java.awt.image.BufferedImage image = new java.awt.image.BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

//得到图形环境对象g
java.awt.Graphics g = image.getGraphics();
java.awt.Graphics2D g2d = (java.awt.Graphics2D)g;

//填充背景
g.setColor(Color.white);
g.fillRect(0, 0, width, height);

//生成5位的随机数
char[] chCode = new char[]{'0','1','2','3','4','5','6','7','8','9'};
String strCode = null;
StringBuffer strbCode = new StringBuffer();

java.util.Random rCode = new java.util.Random();
for(int i=0; i<5; i++)
{
strbCode.append(chCode[rCode.nextInt(10)]);
}

strCode = strbCode.toString();

//画出随机数图形
g.setColor(Color.black);
g.drawString(strCode, 2, 17);

//部署图形环境
g.dispose();

//输出图像到Web页面
ServletOutputStream sos = response.getOutputStream();
com.sun.image.codec.jpeg.JPEGImageEncoder encoder = com.sun.image.codec.jpeg.JPEGCodec.createJPEGEncoder(sos);
encoder.encode(image);
}

%>
//////////////////////////////////////////////////////////////////////////////////////


如何解决
...全文
160 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
snowfoxes 2004-10-09
  • 打赏
  • 举报
回复
所以就不给分了
snowfoxes 2004-10-09
  • 打赏
  • 举报
回复
我自己解决,
在最前面加上
System.setProperty("java.awt.headless", "true");,
原因是什么我也不知道,不过谢谢楼上的各位了
dropship 2004-10-08
  • 打赏
  • 举报
回复
jsp调试秘诀:
将可能出现问题的java代码放到try catch中,然后迅速定位到出错行
AHUA1001 2004-10-08
  • 打赏
  • 举报
回复
你用什么控件了吗?有的控件只能在window下使用。
但是我觉得你的问题是路径不对。
snowfoxes 2004-10-08
  • 打赏
  • 举报
回复
PATH="/www/tomcat/bin:/usr/java/jdk/bin:/usr/java/jdk/jre/bin:/home/honghao/apache-ant-1.6.2/bin:$PATH"

export PATH

CLASSPATH=".:/usr/java/jdk/lib/tools.jar:/usr/java/jdk/jre/lib/rt.jar:/usr/java/jdk/lib/jcommon-0.9.5.jar:/usr/java/jdk/lib/jfreecha
rt-0.9.20.jar:$CLASSPATH"



应该全部都加载了吧
EdifierX 2004-10-08
  • 打赏
  • 举报
回复
java.lang.NoClassDefFoundError
没有找到类文件
snowfoxes 2004-10-08
  • 打赏
  • 举报
回复
每面那段代码根本就没有用到第3方的控件。
foolpcman 2004-10-08
  • 打赏
  • 举报
回复
一般WIN上开发的系统往LINUX上迁的时候出错原因有两种:1、大小写,LINUX下对大小写很敏感。2、路径中的斜杠,WIN中路径中的斜杠和LINUX中的是不一样的。

81,090

社区成员

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

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