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>

运行成功!

相关推荐
不当菜虚困3 分钟前
JAVA设计模式——(二)组合模式
java·设计模式·组合模式
jack_xu1 小时前
经典大厂面试题——缓存穿透、缓存击穿、缓存雪崩
java·redis·后端
CHQIUU2 小时前
Java 设计模式心法之第4篇 - 单例 (Singleton) 的正确打开方式与避坑指南
java·单例模式·设计模式
碎梦归途2 小时前
23种设计模式-结构型模式之享元模式(Java版本)
java·开发语言·jvm·设计模式·享元模式
lozhyf3 小时前
Eureka搭建
java·spring cloud
幽络源小助理3 小时前
SpringBoot民宿管理系统开发实现
java·spring boot·springboot·民宿系统
东阳马生架构3 小时前
Nacos简介—1.Nacos使用简介
java
爱发飙的蜗牛3 小时前
springboot--web开发请求参数接收注解
java·spring boot·后端
码熔burning3 小时前
【MQ篇】RabbitMQ之工作队列模式!
java·分布式·rabbitmq·mq
优雅的落幕3 小时前
Spring--统一数据返回格式与统一异常处理
java·spring·状态模式