jasper中table怎么修改
时间: 2025-07-30 19:22:12 浏览: 3
<think>我们正在处理关于JasperReports中修改table组件属性或数据源的问题。根据提供的引用信息,我们可以总结出以下关键点:1.引用[2]展示了如何在Table组件中使用JavaBean作为数据源。具体是通过修改DatasetRun标签中的表达式,将数据源设置为一个JRBeanCollectionDataSource,该数据源来自于字段`$F{tableBeanList}`。2.引用[3]则展示了如何使用JSON数据源,特别是通过subDataSource方法来获取不同的数据源用于多个表格。同时,该引用还详细说明了如何避免表格重叠、创建分组以及调整表格样式等。因此,针对用户的问题,我们可以从两个方面回答:修改数据源和修改表格属性。###修改数据源在JasperReports中,Table组件的数据源可以通过以下方式修改:1.**使用JavaBean数据源**:如引用[2]所示,在Table组件的`<datasetRun>`中,通过`dataSourceExpression`指定一个JRBeanCollectionDataSource。例如:```xml<datasetRunsubDataset="Dataset2"...><dataSourceExpression><![CDATA[newnet.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{tableBeanList})]]></dataSourceExpression></datasetRun>```这里,`$F{tableBeanList}`是一个字段,其值是一个集合(List),JRBeanCollectionDataSource会使用这个集合作为数据源。2.**使用JSON数据源**:如引用[3]所示,如果主数据源是JSON,可以通过subDataSource方法来获取子数据源。例如:```xml<datasetRunsubDataset="Dataset1"...><dataSourceExpression><![CDATA[((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}).subDataSource("test1")]]></dataSourceExpression></datasetRun>```这里,`$P{REPORT_DATA_SOURCE}`是主数据源(JsonDataSource),`subDataSource("test1")`获取JSON中名为"test1"的数组作为当前表格的数据源。###修改表格属性在JasperStudio中,可以通过以下步骤修改表格属性:1.**选择表格**:在Design视图中,点击表格,然后在Properties视图中可以看到表格的各种属性。2.**调整表格大小和位置**:拖动表格的边框或使用属性视图中的Width、Height等属性。3.**调整列宽和行高**:双击表格进入表格编辑模式,然后可以调整每一列的宽度,每一行的高度。在属性视图中也可以精确设置。4.**设置表格样式**:可以设置表格的边框、背景色、字体等样式属性。5.**设置表格内容**:在表格编辑模式下,可以修改每个单元格的表达式、样式等。例如,引用[3]中提到的添加序号列,使用`$V{COLUMN_COUNT}`变量。###具体步骤示例(在JasperStudio中)1.**打开表格属性**:-在Design视图选择表格,右侧Properties视图会显示表格属性。-可以修改如:Width(宽度)、Height(高度)、PositionType(定位方式)等。2.**修改数据源**:-在Structure视图(或Design视图)中,找到Table组件的子元素`<datasetRun>`。-在`<datasetRun>`的属性中,修改`dataSourceExpression`表达式。3.**调整表格内部结构**:-双击表格进入表格编辑模式。-可以调整列宽:将鼠标放在列边界上拖动。-可以添加/删除列:右键点击列头,选择插入列或删除列。-设置单元格属性:选择单元格,在Properties视图中设置表达式、样式等。4.**处理表格分页**:-如果表格跨页,可以设置表格的SplitType属性(如设置为“Prevent”)来控制分页行为。###注意事项-修改数据源表达式时,确保表达式返回正确的数据源类型(如JRBeanCollectionDataSource或JsonDataSource的子数据源)。-调整表格布局时,注意表格所在的区域(如Detail、GroupHeader等)以及表格高度,避免与其他元素重叠(如引用[3]中提到的分组方法避免重叠)。###总结在JasperReports中修改Table组件的属性或数据源,主要通过JasperStudio的设计视图和属性视图进行可视化操作,或者直接修改XML源码。数据源的修改主要涉及`<datasetRun>`中的`dataSourceExpression`,而表格属性则包括大小、位置、样式等,可以在属性视图中调整。§§相关问题§§1.如何在JasperReports中使用JSON数据源填充多个表格?2.JasperReports中如何避免表格内容重叠?3.如何在JasperReports的表格中添加序号列?4.JasperReports中如何调整表格的列宽和行高?</think>### 如何在 JasperReports 中修改 Table 组件的属性或数据源
在 JasperReports 中修改 Table 组件的属性或数据源,主要通过 **Jasper Studio 设计器** 和 **XML 配置文件** 实现。以下是具体步骤:
---
#### **一、修改 Table 数据源**
Table 组件支持多种数据源类型(如 JavaBean、JSON 等),修改方法如下:
1. **JavaBean 数据源**(适用于动态数据)
在 Table 组件的 `<datasetRun>` 标签中配置 `dataSourceExpression`:
```xml
<datasetRun subDataset="YourDataset" uuid="...">
<dataSourceExpression>
<![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{yourListField})]]>
</dataSourceExpression>
</datasetRun>
```
- `$F{yourListField}` 是传入的 Java 集合字段(如 `List<YourBean>`)[^2]。
2. **JSON 数据源**(适用于嵌套结构)
使用 `JsonDataSource` 的 `subDataSource()` 方法提取子数据集:
```xml
<datasetRun subDataset="SubDataset" uuid="...">
<dataSourceExpression>
<![CDATA[((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}).subDataSource("jsonArrayField")]]>
</dataSourceExpression>
</datasetRun>
```
- `jsonArrayField` 是 JSON 中的数组字段名[^3]。
---
#### **二、修改 Table 属性**
在 Jasper Studio 中可视化调整属性:
1. **基础属性调整**
- 选中 Table → 右侧 **Properties** 面板 → 修改尺寸、位置、背景色等。
- 调整列宽:双击 Table 进入编辑模式 → 拖动列边界。
2. **动态高度设置**
避免内容重叠需启用自适应高度:
- 选中单元格 → Properties → **Text Field** → 设置 `Text Adjust: StretchHeight`[^3]。
- 在 Table 属性中勾选 `Stretch Type: RelativeToTallestObject`。
3. **添加序号列**
在 Column Header 中插入列 → 使用内置变量 `$V{COLUMN_COUNT}` 作为序号[^3]。
---
#### **三、避免表格重叠(关键技巧)**
多个 Table 需独立放置在不同区域:
1. 创建分组(如 `Group1`, `Group2`)。
2. 将每个 Table 分别放入:
- `Group Header`
- `Detail`
- `Group Footer`
 [^3]。
---
#### **四、XML 配置示例**
完整 Table 组件配置片段:
```xml
<jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components">
<datasetRun subDataset="TableDataset" uuid="...">
<dataSourceExpression>
<![CDATA[$F{employeeList}]]> <!-- JavaBean 数据源 -->
</dataSourceExpression>
</datasetRun>
<jr:column width="50">
<jr:columnHeader height="30">
<textField>
<textFieldExpression><![CDATA["序号"]]></textFieldExpression>
</textField>
</jr:columnHeader>
<jr:detailCell height="30">
<textField>
<textFieldExpression><![CDATA[$V{COLUMN_COUNT}]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
</jr:table>
```
---
### 总结
- **数据源修改**:通过 `<dataSourceExpression>` 切换 JavaBean/JSON 数据源。
- **属性调整**:在 Jasper Studio 中直接编辑或配置 XML 的样式属性。
- **布局关键**:用分组隔离 Table 并启用 `Stretch Height` 避免重叠[^3]。
阅读全文
相关推荐









org.apache.jasper.JasperException: An exception occurred processing JSP page [/showStudent.jsp] at line [17]
14: <body>
15: <%
16: StudentDao studentDao = new StudentDao();
17: ArrayList<Student> students = studentDao.queryAllStudents();
18: %>
19:
20:
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:584)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:481)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:386)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:330)
javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Exception Report Message An exception occurred processing JSP page [/showAllProducts.jsp] at line [56] Description The server encountered an unexpected condition that prevented it from fulfilling the request. Exception org.apache.jasper.JasperException: An exception occurred processing JSP page [/showAllProducts.jsp] at line [56] 53: 54: <input type="checkbox" id="selectAll">鍏ㄩ��/鍏ㄤ笉閫� 鍟嗗搧id 鍟嗗搧鍚嶇О 绫诲埆鍚嶇О 鎿嶄綔 55: 56: <%for (Product everyProduct:allProductMess){%> 57: 58: <input type="checkbox" class="choose"> 59: <%=everyProduct.getPid()%> Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:588) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:481) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:386) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:330) javax.servlet.http.HttpServlet.service(HttpServlet.java:742) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
在 [81] 行处理 [/room/livingroom.jsp] 时发生异常 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 org.apache.jasper.JasperException: 在 [81] 行处理 [/room/livingroom.jsp] 时发生异常 78: while (rs.next()){ 79: %> 80: 81: <%=rs.getString("id")%> 82: <%=rs.getString("appliance_type")%> 83: <%=rs.getString("appliance_name")%> 84: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:610) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:489) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 根本原因。 javax.servlet.ServletException: java.sql.SQLException: Column 'id' not found. org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:654) org.apache.jsp.room.livingroom_jsp._jspService(livingroom_jsp.java:356) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:67) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:466) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 根本原因。 java.sql.SQLException: Column 'id' not found. com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:130) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:98) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:90) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:64) com.mysql.cj.jdbc.result.ResultSetImpl
org.apache.jasper.JasperException: 无法为JSP编译类:
在生成的java文件中的第:[15]行发生错误:[C:\Users\19653\AppData\Local\JetBrains\IntelliJIdea2024.3\tomcat\Unnamed_meeting\work\Catalina\localhost\ROOT\org\apache\jsp\html\article_jsp.java]
The type jdk.jfr.internal.tool.Command.title is not visible
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:72)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:192)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:542)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:371)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:343)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:329)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51此为错误,以下为jsp代码<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="static jdk.jfr.internal.tool.Command.title" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>文章</title>
</head>
<body>
<jsp:include page="/incloud/header.jsp" />
<jsp:include page="/incloud/sidebar.jsp" />
<% boolean browseCount; %>
发布文章
<form class="form-inline" action="article.jsp" method="get">
<label for="inlineFormInput" class="sr-only">Name</label>
<input id="inlineFormInput" name="title" type="text" placeholder="按标题名字查找" class="mr-sm-3 form-control">
<input type="submit" value="查询" class="btn btn-primary">
</form>
<input id = "addArt" type="submit" value="发布文章" class="btn btn-primary">
收藏数:100
浏览数:
作者:
时间:
${article.user_id}
${article.browse_count}
${article.publish_realname}
${publish_date}
«
<c:forEach begin="1" end="${pageData.totalPage}" varStatus="i">
${i.count}
</c:forEach>
»
<jsp:include page="/incloud/footer.jsp" />
</body>
</html>
<script type="text/javascript">
function pre() {
if (${pageData.currPage-1<=0}) {
layer.msg('已经到顶啦!');
return;
}
window.location.href="/https/wenku.csdn.net/user/findAll?currPage=${pageData.currPage - 1}&realName=${realName}"
}
//添加文章跳转链接
$("#addArt").click(function () {
window.location.href = '/html/article_add.jsp'
});
</script>



Exception Report Message An exception occurred processing JSP page [/showAllProducts.jsp] at line [56] Description The server encountered an unexpected condition that prevented it from fulfilling the request. Exception org.apache.jasper.JasperException: An exception occurred processing JSP page [/showAllProducts.jsp] at line [56] 53: 54: <input type="checkbox" id="selectAll">鍏ㄩ��/鍏ㄤ笉閫� 鍟嗗搧id 鍟嗗搧鍚嶇О 绫诲埆鍚嶇О 鎿嶄綔 55: 56: <%for (Product everyProduct:allProductMess){%> 57: 58: <input type="checkbox" class="choose"> 59: <%=everyProduct.getPid()%> Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:588) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:481) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:386) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:330) javax.servlet.http.HttpServlet.service(HttpServlet.java:742) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
在 [81] 行处理 [/room/livingroom.jsp] 时发生异常 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 org.apache.jasper.JasperException: 在 [81] 行处理 [/room/livingroom.jsp] 时发生异常 78: while (rs.next()){ 79: %> 80: 81: <%=rs.getString("id")%> 82: <%=rs.getString("appliance_type")%> 83: <%=rs.getString("appliance_name")%> 84: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:610) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:489) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 根本原因。 javax.servlet.ServletException: java.sql.SQLException: Column 'id' not found. org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:654) org.apache.jsp.room.livingroom_jsp._jspService(livingroom_jsp.java:356) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:67) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:466) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 根本原因。 java.sql.SQLException: Column 'id' not found. com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:130) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:98) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:90) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:64) com.mysql.cj.jdbc.result.ResultSetImpl
org.apache.jasper.JasperException: 无法为JSP编译类:
在生成的java文件中的第:[15]行发生错误:[C:\Users\19653\AppData\Local\JetBrains\IntelliJIdea2024.3\tomcat\Unnamed_meeting\work\Catalina\localhost\ROOT\org\apache\jsp\html\article_jsp.java]
The type jdk.jfr.internal.tool.Command.title is not visible
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:72)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:192)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:542)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:371)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:343)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:329)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51此为错误,以下为jsp代码<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="static jdk.jfr.internal.tool.Command.title" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>文章</title>
</head>
<body>
<jsp:include page="/incloud/header.jsp" />
<jsp:include page="/incloud/sidebar.jsp" />
<% boolean browseCount; %>
发布文章
<form class="form-inline" action="article.jsp" method="get">
<label for="inlineFormInput" class="sr-only">Name</label>
<input id="inlineFormInput" name="title" type="text" placeholder="按标题名字查找" class="mr-sm-3 form-control">
<input type="submit" value="查询" class="btn btn-primary">
</form>
<input id = "addArt" type="submit" value="发布文章" class="btn btn-primary">
收藏数:100
浏览数:
作者:
时间:
${article.user_id}
${article.browse_count}
${article.publish_realname}
${publish_date}
«
<c:forEach begin="1" end="${pageData.totalPage}" varStatus="i">
${i.count}
</c:forEach>
»
<jsp:include page="/incloud/footer.jsp" />
</body>
</html>
<script type="text/javascript">
function pre() {
if (${pageData.currPage-1<=0}) {
layer.msg('已经到顶啦!');
return;
}
window.location.href="/https/wenku.csdn.net/user/findAll?currPage=${pageData.currPage - 1}&realName=${realName}"
}
//添加文章跳转链接
$("#addArt").click(function () {
window.location.href = '/html/article_add.jsp'
});
</script>




在 [81] 行处理 [/room/livingroom.jsp] 时发生异常 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 org.apache.jasper.JasperException: 在 [81] 行处理 [/room/livingroom.jsp] 时发生异常 78: while (rs.next()){ 79: %> 80: 81: <%=rs.getString("id")%> 82: <%=rs.getString("appliance_type")%> 83: <%=rs.getString("appliance_name")%> 84: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:610) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:489) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 根本原因。 javax.servlet.ServletException: java.sql.SQLException: Column 'id' not found. org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:654) org.apache.jsp.room.livingroom_jsp._jspService(livingroom_jsp.java:356) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:67) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:466) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324) javax.servlet.http.HttpServlet.service(HttpServlet.java:623) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 根本原因。 java.sql.SQLException: Column 'id' not found. com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:130) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:98) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:90) com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:64) com.mysql.cj.jdbc.result.ResultSetImpl
org.apache.jasper.JasperException: 无法为JSP编译类:
在生成的java文件中的第:[15]行发生错误:[C:\Users\19653\AppData\Local\JetBrains\IntelliJIdea2024.3\tomcat\Unnamed_meeting\work\Catalina\localhost\ROOT\org\apache\jsp\html\article_jsp.java]
The type jdk.jfr.internal.tool.Command.title is not visible
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:72)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:192)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:542)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:371)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:343)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:329)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51此为错误,以下为jsp代码<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="static jdk.jfr.internal.tool.Command.title" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>文章</title>
</head>
<body>
<jsp:include page="/incloud/header.jsp" />
<jsp:include page="/incloud/sidebar.jsp" />
<% boolean browseCount; %>
发布文章
<form class="form-inline" action="article.jsp" method="get">
<label for="inlineFormInput" class="sr-only">Name</label>
<input id="inlineFormInput" name="title" type="text" placeholder="按标题名字查找" class="mr-sm-3 form-control">
<input type="submit" value="查询" class="btn btn-primary">
</form>
<input id = "addArt" type="submit" value="发布文章" class="btn btn-primary">
收藏数:100
浏览数:
作者:
时间:
${article.user_id}
${article.browse_count}
${article.publish_realname}
${publish_date}
«
<c:forEach begin="1" end="${pageData.totalPage}" varStatus="i">
${i.count}
</c:forEach>
»
<jsp:include page="/incloud/footer.jsp" />
</body>
</html>
<script type="text/javascript">
function pre() {
if (${pageData.currPage-1<=0}) {
layer.msg('已经到顶啦!');
return;
}
window.location.href="/https/wenku.csdn.net/user/findAll?currPage=${pageData.currPage - 1}&realName=${realName}"
}
//添加文章跳转链接
$("#addArt").click(function () {
window.location.href = '/html/article_add.jsp'
});
</script>

org.apache.jasper.JasperException: 无法为JSP编译类:
在生成的java文件中的第:[15]行发生错误:[C:\Users\19653\AppData\Local\JetBrains\IntelliJIdea2024.3\tomcat\Unnamed_meeting\work\Catalina\localhost\ROOT\org\apache\jsp\html\article_jsp.java]
The type jdk.jfr.internal.tool.Command.title is not visible
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:72)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:192)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:542)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:371)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:343)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:329)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:376)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:324)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51此为错误,以下为jsp代码<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="static jdk.jfr.internal.tool.Command.title" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>文章</title>
</head>
<body>
<jsp:include page="/incloud/header.jsp" />
<jsp:include page="/incloud/sidebar.jsp" />
<% boolean browseCount; %>
发布文章
<form class="form-inline" action="article.jsp" method="get">
<label for="inlineFormInput" class="sr-only">Name</label>
<input id="inlineFormInput" name="title" type="text" placeholder="按标题名字查找" class="mr-sm-3 form-control">
<input type="submit" value="查询" class="btn btn-primary">
</form>
<input id = "addArt" type="submit" value="发布文章" class="btn btn-primary">
收藏数:100
浏览数:
作者:
时间:
${article.user_id}
${article.browse_count}
${article.publish_realname}
${publish_date}
«
<c:forEach begin="1" end="${pageData.totalPage}" varStatus="i">
${i.count}
</c:forEach>
»
<jsp:include page="/incloud/footer.jsp" />
</body>
</html>
<script type="text/javascript">
function pre() {
if (${pageData.currPage-1<=0}) {
layer.msg('已经到顶啦!');
return;
}
window.location.href="/https/wenku.csdn.net/user/findAll?currPage=${pageData.currPage - 1}&realName=${realName}"
}
//添加文章跳转链接
$("#addArt").click(function () {
window.location.href = '/html/article_add.jsp'
});
</script>



