Unable to compile class for JSP(找了三天错误了都没找出来)

hlantian 2009-06-08 06:06:27
我 用的tomcat 5.0.28 jdk1.6
该程序主要作用 就是 仿 MVC+DAO的模式进行分页。
运行后一直出现如下错误:

-------------------------------------------------
type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to compile class for JSP

Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:123: "catch" 不带有 "try"
} catch (Throwable t) {
^


Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:123: 需要 ')'
} catch (Throwable t) {
^


Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:123: 不是语句
} catch (Throwable t) {
^


Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:123: 需要 ';'
} catch (Throwable t) {
^


Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:130: "finally" 不带有 "try"
} finally {
^


Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:31: "try" 不带有 "catch" 或 "finally"
try {
^


Generated servlet error:
F:\zxiaoyao\学习\工作目录\Tomcat 5.0\work\Catalina\localhost\test\org\apache\jsp\struts\mvcdao\list_005fperson_005fsp_jsp.java:134: 进行语法解析时已到达文件结尾
}
^
7 错误



org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
com.zxiaoyao.mvcdao.servlet.PersonServlet.doGet(PersonServlet.java:91)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
--------------------------------------------------------------------------------------------
代码如下:
-+------
jsp页面代码:
1: index.htm

<html>
<head>
<title>分页程序</title>
</head>
<body>
<center>
<h1>分页程序</h1>
<hr/>
<h2><a href="PersonServlet?queryWithKey=Y">进入MVC分页程序</a></h2>
</center>
</body>
</html>

2.list_person_sp.jsp

<%@ page contentType="text/html;charset=utf-8" %>
<%@ page import="java.util.*" %>

<html>
<head>
<title>分页显示</title>
</head>
<body>
<center>
<h1>人员列表</h1>
<hr/>
<br/>
<%
request.setCharacterEncoding("utf-8"); //处理字符乱码

%>
<%
final String jspUrl = "list_person_sp.jsp"; //jsp页面地址
%>
<%
List allInfoDataList = request.getAttribute("allInfoDataList");
%>
<jsp:include page="list_person_inner.jsp" >
<jsp:param name="jspUrls" value="<%=jspUrl %>"/>
<jsp:param name="keyWords" value="<%=request.getAttribute("keyWord") %>"/>
<jsp:param name="lineSizes" value="<%=request.getAttribute("lineSize") %>"/>
<jsp:param name="currentPages" value="<%=request.getAttribute("currentPage") %>"/>
<jsp:param name="pageSizes" value="<%=request.getAttribute("pageSize") %>"/>
<jsp:param name="infoSizes" value="<%=request.getAttribute("infoSize") %>"/>
<jsp:param name="queryWithKeys" value="<%=request.getAttribute("queryWithKey")%>"/>
</jsp:include>

<table border="1" width="80%">
<tr>
<td>编号</td>
<td>名称</td>
<td>姓名</td>
<td>密码</td>
<td colspan="2">操作</td>
</tr>

<%

Iterator iter = allInfoDataList.iterator();
while(iter.hasNext()) {
pageContext.setAttribute("person",iter.next());
%>
<tr>
<td>${person.id}%></td>
<td>${person.uid}</td>
<td>${person.name}</td>
<td>${person.password}</td>
<td>更新</td>
<td>删除</td>
</tr>
<%
if(allInfoDataList.size() == 0) {
%>
<tr>
<td colspan="6">没有任何数据!!!</td>
</tr>
<%
}
%>

</table>

</center>
</body>
</html>

3.list_person_inner.jsp

<%@ page contentType="text/html;charset=utf-8" %>
<script language="javaScript">
function openPage(curpage) {
document.spage.cp.value = curpage;
document.spage.submit();
}

function selToPage() {
document.spage.cp.value = document.spage.selpage.value;
document.spage.submit();
}
</script>

<%
request.setCharacterEncoding("utf-8"); //处理字符乱码
String keyWord = null; //接受关键字
%>
<%
String jspUrl = null; //jsp页面地址
//定义分页变量
int lineSize = 2; //每页要显示的记录数
int currentPage = 2; //当前第几页
int pageSize = 5; //总共多少页
int infoSize = 20; //总共的数据条数
String queryWithKey= "N";
%>
<%
try {
keyWord = request.getParameter("keyWords");
jspUrl = request.getParameter("jspUrls");

lineSize = Integer.parseInt(request.getParameter("lineSizes"));
currentPage = Integer.parseInt(request.getParameter("currentPages"));
pageSize = Integer.parseInt(request.getParameter("pageSizes"));
infoSize= Integer.parseInt(request.getParameter("infoSizes"));
} catch(Exception e) {
}

%>
<form name="spage" action="<%=jspUrl%>" method="post">
<%
if("Y".equals(request.getParameter("queryWithKey"))) {
%>
输入查询关键字:<input type="text" name="kw" value="<%=keyWord.equals("null")?"":keyWord%>" />
<input type="submit" value="查询" /><br/>
<%
}
%>
<%
if(infoSize != 0) {
%>
<input type="button" value="首页" onclick="openPage(1)" <%=currentPage == 1? "disabled" :"" %> />
<%-- ${pageList.first ? "disabled='disabled'" : "" --%>
<input type="button" value="上一页" onclick="openPage(<%=currentPage-1%>)" <%=currentPage == 1? "disabled" :"" %>/>
<input type="button" value="下一页" onclick="openPage(<%=currentPage+1%>)" <%=currentPage == pageSize? "disabled" :"" %>/>
<input type="button" value="尾页" onclick="openPage(<%=pageSize%>)" <%=currentPage == pageSize? "disabled" :"" %> />
<input type="hidden" name="cp" value="" />
<font color="red">共有<%=infoSize%>条数据   当前第<%=currentPage%></font>/<font color="red"><%=pageSize%>页</font>
去第
<select name="selpage" onChange="selToPage()">
<%
for(int i = 1; i <= pageSize; i++) {
%>
<option value="<%=i%>" <%=currentPage == i ? "selected" : ""%>><%=i%></option>
<%
}
%>


<%
}
%>
</form>



...全文
8304 48 打赏 收藏 转发到动态 举报
写回复
用AI写文章
48 条回复
切换为时间正序
请发表友善的回复…
发表回复
sky_fox 2010-09-25
  • 打赏
  • 举报
回复
很好的东西哦,但是最郁闷的是居然连不上网,只能在网吧看下了。
shmilycharlene 2009-06-09
  • 打赏
  • 举报
回复
<td>${person.id}%></td>
<td>${person.uid}</td>
<td>${person.name}</td>
<td>${person.password}</td>
<td>更新</td>
<td>删除</td>
你看第一行,这里是不是多了一个%>这样的一个东西,
hlantian 2009-06-09
  • 打赏
  • 举报
回复
多谢各位的热心帮忙。 我回头再看看。
liu_zhaoqf 2009-06-09
  • 打赏
  • 举报
回复
会不会是因为中文路径的问题阿?
ndcs_dhf2008 2009-06-09
  • 打赏
  • 举报
回复
估计 是页面错了
huangan0301 2009-06-09
  • 打赏
  • 举报
回复
16楼说的有道理~~你改过来试试
floger 2009-06-09
  • 打赏
  • 举报
回复

<%@ page contentType="text/html;charset=utf-8" %>
<%@ page import="java.util.*" %>

<html>
<head>
<title>分页显示</title>
</head>
<body>
<center>
<h1>人员列表</h1>
<hr/>
<br/>
<%
request.setCharacterEncoding("utf-8"); //处理字符乱码

%>
<%
final String jspUrl = "list_person_sp.jsp"; //jsp页面地址
%>
<%
List allInfoDataList = request.getAttribute("allInfoDataList");
%>
<jsp:include page="list_person_inner.jsp" >
<jsp:param name="jspUrls" value="<%=jspUrl %>"/>
<jsp:param name="keyWords" value="<%=request.getAttribute("keyWord") %>"/>
<jsp:param name="lineSizes" value="<%=request.getAttribute("lineSize") %>"/>
<jsp:param name="currentPages" value="<%=request.getAttribute("currentPage") %>"/>
<jsp:param name="pageSizes" value="<%=request.getAttribute("pageSize") %>"/>
<jsp:param name="infoSizes" value="<%=request.getAttribute("infoSize") %>"/>
<jsp:param name="queryWithKeys" value="<%=request.getAttribute("queryWithKey")%>"/>
</jsp:include>

<table border="1" width="80%">
<tr>
<td>编号</td>
<td>名称</td>
<td>姓名</td>
<td>密码</td>
<td colspan="2">操作</td>
</tr>

<%

Iterator iter = allInfoDataList.iterator();
while(iter.hasNext()) {
pageContext.setAttribute("person",iter.next());

%>
<tr>
<td>${person.id}%></td>
<td>${person.uid}</td>
<td>${person.name}</td>
<td>${person.password}</td>
<td>更新</td>
<td>删除</td>
</tr>
<%
if(allInfoDataList.size() == 0) {
%>
<tr>
<td colspan="6">没有任何数据!!!</td>
</tr>
<%
}
%>

</table>

</center>
</body>
</html>
hlantian 2009-06-09
  • 打赏
  • 举报
回复
我看看
floger 2009-06-09
  • 打赏
  • 举报
回复
 Iterator iter = allInfoDataList.iterator();
while(iter.hasNext()) {
pageContext.setAttribute("person",iter.next());
}

你的这段代码缺少半个}呀。你在仔细看看
hlantian 2009-06-09
  • 打赏
  • 举报
回复
发过去了。
bdceo 2009-06-09
  • 打赏
  • 举报
回复
你发的什么啊,我这儿还无法打开,用editplus打开后一大堆代码像个jsp
你把整个项目压缩发给我行吗?
hlantian 2009-06-09
  • 打赏
  • 举报
回复
tomcat的版本与jdk的版本不匹配,建议用tomcat6或tomcat5.5以上
---------------------------------------------------
有可能 但是 我 我换成6.0 了。出现情况又变成 16楼 和14楼的问题了 总之,它 就是不让我过去。 这东东 我才是初学。
hlantian 2009-06-09
  • 打赏
  • 举报
回复
已经发过去了 麻烦你了。
goldlive_8888 2009-06-09
  • 打赏
  • 举报
回复
我 用的tomcat 5.0.28 jdk1.6 该程序主要作用 就是 仿 MVC+DAO的模式进行分页。
tomcat的版本与jdk的版本不匹配,建议用tomcat6或tomcat5.5以上
bdceo 2009-06-09
  • 打赏
  • 举报
回复
别着急,项目压缩一下,发我邮箱里吧,我给你看看……
youknowceo@gmail.com
hlantian 2009-06-09
  • 打赏
  • 举报
回复
再帖个 数据库见表文件。

-- 删除表
drop table person;

-- 创建person表
create table person (

-- 生成一个流水号,观察显示的记录数
id int auto_increment not null primary key,
-- 用户登录id
uid varchar(32),
-- 用户真实姓名
name varchar(32),
-- 用户的登录密码
password varchar(20)
);

insert into person(uid,name,password) values('zxy01','任逍遥01','zxiaoyao01');
insert into person(uid,name,password) values('zxy02','任逍遥02','zxiaoyao02');
insert into person(uid,name,password) values('zxy03','任逍遥03','zxiaoyao03');
insert into person(uid,name,password) values('zxy04','任逍遥04','zxiaoyao04');
insert into person(uid,name,password) values('zxy05','任逍遥05','zxiaoyao05');
insert into person(uid,name,password) values('zxy06','任逍遥06','zxiaoyao06');
insert into person(uid,name,password) values('zxy07','任逍遥07','zxiaoyao07');
insert into person(uid,name,password) values('zxy08','任逍遥08','zxiaoyao08');
insert into person(uid,name,password) values('zxy09','任逍遥09','zxiaoyao09');
insert into person(uid,name,password) values('zxy10','任逍遥10','zxiaoyao10');
insert into person(uid,name,password) values('zxy11','任逍遥11','zxiaoyao11');
insert into person(uid,name,password) values('zxy12','任逍遥12','zxiaoyao12');
insert into person(uid,name,password) values('zxy13','任逍遥13','zxiaoyao13');
insert into person(uid,name,password) values('zxy14','任逍遥14','zxiaoyao14');
insert into person(uid,name,password) values('zxy15','任逍遥15','zxiaoyao15');
insert into person(uid,name,password) values('zxy16','任逍遥16','zxiaoyao16');
insert into person(uid,name,password) values('zxy17','任逍遥17','zxiaoyao17');
insert into person(uid,name,password) values('zxy18','任逍遥18','zxiaoyao18');
insert into person(uid,name,password) values('zxy19','任逍遥19','zxiaoyao19');
insert into person(uid,name,password) values('zxy20','任逍遥20','zxiaoyao20');
insert into person(uid,name,password) values('zxy21','任逍遥21','zxiaoyao21');
insert into person(uid,name,password) values('zxy22','任逍遥22','zxiaoyao22');

我实在是不懂为什么 这东东折磨了我 好几天。 老是跳不过这个坎。 我也想不理这个问题了 跳过不想就算了 可找不到时那里出问题 我就难受。
hlantian 2009-06-09
  • 打赏
  • 举报
回复
tomcat目录下的work目录里面的删掉 tom猫 也启动了好几次
-------------------------
删掉了 我没有用eclipse 用的是文本编辑器 其实这些代码 我是根据别的代码自己改了下。 我若原来的代码 发布 是能通过的 没有任何问题。

yyandlh 2009-06-09
  • 打赏
  • 举报
回复
......我说的办法你试了没??
hlantian 2009-06-09
  • 打赏
  • 举报
回复
哎。 我代码全列出来了。各位有肯帮忙的可以把这东西帖到自己电脑上试试。 这不就结了吗 我实在是没办法了。谁叫我脑子有问题,老抓着这破东东转不开。也不知道哪根筋有问题。
再加上个web.xml文件

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_4.xsd"
version="2.4">
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>

<!-- MVC-DAO 例子的servlet -->
<servlet>
<servlet-name>person</servlet-name>
<servlet-class>com.zxiaoyao.mvcdao.servlet.PersonServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>person</servlet-name>
<url-pattern>/struts/mvcdao/PersonServlet</url-pattern>
</servlet-mapping>

</web-app>

bdceo 2009-06-09
  • 打赏
  • 举报
回复
不清楚到底是哪儿出了问题
代码太乱了……
请问问题高效一点行吗,贴出关键代码即可!
这么多都没心情看了……
加载更多回复(28)
内容概要:本文系统介绍了C语言在底层系统编程与数据结构工程化实现中的核心技术,同时融合了现代Web开发中TypeScript类型系统与全栈项目架构设计。C语言部分聚焦操作系统接口调用、内存管理、文件操作与进程控制,深入讲解指针、动态内存分配、结构体与位运算,并通过实现简易shell、日志系统等工具强化实践能力;数据结构部分涵盖链表、栈、队列、哈希表、二叉树与图结构的C语言实现,结合时间与空间复杂度分析,应用于缓存系统、路径搜索等实际场景,并引入内存池优化频繁分配问题。TypeScript部分强调静态类型在提升代码可靠性中的作用,讲解基础类型、泛型、交叉与联合类型、条件类型等,并通过DTO与接口类型保障前后端数据一致性。全栈项目基于React/Vue + Node.js架构,实现RESTful API、JWT认证、统一响应结构,并结合ORM进行数据库操作,完成用户系统、权限管理与任务管理系统等实战项目。同时强调工程化建设,包括代码规范、单元测试、CI/CD及Docker容器化部署。; 适合人群:具备C语言和JavaScript基础,有一定编程经验,希望深入系统编程或向全栈工程师发展的1-3年开发者;; 使用场景及目标:①掌握C语言在系统级开发中的核心应用,如内存管理与系统调用;②实现常用数据结构并应用于工程场景;③构建类型安全的全栈项目,提升前后端协同开发效率;④建立完整的软件工程化能力体系; 阅读建议:学习过程中应结合代码实践,动手实现各类数据结构与系统工具,同步搭建全栈项目,配置工程化工具链,注重理论与实际项目的深度融合。
内容概要:本文介绍了脚本自动化运维在芯片行业中应用于EDA工具链的实战项目,重点解决工具配置、许可证管理与仿真任务调度等效率瓶颈问题。通过构建Bash与Python混合的自动化脚本系统,实现License动态调度、仿真任务并行化、断点续跑及版本兼容性处理,显著提升资源利用率与设计效率。典型案例如License调度脚本通过监控进程活跃度回收闲置许可,结合Flask API实现服务化查询与CI/CD集成,使工程师等待时间从4小时降至15分钟,License利用率提升至89%,并在7nm GPU项目中节约千万级成本。文章还展望了多云调度、AI预测与开源EDA适配等未来方向。; 适合人群:芯片设计工程师、EDA工具运维人员、自动化脚本开发者,以及具备Python/Bash基础的半导体行业技术人员;; 使用场景及目标:①优化高成本EDA许可证的分配与回收,提升资源利用率;②实现大规模仿真任务的自动编排与容错执行;③将自动化脚本嵌入CI/CD流程,支撑高频次验证与签核需求;④降低流片周期与研发成本,加速国产芯片研发进程; 阅读建议:此资源强调工程实践与系统思维的结合,建议读者在掌握基本脚本语法基础上,重点关注异常处理、权限控制、日志审计等生产级设计细节,并尝试将其方案迁移至实际EDA流程中进行调试与优化。
内容概要:本文档整合《六韬》兵法智慧,构建了一套适用于现代团队管理的“五维战力提升模型”,涵盖骨干识别激励(武锋)、战术灵活运用(林战)、团队凝聚力训练(分合)、人才选拔标准(选练)与培训落地体系(教战)五大模块。通过35天系统化实战路径、15个实用工具模板、五维诊断评估及身体锚点仪式,帮助管理者诊断团队短板,逐步建立科学化、可复制的团队战力建设体系,解决骨干流失、培训失效、战术僵化等常见管理难题,并辅以韩信点兵、赵括纸上谈兵等历史案例增强理解。; 适合人群:具备一定团队管理经验,面临骨干识别难、培训落地难、团队协同弱等问题的基层及中层管理者,尤其适合10人以上团队负责人;小团队也可根据实际情况简化使用。; 使用场景及目标:①用于系统诊断并改善团队在激励、分工、选拔、培训等方面的薄弱环节;②指导管理者按照35天路径逐步实施变革,实现团队战力的整体跃升;③结合历史案例与工具模板,提升管理决策的深度与执行力。; 阅读建议:建议用户先完成五维诊断,锁定最需改进的1-2个维度优先突破,不必强求一次性执行全部模块;所有工具均可直接套用,配合每日实操动作与身体锚点仪式强化执行惯性,同时可联动其他管理资源包(如立将威信术、决策领导力三合包)形成完整管理体系。

81,111

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧