com.opensymphony.xwork2.DefaultTextProvider 显示在 Struts2 文本字段值中

com.opensymphony.xwork2.DefaultTextProvider Showed in Struts2 Text field value

提问人:ice 提问时间:7/22/2021 最后编辑:Roman Cice 更新时间:7/23/2021 访问量:148

问:

我的JSP正在从URL获取参数,并且工作正常。但是,如果 URL 中没有参数,则文本字段的值将显示 。com.opensymphony.xwork2.DefaultTextProvider

就像 URL 是 时一样,它输出 .但如果是这样,它就会显示login.jsp?user=USER1USER1login.jspcom.opensymphony.xwork2.DefaultTextProvider

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<%@ taglib prefix="html" uri="/struts-tags"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>

String user = request.getParameter("user");
        if(user == null) user = "";

<c:set var="user"><%=user%></html:set>
<c:textfield id="user" name="user" value='%{#user}'/>
jsp 参数 struts2 ognl struts-tags

评论


答:

1赞 Roman C 7/22/2021 #1

您无需使用 scriptlet 和 JSTL 标记来获取请求参数。

相反,您可以通过 OGNL 访问参数。对 taglib 使用命名前缀。

<%@ taglib prefix="s" uri="/struts-tags"%>

<s:textfield id="user" name="user" value="%{#parameters.user}"/>