入门者提个问题!!!
tomcat下有个文件 t.jsp 内容如下:
<jsp:useBean id="d" class="java.util.Date"/>
<%=d%>
运行正常.
可是我自己的 bean 怎么就不行了呢,比如此类 WEB-INF/classes/test/Dt.class,代码如下
package test;
public class Dt{
public String getDate(){
return (new java.util.Date()).toString();
}
}
放在jsp里就不行
<jsp:useBean id="d" class="test.Dt"/>
<%=d.getDate()%>
运行错误提示说:
org.apache.jasper.JasperException: /t.jsp(1,1) The value for the useBean class attribute test.Dt is invalid.
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148)
..............
就是照抄网上的 “Hello World” 也不行,是不是tomcat没配置对哦?请指教,谢谢!!!!!
------解决方案--------------------用不了JAVABEAN,你的tomcat和你的jdk是不是一个版本呢?
程序没有错误。
将你jdk安装目录下\lib里面的tools.jar和dt.jar复制到tomcat目录\common\lib文件夹里面试试。
最好下载个.exe直接安装的文件,不要.zip的。
还不行的话把2个格式的文件都下载了。解压.zip的,将其中一个文件夹复制了移动到.exe格式tomcat文件夹中覆盖掉原来的,具体是哪个文件我给忘了。前提是你能打开基本的jsp页面。
还不行的话自己搜索下吧。
------解决方案--------------------<jsp:useBean id="d" class="test.Dt"/ >
<%=d.getDate()% >
改成
<jsp:useBean id="d" class="test.Dt">
<%=d.getDate() %>
</jsp:useBean>
------解决方案--------------------坐沙发的说得对,tomcat寻找资源的路径不是classpath,而是\common\lib文件夹
------解决方案--------------------是路径问题
------解决方案--------------------尽量不要给文件放到root下,自己建个目录,然后从server.xml中指过去!
------解决方案--------------------路径问题
------解决方案--------------------tomcat设置的问题
<Host name="127.0.0.1" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" reloadable="true" docBase="D:\Tomcat 5.5\webapps\WebRoot" workDir="D:\Tomcat 5.5\webapps\WebRootwork" />
</Host>
这是我的server.xml 里的 关于host的设置
可以参考一下
------解决方案--------------------package test;
public class Dt
{
public String getDate()
{
return (new java.util.Date()).toLocaleString();
}
}