使用 EL 访问 JavaBean 对象并将参数传递给 JSP

问题描述 投票:0回答:1

很抱歉这个棘手的问题,所以我正在尝试将我们的遗留代码转换为 JSTL 以避免我们的应用程序中出现 XSS。我只是想知道是否有一种方法可以使用 JSTL 访问 JSP 中带参数的 JavaBean 对象和方法?

这是之前和之后的代码。

之前:

  <HTML>
<jsp:useBean id="someBean" scope="session" class="package.className" />
<head>
</head>
<BODY>
<p>
<%= ((package.className)session.getAttribute("someBean")).getSomeDataFromBean(request,response) %>
</p>
</BODY>
</HTML>

这就是我想要实现的目标

  <HTML>
    <%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
    <%@ taglib uri = "http://java.sun.com/jsp/jstl/functions" prefix = "fn" %>
    <body> 
       <p> 
         <c:out value="${package.className.getSomeDataFromBean(request,response)}"/> </p>
    </body>
    </HTML>

注意,包类只是一个Bean,而不是servlet。

任何意见都将受到高度赞赏!

jsp el
1个回答
0
投票

继续使用

<jsp:useBean>
。很好。默认情况下,该 bean 已在 EL 范围内通过其
id
可用:

${someBean}

所以,应该这样做:

<c:out value="${someBean.getSomeDataFromBean(request,response)}" />
© www.soinside.com 2019 - 2024. All rights reserved.