本机(windows2003)上试过非常正常,部署到小机上老是不能显示图片,提示NoClassDefFoundError,纳闷了很久,明明lib目录下有包在啊,为什么说找不到了?
于是一通google,百度,终于找到原因了,在startWeblogic.sh中启动服务器的参数中加上-Djava.awt.headless=true,重新启动weblogic服务器,问题解决.
java中的awt,需要获取本机上的显示、键盘、鼠标等相关的程序,如果服务器上没有启动这些服务和事件,那么传统的awt就无法正常使用。
所以,自java的1.4开始,sun增加了headless模式的支持,使java在服务器没有启动图形界面的时候也可以正常使用awt。
参见:http://java.sun.com/j2se/1.4.1/docs/guide/awt/AWTChanges.html#headless
欢迎发表评论