Liferay Ajax请求和JSON响应 [英] Liferay ajax request and JSON response
问题描述
我是Liferay的新手.我使用服务生成器来创建数据库.我手动填充了它们.最终,我可以使用PersonLocalServiceUtil class
在JSP中调用它们.
现在,我想在程序中使用Ajax.
I am new in Liferay. I used service builder to create database. I populated them manually. And eventually I could call them in JSP using PersonLocalServiceUtil class
.
Now I want to use Ajax in my program.
例如:
具有属性personID
,personWeight
,personTemperature
和datetime
的人员存储在数据库中.
For example:
Person with attributes personID
, personWeight
, personTemperature
and datetime
are stored in database.
我想通过personID
进行ajax调用,以查看其特定时间轴的 weight 或 Temperature 图.我所知道的,我可以将列表从数据库调用到控制器,但是我不知道如何将其转换为JSON
对象,并根据请求将其转发到JSP,这样JSP不会刷新页面而是显示新图形.
I want to do an ajax call by personID
to see his weight or Temperature graph for particular timeline. All I know, I can call list from Database to controller But I don't know How can I convert it to JSON
obejct and forward it to JSP upon request, so that JSP won't refresh the page but display new graph.
推荐答案
您可以使用ajax请求从jsp发送人员ID,也可以在 controller(serveResource方法)内部获取数据 即
You can send person id from jsp using ajax request and you can fetch data inside controller(serveResource method) i.e
您需要创建URL
<portlet:resourceURL var="resourceURL" >
</portlet:resourceURL>
Ajax呼叫
$.ajax({
url : '${resourceURL}',
data : data,//person id to sent
type: 'POST',
dataType : "json",
success : function(data) {
// get person data back from controller
}
});
控制器部分
public void serveResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse) {
//get person id using getparameter
JSONObject json = JSONFactoryUtil.createJSONObject();
json.put("jsonData", "person details");
response.getWriter().write(json.toString());
}
HTH
这篇关于Liferay Ajax请求和JSON响应的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!