我在服务器端的JSON对象:从服务器请求JSON对象?
String jsonText = JSONValue.toJSONString(users);
,我想将其发送给客户端的JavaScript函数中使用,该怎么做?
我正在使用JSF 2与Pure JavaScript没有其他库。
我在服务器端的JSON对象:从服务器请求JSON对象?
String jsonText = JSONValue.toJSONString(users);
,我想将其发送给客户端的JavaScript函数中使用,该怎么做?
我正在使用JSF 2与Pure JavaScript没有其他库。
的最简单方式是让JSF打印JSON对象的字符串表示为在同一视图中一个JS变量:
<script>var users = #{bean.usersAsJson};</script>
的正确方式,但是,是对为此,请使用完整的JSON Web服务。 JSF是一个基于组件的MVC框架,而不是JSON Web服务。为此,Java EE堆栈提供了JAX-RS API。长答案简短:Servlet vs RESTful。最好结合jQuery或任何能够发送Ajax请求并基本上在一个oneliner中操纵HTML DOM树的JS框架。您只需要考虑到,当与JSF结合使用时,仅可用于纯粹演示。
浏览器必须请求它,即该字符串必须位于请求处理链中的某处;设置对该字符串的响应,浏览器将收到它。
在HTTP中,服务器不会向客户端发送任何内容。客户端使用请求请求某个资源,并且该响应包含该资源。
使JavaScript函数向服务器发送AJAX请求,并使服务器在响应中响应此JSON字符串(通过将JSON字符串写入响应编写器)。
请参阅http://api.jquery.com/jQuery.getJSON/从JavaScript获取JSON字符串。服务器代码是如此简单
response.getWriter().print(jsonText);
参考或代码片段? – 2011-12-26 13:29:16
但我只使用JavaScript,如何用普通JS完成该操作? – 2011-12-26 13:31:29
阅读http://www.w3schools.com/ajax/default.asp和http://www.json.org/js.html。帮你一个忙,并使用像jQuery或Prototype这样的JavaScript库来处理所有的跨浏览器问题。本机AJAX是一个痛苦的屁股。 – 2011-12-26 13:36:44
我想你想说响应json字符串。 它可以通过jQuery函数getJSON来完成。 它会得到json字符串并解析它的inti散列,然后你必须处理它以满足你的需要。 API documentation
将您的json对象发送给响应,并在javascript中获取响应。 使用eval函数来评估json对象。
var jsonObject = eval('(' + request.responseText + ')');
请举个例子吗? – 2011-12-26 13:27:59
如何从服务器提供正常的HTML页面? – Nicolas78 2011-12-26 13:29:48
我正在使用JSF 2和JavaScript。 – 2011-12-26 13:31:50