gpt4 book ai didi

java - 如何在jSTL jsp中调用方法

转载 作者:行者123 更新时间:2023-12-02 03:22:18 24 4
gpt4 key购买 nike

这个问题可能是重复的,并且在 StackOverflow 上有很多答案。

但我仍然不明白我的代码中存在什么问题。

session 中存储了一个对象,该对象是 MessageResponse 类类型的 cmdResponse

这就是我从 session 中得到的信息

命令响应:

<%
Object cmdResponse = session.getAttribute("cmdResponse");
MessageResponse messageResponse = (MessageResponse) cmdResponse;
%>

有 getMessage() 方法,它是 getter 方法。这是MessageResponse类的代码

public class MessageResponse extends Response {
String message;

public MessageResponse() {
// TODO Auto-generated constructor stub
}

public MessageResponse(String command, String message) {
super(command);
this.message = message;
}


public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}

}

这就是我尝试渲染的方式

<c:out value="${messageResponse.getMessage()}" />

但是上面的行在服务器上没有呈现任何内容,也没有错误。可能是什么问题?

最佳答案

您必须输入 messageResponse变量作为 request 的属性,如果您想从 EL 访问它。

request.setAttribute("messageResponse", messageResponse);

或者你可以使用

<c:out value="${cmdResponse.getMessage()}" />

当 EL 尝试 session 时当它在 request 中找不到该名称时。

最后但并非最不重要的一点是,<c:out value="${messageResponse.message}" /> (或者 <c:out value="${cmdResponse.message}" /> 应该足够了,EL 自己调用适当的 getter 哦。

关于java - 如何在jSTL jsp中调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39447592/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com