Как создать Jahia Ajax Call (JSP,JQuery)
Когда я собираю модуль / компонент, что мне нужно передать в ActionResult, чтобы получить правильный HTTPServletRequest в вызове Ajax?
Например (в моем JSP):
var location = '${currentNode.path}.sqlPaging.do';
$.post(location, function(data) {
temp=data;
alert(data.info);
$('#result').html(data);
});
Дополнительная информация (вот мой класс):
@Override
public ActionResult doExecute(HttpServletRequest req, RenderContext renderContext, Resource resource,
JCRSessionWrapper session, Map<String, List<String>> parameters, URLResolver urlResolver)
throws Exception {
JSONObject json = new JSONObject();
json.put("info",3.14);
ActionResult result = new ActionResult(HttpServletResponse.SC_OK, null, json);
result.setJson(json);
return result;
}
Используемые пакеты: javax.servlet.http org.jahia.bin.ActionResult org.json.JSONObject
2 ответа
Это была проблема. Мне нужно было иметь JSON (в кавычках) в вызове Ajax, и мне нужно было вызвать "data.info".
var location = '${currentNode.path}.sqlPaging.do';
$.post(location, function(data) {
temp=data;
alert(data.info);
$('#result').html(data);
},"json");
Спасибо qlamerand
Другое решение для обработки вызовов ajax - это регистрация собственного контроллера Spring MVC. Веб-приложение Jahia поставляется с предустановленной пружинной сердцевиной, пружинными бобами, Spring Aop и всем, что вам может понадобиться.
Вам нужно будет выполнить некоторые настройки в файле application-context.xml.
Вы даже можете использовать и и быть боссом с аннотациями, например, @Controller, вместо регистрации контроллеров jahia в XML-файлах.
http://fruzenshtein.com/spring-mvc-ajax-jquery/
Ура!