JSP在页面用<%=调用声明函数时出现HTTP 500错误

JSP在页面用<%=调用声明函数时出现HTTP 500错误


错误描述:

Eclipse在编写JSP页面时,在其中采用<%!%>方式声明了函数,然后在页面中用<%=函数名%>方式调用时,出现HTTP状态500错误,提示为:

The method print(boolean) in the type JspWriter is not applicable for the arguments (void)

如图:

源码如下:

c 复制代码
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%!
	String sTodayString;
	 void today(){
		Date dToday = new Date();
		sTodayString = "今天是"+dToday;
	}
%>
<%=today() %>
</body>
</html>

错误解决:

原因是:采用<%=表达式%>方式进行表达式求值输出时,不能调用没有返回值的声明函数!

因此,解决方法是:

将today修改为具有return的函数。如下:

c 复制代码
<%!
	 String today(){
		Date dToday = new Date();
		return "今天是"+dToday;
	}
%>
<%=today() %>
</body>
</html>

运行成功!

相关推荐
何中应5 分钟前
请求头设置没有生效
java·后端
亓才孓30 分钟前
[JDBC]批处理
java
春日见31 分钟前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设
宋小黑43 分钟前
JDK 6到25 全版本网盘合集 (Windows + Mac + Linux)
java·后端
7哥♡ۣۖᝰꫛꫀꪝۣℋ1 小时前
Spring-cloud\Eureka
java·spring·微服务·eureka
老毛肚1 小时前
手写mybatis
java·数据库·mybatis
两点王爷1 小时前
Java基础面试题——【Java语言特性】
java·开发语言
choke2331 小时前
[特殊字符] Python 文件与路径操作
java·前端·javascript
choke2331 小时前
Python 基础语法精讲:数据类型、运算符与输入输出
java·linux·服务器
岁岁种桃花儿2 小时前
CentOS7 彻底卸载所有JDK/JRE + 重新安装JDK8(实操完整版,解决kafka/jps报错)
java·开发语言·kafka