我正在为IBM WebSphere Portal 6.1编写JSR 286 portlet。我有以下代码:
@ProcessAction(name="processForm")
public void processForm(ActionRequest request, ActionResponse response)
throws PortletException, IOException {
String formField1 = request.getParameter("formField1"));
System.err.println("formField1: " + formField1);
}
如果用户提交'<'在HTML表单上,系统输出:
formField1: '<'
但是,如果用户提交'&amp; lt;'在HTML表单上,系统还输出:
formField1: '<'
这使得无法确定用户实际键入HTML表单的值。有办法解决这个问题吗?
我发现一篇文章here建议直接替换,但它没有解决区分表单上两个不同值的问题。
答案 0 :(得分:2)
你能看到'&lt;'到达服务器,并不是其他组件正在改变'&lt;',例如浏览器本身?
如果没有,请查看此页面上的第4项(问题:“&lt;”和“&gt;”字符显示不正确):