0

我创建了一个 Spring Roo 项目。一切看起来都很好。现在我想在我的index.jspx. currentUser此表单将更改我ToDo班级中的静态字段。所以我要补充:

<form>
  <%@ page import="static com.mypack.domain.ToDo.*" %>
   <label for="_username_id">My name is:</label>
    <% currentUser = request.getParameter("username"); %>
             <input type="text"  id="username" name="username" maxlength="30" path="username" size="0" value="<%= currentUser %>"/>
             <input type="submit"/>
</form>

在它中间的某个地方。现在它不起作用了:

This page contains the following errors:

error on line 6 at column 20: StartTag: invalid element name
Below is a rendering of the page up to the first error.

function readCookie(name) { var nameEQ = name + '='; var ca = document.cookie.split(';'); for(var i=0;i

如果我评论上面的行,它工作得很好。怎么了?有没有办法从jsp页面将值写入类的静态字段?我该如何解决这个问题?

4

1 回答 1

1

只需使用EL。请求参数可通过${param.name}.

<input type="text" name="username" value="${param.username}" />

您也只需要考虑XSS。为此使用JSTL :fn:escapeXml

<input type="text" name="username" value="${fn:escapeXml(param.username)}" />

不要使用小脚本(那些<% %>东西)。他们被认为是不好的做法

ToDo.currentUser是一个静态场也不好听。它的值将在 web 应用程序中的所有请求/会话之间共享。不同的访问者将看到相同的值,并且任何修改都将反映给所有访问者。那是你要的吗?

于 2010-04-27T00:57:33.477 回答