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>

运行成功!

相关推荐
Han.miracle1 小时前
数据结构——二叉树的从前序与中序遍历序列构造二叉树
java·数据结构·学习·算法·leetcode
Le1Yu2 小时前
分布式事务以及Seata(XA、AT模式)
java
寒山李白3 小时前
关于Java项目构建/配置工具方式(Gradle-Groovy、Gradle-Kotlin、Maven)的区别于选择
java·kotlin·gradle·maven
无妄无望3 小时前
docker学习(4)容器的生命周期与资源控制
java·学习·docker
MC丶科4 小时前
【SpringBoot 快速上手实战系列】5 分钟用 Spring Boot 搭建一个用户管理系统(含前后端分离)!新手也能一次跑通!
java·vue.js·spring boot·后端
千码君20164 小时前
React Native:从react的解构看编程众多语言中的解构
java·javascript·python·react native·react.js·解包·解构
夜白宋5 小时前
【word多文档docx合并】
java·word
@yanyu6665 小时前
idea中配置tomcat
java·mysql·tomcat
2501_916766545 小时前
【项目部署】JavaWeb、MavenJavaWeb项目部署至 Tomcat 的实现方式
java·tomcat
RoboWizard5 小时前
扩容刚需 金士顿新款Canvas Plus存储卡
java·spring·缓存·电脑·金士顿