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 小时前
docker 安装minio nginx,配置nginx根据文根路由minio展示图片
java·nginx·docker
吴阿福|一人公司5 小时前
深度解析 Python 类变量修改的命名空间隔离
java·服务器·数据结构
zzz_23685 小时前
【Java基础】链表的七十二变——从LRU缓存到手写浏览器前进后退
java·链表·缓存
番茄去哪了5 小时前
神领物流面试题(一)
java·大数据·中间件
云烟成雨TD5 小时前
Agent Scope Java 2.x 系列【9】接入高德 MCP 服务
java·人工智能·agent
gaohe26AIliuzeyu5 小时前
Java内部类
java·开发语言
西安邮电大学5 小时前
有关数组的经典算法题
java·后端·其他·算法·面试
互联网推荐官6 小时前
上海AI Agent智能体开发公司技术选型实录:六条路径、三类架构与真实落地约束
java·人工智能·ai·架构·开发经验·上海
mikasa6676 小时前
关于Spring MVC 基于 AOP 实现的全局控制器统一处理方案@ControllerAdvice
java·spring·mvc
一 乐6 小时前
幼儿园管理系统|基于springboot + vue幼儿园管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·幼儿园管理系统