【发布时间】:2014-07-01 07:05:07
【问题描述】:
我有一个非常大的 json 字符串,我试图通过隐藏的表单方法将它从一个 jsp 传递到另一个。但是当我在我的另一个 jsp 中收到它时,只有一半的字符串出现,我知道它非常大。我的 results.jsp 有不同的 id,单击其中任何一个都会转到 details.jsp,它通过隐藏表单传递单击的 id 和整个字符串。我认为 POST 方法对传递的大小有限制,因此我的整个字符串都没有发送。
results.jsp
<head>
<script type="text/javascript">
function submitHiddenForm(Key) {
document.getElementById("Key").value = Key;
document.myForm.submit();
}
</script>
</head>
<body>
<div class="list-group">
<%
List<ComparisonResultDTOarr> ls = diff.getComparisonResultDTOarr();
for(int i = 0;i<ls.size();i++)
{
List<AuditItemLogsDTOArr> lsinner = ls.get(i).getAuditItemLogsDTOArr();
%><a href="#" onclick="submitHiddenForm('<%=lsinner.get(0).getKeyAsString()%>')" class="list-group-item">
<%out.println(lsinner.get(0).getKeyAsString());%></a><%
}
%>
</div>
<form action="details.jsp" method="post" name="myForm">
<input type="hidden" name="Key" id="Key"><br>
<input type="hidden" name="jsonString" id="jsonString" value=<%=(String)request.getAttribute("jsonstring") %>>
</form>
</body>
在我的 details.jsp 中,我只是获取参数
<%
String Key = request.getParameter("Key");
String jsonstr = (String)request.getParameter("jsonString");
%>
并在段落中显示 jsonstr:
<p><%=jsonstr %></p>
但它不完整,只显示部分。我知道这有点令人困惑,所以如果您需要更多详细信息,请告诉我。
P.S - 我不能使用调度程序,因为它需要点击 ID。
【问题讨论】:
-
我知道有一个最大尺寸。这就是为什么我的内容被剪切的原因,我想知道还有什么其他方法可以做到这一点@ScaryWombat 我也使用 weblogic 而不是 tomcat