我遇到了严重的问题。我的JSP在昨天工作正常,即在文本字段中输入的值在动作类中适当地反映出来。但是,出于测试目的,我将分析代码插入到JSP中。
但是,在此之后,我在文本字段中输入的任何值都会在后端作为空白字符串返回。这完全阻止了我的进步。我不知道这是怎么回事。我调试了应用程序10次,但结果相同。
以下是我插入的分析代码:
<!-- Analytics code start-->
<s:hidden id="uid" value="Step1"></s:hidden>
<s:if test="%{#session.cust != null}">
<s:hidden id="Type" value="%{#session.cust.Type}"/>
<s:hidden id="idCode" value="%{#session.cust.IDCode}"/>
</s:if>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="${pageContext.request.contextPath}/js/as/analytics.js"></script>
<script type="text/javascript" src="https://nexus.ensighten.com/gecrb/AO_dev/Bootstrap.js">
</script>
<!-- Analytics code end-->
有没有人有解决方案?
即使删除代码,清除浏览器缓存并清理Eclipse项目,问题仍然存在。
答案 0 :(得分:0)
毫无疑问,在struts2中,参数Interceptor通过调用ValueStack #setValue(String,Object)获取所有参数并在值堆栈上设置它们,通常会导致在表单请求中提交的值应用于价值堆栈中的操作。 (引自S2 documentation)
请检查是否对拦截器堆栈进行了任何更改,参数堆栈的配置以及如果您在dev模式 dev mode中工作,您应该得到一些相关的调试/错误消息。