解决办法有三种:
1、安装虚拟的Xwindows
2、使用JDK 1.4的headless mode(-Djava.awt.headless=true)
3、使用PJA(Pure Java AWT)
第一种方法一年前就试过了,可是我下载的Xvfb在Solaris下安装时总是报错,始终没有成功。
第二种方法最简单,这次我们就采用它,将-Djava.awt.headless=true加入到weblogic的启动脚本中,类似于下面的语句:
java $JAVA_OPTIONS -classpath $CLASSPATH -Djava.awt.headless=true -Dweblogic.Domain=mydomain -Dweblogic.Name=myserver -Dbea.home=/wls/wlsHome -Dweblogic.management.password=$WLS_PW -Dweblogic.ProductionModeEnabled=$STARTMODE -Djava.security.policy==/wls/wlsHome/wlserver6.1/lib/weblogic.policy weblogic.Server
看来JDK1.4比起JDK1.3来又强大很多,可能不止我一个遇到类似的问题。第二种方法的缺点是需要JDK 1.4版本。
第三种方法中的PJA也是一年前就听说过的,没有仔细地研究,之所以叫做Pure Java AWT就是因为它重载了JDK AWT中依赖于操作系统的画图用的底层函数,使画图完全依赖于java程序本身,而与操作系统无关,自然也不再需要X-Windows的支持,缺点是配置起来比较麻烦,PJA因为跟操作系统无关所以性能比传统的AWT差一些。
我猜想第二种方法-Djava.awt.headless=true的原理应该和PJA相同,就是说JDK 1.4中包含了类似PJA的一些API,java.awt.headless参数就是开关,负责在这些API和操作系统的API之间选择,-Djava.awt.headless=true就选择JDK 1.4中的API,不再调用操作系统的API。
1、安装虚拟的Xwindows
2、使用JDK 1.4的headless mode(-Djava.awt.headless=true)
3、使用PJA(Pure Java AWT)
第一种方法一年前就试过了,可是我下载的Xvfb在Solaris下安装时总是报错,始终没有成功。
第二种方法最简单,这次我们就采用它,将-Djava.awt.headless=true加入到weblogic的启动脚本中,类似于下面的语句:
java $JAVA_OPTIONS -classpath $CLASSPATH -Djava.awt.headless=true -Dweblogic.Domain=mydomain -Dweblogic.Name=myserver -Dbea.home=/wls/wlsHome -Dweblogic.management.password=$WLS_PW -Dweblogic.ProductionModeEnabled=$STARTMODE -Djava.security.policy==/wls/wlsHome/wlserver6.1/lib/weblogic.policy weblogic.Server
看来JDK1.4比起JDK1.3来又强大很多,可能不止我一个遇到类似的问题。第二种方法的缺点是需要JDK 1.4版本。
第三种方法中的PJA也是一年前就听说过的,没有仔细地研究,之所以叫做Pure Java AWT就是因为它重载了JDK AWT中依赖于操作系统的画图用的底层函数,使画图完全依赖于java程序本身,而与操作系统无关,自然也不再需要X-Windows的支持,缺点是配置起来比较麻烦,PJA因为跟操作系统无关所以性能比传统的AWT差一些。
我猜想第二种方法-Djava.awt.headless=true的原理应该和PJA相同,就是说JDK 1.4中包含了类似PJA的一些API,java.awt.headless参数就是开关,负责在这些API和操作系统的API之间选择,-Djava.awt.headless=true就选择JDK 1.4中的API,不再调用操作系统的API。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/96639/viewspace-429865/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/96639/viewspace-429865/