Я делаю AJAX-вызов с использованием jQuery на сервер JSF 2.0. «Страница», на которую я звоню, выглядит примерно так:
<ui:composition template="/templates/jsonTemplate.xhtml">
<ui:define name="content">
#{tabBean.jsonUrl}
</ui:define>
</ui:composition>
Где мой jsonTemplate.xhtml выглядит примерно так:
<html xmlns:ui="http://java.sun.com/jsf/facelets">
<ui:insert name="content" />
</html>
Результат, который отправляется клиенту, содержит мой объект JSON и теги HTML, которые я должен удалить на клиенте.
То, что я хочу вернуть - это чистый объект JSON.
{ "url" : "/this/is/my/url.xhtml" }
На клиенте я убираю теги и , использую jQuery для анализа JSON и возвращаю объект JSON. Я попытался указать шаблон без тегов HTML, и он пожаловался. Похоже, это минимальный ответ, который я могу генерировать.
Я хотел бы иметь RenderKit, который позволил бы мне возвращать только чистый JSON.