自定义JSON服务

时间:2012-04-27 20:25:49

标签: json liferay

任何线索我们如何开发自定义JSON服务。

我们没有service.xml,因为内部服务将调用liferay服务来检索活动。  从我们的portlet中我们想要通过Ajax调用这个自定义JSON服务并显示结果。

我们不想使用serveResource。

此致  蒂娜

1 个答案:

答案 0 :(得分:0)

使用XMLHttpRequest()对象:

<%@include file="include.jsp"%>
<script type='text/javascript'>
function <portlet:namespace/>myService() {
var xhr = new XMLHttpRequest();
//...
var url = "<%=request.getContextPath()%>/myCustomJSONService";
xhr.open("GET", url, true);
xhr.send();
}
</script>
<table>
<tr>
<td><b><a href="#"
<!--Creates Refresh hyperlink-->
onclick="<portlet:namespace/>myService();"
style="color: black;">Refresh</a></b></td>
</tr>
</table>
<br/>
<div id="<portlet:namespace/>messageText">
</div>

这里myCustomJSONService可以是一个将一些JSON数据发送给用户的servlet。

参见A. Sarin:Portlet in Action,第12.2.3节:“使用portlet或servlet组件处理Ajax请求”