Servlet giving error java.lang.NoClassDefFoundError

前端 未结 2 1146
滥情空心
滥情空心 2021-01-01 08:16

I am using the following code in a servlet of my app

java.awt.Image awtImg = java.awt.Toolkit.getDefaultToolkit().createImage(str1);

When I run

2条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-01-01 08:33

    That is almost certainly not the complete stack trace. Either that stack trace or an earlier one in the log file will tell you what caused the initialization of sun.awt.X11.XToolkit to fail.

    However, I'd hazard a guess that the root cause is that the JVM running the web countainer is "headless"; i.e. it doesn't have an accessible display.

    The Oracle Java Technical Article entitled "Using Headless Mode in the Java SE Platform" (by Artem Ananiev and Alla Redko, June 2006) describes the issue and what to do about it.

    The solution is probably as simple as adding -Djava.awt.headless=true to the JVM options in the web container startup script. For instance, if you are using Tomcat, add that to the $JAVA_OPTS environment variable before calling catalina.sh.

提交回复
热议问题