当前位置:  技术问答>java相关

请问一个关于jsp+javabean的问题!!!!

    来源: 互联网  发布时间:2017-04-19

    本文导语:  我的服务器是Tomcat,我现在在的文件夹webapps下设置了MyJsp/jsp/part01/helloworld这样一个文件夹,我编写了一个HelloWorld3.jsp 文件,源文件如下:            Hello World !   Hello  !     我的操作系统是win2000Professional,我...

我的服务器是Tomcat,我现在在的文件夹webapps下设置了MyJsp/jsp/part01/helloworld这样一个文件夹,我编写了一个HelloWorld3.jsp
文件,源文件如下:
  
  
 
 
 Hello World !
 
Hello  !
 
 

我的操作系统是win2000Professional,我设置了ClassPath为d:myjava,在这个文件夹下设置了aboutjsphelloworld目录,我写了一个
简单的JavaBean的程序文件(BeanHelloWorld.java)就放在helloworld目录下,源文件如下:

package aboutjsp.helloworld;
public class BeanHelloWorld
{
  private String name;
  //Bean的生成代码
  public void BeanHelloWorld()
   {
     this.name = "world!";
   }
  //设置名称的方法
  public void setName(String name)
   {
      this.name = name;
   }
  //获得名称的方法
  public String getName()
   {
     return this.name;
   }  
}
该文件便已通过生成了BeanHelloWorld.class文件。
--------------------------------------------------------------------------
我将Tomcat服务器启动后,在浏览器输入http://localhost:8080/MyJsp/jsp/part01/helloworld/HelloWorld3.jsp
出现下面错误信息:
Apache Tomcat/4.0.4-b1 - HTTP Status 500 - Internal Server Error
type Exception report
message Internal Server Error
description The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request.

exception 
org.apache.jasper.JasperException: aboutjsp.helloworld.BeanHelloWorld
at org.apache.jasper.compiler.BeanRepository.getBeanType(BeanRepository.java:183)
at org.apache.jasper.compiler.GetPropertyGenerator.generate(GetPropertyGenerator.java:102)
at org.apache.jasper.compiler.JspParseEventListener$GeneratorWrapper.generate(JspParseEventListener.java:834)
at org.apache.jasper.compiler.JspParseEventListener.generateAll(JspParseEventListener.java:241)
at org.apache.jasper.compiler.JspParseEventListener.endPageProcessing(JspParseEventListener.java:197)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:215)
at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:552)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspServlet.java:177)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:189)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
。。。部分省去
root cause 
java.lang.ClassNotFoundException: aboutjsp.helloworld.BeanHelloWorld
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1406)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1254)
at org.apache.jasper.compiler.BeanRepository.getBeanType(BeanRepository.java:181)
at org.apache.jasper.compiler.GetPropertyGenerator.generate(GetPropertyGenerator.java:102)
at org.apache.jasper.compiler.JspParseEventListener$GeneratorWrapper.generate(JspParseEventListener.java:834)
at org.apache.jasper.compiler.JspParseEventListener.generateAll(JspParseEventListener.java:241)
。。。部分省去
--------------------------------------------------------------------------
  我又将这个BeanHelloWorld的class文件放在服务器的MyJsp/jsp/part01/helloworld文件夹下,将jsp源文件中的
  import去掉,同时又将标记中的class直接改成BeanHelloWorld后再重新运行这个jsp文件,还是报
  同样的错误。
--------------------------------------------------------------------------
  我想请教一下各位老师:
  1.到底是哪里的问题呢?
  2.对于Tomcat提示的这种错误信息我应该怎样分析才能排除错误,一般分析服务器提示的这些错误有什么方法没有?
  3.在JSP中设置的页面在文本框中输入中文,怎么经过JSP处理后就变成乱码?



|
Tomcat默认的类加载路径包括:
1.tomcat/webapp目录下(webapps/MyJsp)的web-inf目录下的lib(jar包存放的目录)和classes(class文件存放目录,有包名的要注意建立相应的文件夹);
2.tomcat/lib目录下jar文件和tomcat/classes目录下的所有class文件;
3.好像是tomcat4以后,多了一个tomcat/common目录,其下的lib目录和classes目录也可以存放相应的jar文件和类文件。
以上默认的加载目录在缺省安装后并不一定存在,特别是自己的webapp目录,可以自己建立。建议,一般属于单独一个web应用的jar文件或类文件最好就放在webapps/YourWebapp/WEB-INF/lib或classes目录下。

除以上不需要设置的类加载路径外,tomcat也有自己的Classpath,需要注意的是:Tomcat使用到的Classpath和系统属性中的Classpath并不一样。
一般情况,tomcat都把系统的Classpath屏蔽了,因此往往很多ClassNotFound的异常都是因为Tomcat并没有使用到系统的Classpath的缘故。所以,建议在安装完Tomcat后,手动修改其启动文件catalina.bat(如果有setClassPath.bat,Unix下为setClassPath.sh,也要修改),不同版本的tomcat可能有不同的批处理文件,建议都打开看看:查找"set CLASSPATH="字符串,修改为set CLASSPATH=%CLASSPATH%;......,Unix下为set CLASSPATH=$CLASSPATH:......,就把系统的Classpath也加入了。


|
1、错误是类BeanHelloWorld没找到,你再仔细检查一下你的classpath。
2、错误就是看那个root cause底下的东西,你这里是ClassNotFoundException(类未找到)
3、我建议你参考FAQ先(我先不说,自己试试)

|
如果你确实不太明白建议你安装jakarta-tomcat-4.0
安装后,比如我的安装目录是c:tomcat则有这样一个目录
C:Tomcatsharedclasses,你把你的所有 javaBean放在这个目录就行了,
什么也不用设置,能用jsp的页面都会自动找到这个目录的。
例如你用到
则BeanHelloWorld.class文件就放在
C:Tomcatsharedclassesaboutjsphelloworld下

|
你在设置自己文件夹的同时也要设置虚拟目录才行
设置方法参考FAQ
http://expert.csdn.net/Expert/FAQ/List_Room_FAQ_Index.asp?Roomid=5409

|

->

    
 
 

您可能感兴趣的文章:

  • 请问普通java类和javabean的本质区别是什么
  • 请问在applet中如何调用javabean?
  • 请问如何把application对象传到javabean中?
  • 请问Tomcat下使用javabean,类文件放在哪个目录下,急!!!
  • ********请问哪里有《Enterprise JAVABEANS》的电子版可以下载********
  • 请问javaBean能不能进行非本机的socket连接
  • 请问高手 javabean 与 weblogic 的问题!!!!!!
  • 请问jsp+javabeans的问题.
  • 请问?j2ee应用服务器支持Javabean吗,我下的jspsmartupload放在上面能用吗?
  • 请问如何在Tomcat中配置javabean?
  • 请问学习JAVABEANS是不是就是学习java.beans.*类库??
  • 请问在jsp中调用外部的类,与jsp调用javabean有何区别??
  • 请问如何在JavaBean中定义request对象
  • 请问:javabean里可不可以用JSP里的变量,可不可以用JSP里的组件。
  • 请问在resin下执行为什么javaBean出错?
  • 请问JavaBean用编辑器写好后扩展名是什么?是否必须编译成.class吗?
  • 请问使用javabean执行sql之后如何抓住catch ?
  • 请问怎么在JavaBean的函数中返回几个值,然后供JSP调用呢?
  • 各位请问, 为什么 我写好的JAVABEAN放到WEN-INF/CLASSES下,调用的时候总是提示找不到类???
  • 请问高手 javabean 与 weblogic 的问题!!!!
  • 请问javaBean能不能进行非本机的socket连接 iis7站长之家
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问linux下GUI开发的问题!
  • 请问一个奇怪的问题!
  • 非常急! 请问daemontools 在red hat 9下的安装问题? 在线等待
  • 请问安装zhcon,cxterm问题
  • 请问如何在一台单机上装VMware的网络访问问题?
  • 请问adduser的一个问题!
  • 请问在Jbuilder 7中, 做swing界面, 用JDK1.4,怎么解决中文显示问题?
  • 请问一个很菜的问题
  • 请问关于为redhat7.2设置多IP问题?急!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!
  • 主机是WIN2000,我用的是LUNIX,请问是否可以共享上网? 如果可以请问如何设置? 500分答谢,龟儿食言!
  • 请问出现fstab文件丢失该怎么修复呀?
  • 请问这个方法如何调用?
  • 请问在网页中打开的新窗口,如何让其居中。
  • 请问我该学什么了
  • (急)请问大侠,JDK怎么配置?
  • 请问机器升级后,编译为何出错?
  • 请问一下,汇编器as是否就是gas?
  • 我在linux中把 网卡删除了,请问如何将他安装?
  • 请问如何让DMA方式读取硬盘啊?
  • 请问vi文中的替换命令


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3