我有几个问题。首先是我不知道如何使用 javascript 从 web 服务中获取数据。第二个是当我尝试以 JSON 格式而不是 XML 获取数据时,我总是会得到一个 xml。我真的是 js、Jquery 之类的新手,所以我才开始研究它。
http://localhost:8080/UserRest/webresources/users?format=json // Even If format is JSON the result is always XML. Browser is Chrome
<users>
<user>
<age>40</age>
<firstName>Mark</firstName>
<freeText>Free</freeText>
<id>1</id>
<lastName>Lake</lastName>
<weight>200</weight>
</user>
<user>
<age>30</age>
<firstName>Sam</firstName>
<freeText>Words</freeText>
<id>2</id>
<lastName>Grass</lastName>
<weight>105</weight>
</user>
</users>
如果我尝试
http://localhost:8080/UserRest/webresources/users?format=XML
在 Safari 中,我得到了:
40MarkFree1Lake20030SamWords2Grass105
网络服务:
@GET
@Override
@Produces({"application/xml", "application/json"})
public List<User> findAll() {
return super.findAll();
}
页:
function fetchUserFunction()
{
$.getJSON("http://localhost:8080/UserRest/webresources/users?format=json",
function(data) {
$.each(data, function(key, value) {
alert(key + "=" + value);
$('#maindiv').append('<li id="' + key.toString() + '">' + value.toString() + '</li>');
});
});
}
</script>
</head>
<body>
<h1>Users</h1>
<a href="http://localhost:8080/UserRest/webresources/users"> Test restful service</a>
<button onclick="fetchUserFunction()">Fetch Users</button>
<div id="maindiv"></div>
</body>
</html>
问题:
如何使用 JSON 或/和 Jquery 或纯 js 从带有 JavaScript 的页面获取数据?有人可以为我的 js 函数实现基本案例并解释原因和内容。我的函数只返回 [object Object],[object Object]?
如何使数据为 JSON 格式,而不是 XML?
从获取的数据构建表的最佳方法是什么?
我可以调用 webservice 类中的特定方法吗?如何调用,例如 findAll()?
我正在使用 JPA 和 JAAS 身份验证。如果我使用 Web 服务并且客户端可以在不同的服务器中,如何避免缓存问题?有时数据是旧的,因为 Eclipselink 是从缓存中读取它,而不是从数据库中读取?
你过得好吗?
这适合同时提出许多问题吗?
萨米人