我正在尝试一个简单的事情:从部署在GlassFish上的默认域中的JSP实例化一个普通的Java Object。 GlassFish似乎永远不会找到这个类,所以我一直得到NoClassDefFoundErrors。找到了JSP,但没有找到类。我已经把包含该类的包目录的副本放在各处,几乎在domain1(我正在使用的默认域)下的每个目录中,但仍然没有。这是目录结构:
C:/glassfishv3/glassfish/domains/domain1
lib/
docroot/
testJsp.jsp
WEB-INF/
web.xml
classes
betterpack
TestJavaClass.class
int doStuff()
config/
在testJsp.jsp中它执行此操作:
<% betterpack.TestJavaCLass tj1 = new betterpack.TestJava(startClass) %>
then later:
<%=tj1.doStuff()%>
我在实例化的行上得到一个没有ClassDefFoundError。我还把betterpack目录的副本放在几乎所有其他目录中,比如docroot下的lib /目录,在docroot中......没有。哦,我认为contextpath实际上是在配置中,因为当你写入文件时,它最终会出现在config目录中,所以我也在那里放了一个betterpack文件夹的副本。可能是什么问题呢?
答案 0 :(得分:1)
你真的在WEB-INF / classes文件夹中有TestJava.class文件吗?根据你的目录结构,你没有这样的类文件。