今天遇到一个很棘手的问题,在jsp文件中使用useBean,网页返回码出现了500服务器内部错误,报错信息如下:

The value for the useBean class attribute wp.A is invalid.

之前项目放在tomcat的webapps文件夹下,运行是正常的,现在是配置了虚拟目录,所以与javabean无关,应该是和配置了虚拟目录有关

尝试了很多方法都没用,最后找到了正确的解决方案(解决方法在最下面,如果会使用javabean的可直接跳过中间部分)

在此之前,先介绍一下在tomcat的webapps文件夹下新建项目的jsp中如何使用javabean

1.新建一个java文件,例如:

package wp;
public class A {
private String FirstProperty = new String("");
public A(){} public void setFirstProperty(String value) {
FirstProperty = value;
} public String getFirstProperty() {
return FirstProperty;
}
}

注意:javabean中至少要包含一个无参的构造函数

2.在项目的根目录下创建WEB-INF文件夹(区分大小写,不要写错)

3.在WEB-INF文件夹下创建classes文件夹(名称是固定的)

4.在classes文件夹下创建与java文件中对应的package后跟名称的文件夹(示例中包名为wp)

5.编译写好的java文件,将生成的.class文件放到最终的包(wp)下

6.最后在jsp文件中通过如下代码使用javabean

<jsp:useBean id="a" class="wp.A" scope="page" />

参数解释:id是为要引用的javabean起的名字,class的值即为javabean的class文件所在的位置(后面不要跟.class),scope是设置bean的有效范围(生命周期),当前设置的是仅在本页面有效

javabean的调用

通过a.setXXX("")和a.getXXX()使用javabean中定义的方法

最后,就是本篇的重点所在,关于配置了虚拟目录(不会配置的自行搜索),使用javaBean报错

很简单,就是将WEB-INF文件夹建立在所配置虚拟目录的根目录

(如果虚拟目录为D:\workspace 在此文件下创建个人项目名为Demo,通常的做法是将WEB-INF文件夹直接建立在Demo下,这是错误的,而是需要建立在workspace的根目录下)

JSP配置了虚拟目录使用JavaBean报错的更多相关文章

  1. Ubuntu 配置Apache虚拟目录

    http://blog.csdn.net/spring21st/article/details/6589300 Ubuntu 配置Apache虚拟目录 http://blog.csdn.net/spr ...

  2. java -- SSM配置完成后,能访问jsp文件不能访问html文件,报错解析

    SSM配置完成后,能访问jsp文件不能访问html文件,报错解析 在确保路径没有任何问题的,情况下,相同的页面,jsp能够正常访问,html却不能正常访问(404). 解决方法: 在web.xml中添 ...

  3. 关于使用ssm与spring时,配置tomcat 虚拟目录( doBase )中的一些坑

    一.使用SSM需要 配置虚拟目录时 tomcat的配置 在tomcat server.xml的<HOST></HOST>中加入以下内容 在配置完成之后,当我们访问URL  为  ...

  4. php 配置主机虚拟目录(使用虚拟域名访问 127.0.0.1) 一点也不好使?????

    php 配置主机虚拟目录(使用虚拟域名访问 127.0.0.1)steps:1>打开目录  D:\xwamp\bin\apache\apache2.4.9\conf     修改文件 httpd ...

  5. Maven的安装、配置及使用入门+maven安装报错:JAVA_HOME【申明:来源于网络】

    Maven的安装.配置及使用入门+maven安装报错:JAVA_HOME[申明:来源于网络] Maven的安装.配置及使用入门:http://www.cnblogs.com/dcba1112/arch ...

  6. Eclipse 新建.jsp页面后,页面头部标签报错的解决方法

    Eclipse 新建.jsp页面后,页面头部标签报错的解决方法 1.报错地方: 2.解决方法: .jsp页面右键==>BUild Path ==>Configure Build Path. ...

  7. Intellij Idea 2016 配置Tomcat虚拟目录

    默认的idea是不需要配置虚拟目录了,它完全托管项目,但是有些时候,在开发过程中,是需要以虚拟目录的形式开发,即以:http://localhost:8080/虚拟目录名/index.html 这种形 ...

  8. ubuntu18.04LTS配置apache虚拟目录(基于端口)

    假设在用户目录下要新建两个虚拟目录web1,web2,分别对应端口8081,8082 $ cd ~ #切换到用户目录 $ mkdir www #新建www文件夹,以后新建的虚拟目录都放在该文件夹下 $ ...

  9. Apache 配置方法(虚拟目录、域名、虚拟主机等)

    基本配置 Define SRVROOT "C:/Apache24"     #宏定义一个主站点目录常量ServerRoot "${SRVROOT}"       ...

随机推荐

  1. oracle_角色

    一. 每个Oracle用户都有一个名字和口令,并拥有一些由其创建的表.视图和其他资源. Oracle角色(role)就是一组权限(privilege) (或者是每个用户根据其状态和条件所需的访问类型) ...

  2. C-Swipe Mobile 一个适用于Vue2.x的移动端轮播组件

    近期在做的一个Vue2项目里需要一个可以滑动的轮播组件,但是又因为现有的传统轮播库功能过于繁琐和笨重.因此自己写了一个针对于Vue2.x的轻型轮播组件. 项目GitHub链接:C-Swipe Mobi ...

  3. 修改WebView

    http://jwdev.cn/2015/09/28/use-javascript-to-delete-web-element/ 

  4. JDBC连接数据库(二)——连接池

    参考博客:http://www.cnblogs.com/xdp-gacl/p/4002804.html 一. 应用程序直接建立数据库连接模型 应用程序直接每次访问数据库时,都建立创建一个数据库的链接, ...

  5. 微信小程序开发之http到https的转化

    小程序从公布到现在已经过去好几个月了,本来从小程序发布出来就准备抱着微信的大腿进行一波小程序开发的,但是由于公司项目小程序暂时不支持,也就只能一直搁浅.过年过来偶然和朋友谈起小程序,觉的工作再忙也得找 ...

  6. [bzoj1070][SCOI2007]修车——费用流

    题目大意: 传送门 题解: 本题和(POJ3686)[http://poj.org/problem?id=3686]一题一模一样,而且还是数据缩小以后的弱化版QAQ,<挑战程序设计竞赛>一 ...

  7. [Netty] - Netty IN ACTION(导言)

    最近没什么事儿做,刚好看到有需要网络编程的知识,java中有NIO和IO两种不同的方式,但是NIO的编写比较麻烦,刚好找到一个成熟的网络框架Netty.接下来的一个月就准备将Netty IN ACTI ...

  8. BZOJ 3208: 花神的秒题计划Ⅰ

    这就是一道滑雪嘛= = 所有操作都爆力,求路径就dp,完了 CODE: #include<cstdio>#include<iostream>#include<algori ...

  9. windows 地址空间分配

    当系统创建一个进程同时为其创建它地址空间时,此地址空间中大部分都是闲置的.为了使用这部分地址空间,我们必须调用VirtualAlloc来分配其中的区域.分配区域的操作被称为预定. 当应用程序预定地址空 ...

  10. Linux:- comm命令的妙用

    参数://假设a集.b集.ab交集 # comm [options] textA textB options: 1.表示a集除去ab交集重叠那部分: 2.表示b集除去ab交集重叠那部分: 3.表示ab ...