将Java传递给Javascript需要很长时间

时间:2017-02-28 11:34:26

标签: javascript java html json tomcat

我试图通过HTTP请求(使用Java Tomcat发送)将大型JSONObject传递给Javascript。

但是当JSONObject大小增长时,将Object从Java变量传递给Javascript变量

我该怎么做: 在Java servlet中,我使用Java HttpServletRequest设置我想要传递的属性,并调用我想要的页面:

request.setAttribute("myJsonAttr", myJSONObject);`
this.getServletContext().getRequestDispatcher("/WEB-INF/result.jsp").forward(request, response);

然后我在目标JSP中检索JSON对象:

<% 
  JSONObject myJavaJSONObject = (JSONObject) request.getAttribute("myJsonAttr");
%>
<script>
  var alignmentJson = <%=myJavaJSONObject%>;
</script>

通常它工作正常。但它不会因为超过10万个条目而停止运行JSONObject:它会阻塞var alignmentJson = <%=myJavaJSONObject%>;

我需要使用Javascript(AngularJS)

来获取此JSON对象

有没有更好的方法将JSON对象从Java servlet传递给Javascript?

谢谢!

编辑:调用Java JSONObject后页面停止响应。

Java是否只在尝试调用后才尝试检索对象?我还尝试直接在Java中记录myJavaJSONObject.toJSONString()(在将其传递给javascript之前)。并且,在这种情况下,记录myJavaJSONObject.toJSONString()时发生崩溃

这是一个显示日志的例子:

<% 
  JSONObject myJavaJSONObject = (JSONObject) request.getAttribute("myJsonAttr");
%>
<script>
  console.log("this log is displayed");
</script>
<script>
  console.log("this log is not displayed");
  var alignmentJson = <%=myJavaJSONObject%>;
</script>

0 个答案:

没有答案