JSON Service API en Liferay
Liferay proporciona Servicios Web como API JSON. Esto permite un fácil acceso a servicios utilizando HTTP no sólo desde javascript, sino también desde cualquier cliente HTTP que interprete JSON. Cada portal posee una UI mediante la cual podemos consultar y ejecutar los servicios expuestos. (sitio oficial – Instancia local)
Existen varias formas de invocar estos servicios, a continuación se muestran un par de ejemplos utilizando librerías propias de Liferay.
Ejecuación Remota
En este ejemplo podemos ver como invocar al servicio de Bookmarks para obtener 5 entradas pertenecientes a un grupo especifico.
Liferay.Service(
'/bookmarksentry/get-group-entries',
{
p_auth: Liferay.authToken,
groupId: themeDisplay.getParentGroupId(),
start: 0,
end: 4
},
function(result) {
var exception = result.exception;
if (!exception) {
console.log(result);
}else {
alert("Error: "+exception);
}
});
Ejecución Local
En este ejemplo podemos ver como invocar al servicio de Bookmarks para obtener las entradas pertenecientes a un grupo especifico. Para poder utilizar estos servicios es necesario incluir el JS service.js, en este archivo se encuentran definidos todos los servicio que expone Liferay por defecto.
<script src="/html/js/liferay/service.js" language="JavaScript"> </script>
Liferay.Service.Bookmarks.BookmarksEntry.getGroupEntries(
{
groupId: themeDisplay.getParentGroupId(),
start: 0,
end: 4
},
function(result) {
var exception = result.exception;
if (!exception) {
console.log(result);
} else {
alert("Error: "+exception);
}
);