JSP页面为什么找不到JavaBean?

我的JSP页面page_test.jsp代码如下:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>testbean</title>
</head>

<body>
<jsp:useBean id="person" scope="page" class="Test.Person"></jsp:useBean>
<%=person.getName()%>
<%person.setName("LL");%>
</body>
</html>


写的Java代码如下:

package Test;
public class Person{
    String name="dirk";
    public String getName(){
        return name;
        }
    public void setName(String name){
        this.name=name;
        }
    }

Test包以及连同里面的Person.class文件复制到JSP目录的WEB-INF\classes文件夹下,启动Tomcat服务器,输入http://localhost:8080/.../page_test.jsp。
回车,页面提示服务器内部错误,

img

什么原因?

sun.tools. javac.Main has been deprecated.
不是找不到,是被弃用了 很明显jdk版本太高
降低jdk版本
而且你这个是多久前的代码呀 新学也找个稍微新一点的教程

确认以下几点
1 是否把编译好的.class文件放在指定位置WEB-INF\classes,包含包名Test
2 是否添加web.xml文件放在指定位置WEB-INF
3 jsp文件放在WEB-INF目录上,也可以按模块放在WEB-INF上级的指定目录,比如person
4 把所有文件放在一个统一目录方便管理查阅,比如demo
5 启动后,访问地址要包含全的路径,比如http://localhost:8080/demo/page_test.jsp
6 tomcat版本与jdk版本要注意,jdk11开始j2ee部分支持包被移除了,但其实tomcat已经自带了相应的环境没有影响

是不是class文件放错地方了,要放在工程的WEB-INF目录的classes文件夹下哦,具体的目录是这样的../WEB-INF/classes/counter/counter.class

1.4的jdk现在有啥用啊,没哪个公司会用,
1.8都不知道还能挺多久

现在学,你最好完全放弃以前学的,把现在的自己变成一张白纸,学最新的吧,太陈旧的你学了会给你带来很多困扰

这学习资料有点老旧了,去b站找个新视频跟着学吧

我试了你的代码,确实没问题,应该就是版本问题,我用的就是jdk1.8和tomacat8
可以去b站看青空的霞光的视频,讲的很好,但是还没具体讲jsp的技术
个人感觉学主流版本就好,避免出这种错误。希望回答能给提问者帮助

b站看黑马程序员比较好,我复习就是看的这个从java基础、javaweb、maven、SSM、Boot.......,jdk和tomcat资料下面评论里面也都有下载

img


换新版本的jdk和tomcat,1.7+
旧版本的大多数功能在新版本上都是兼容可用的,不必纠结一定要用旧版本,在这个上面卡死