[Tapestry] Возвращение JSON на клиент
От: Аноним  
Дата: 23.05.07 07:59
Оценка:
Нужно реализовать такую логику:
html-форма отправляет ajax запрос (json="true") на сервер. Сервер на основе запроса создает некий список, оборачивает его в JSON-объект и возвращает его на клиент. На основе данного объекта строится html-таблица.

Вопрос: Как это можно реализовать?

На данный момент используется примерно такая конструкция:
<form jwcid="@Form" success="listener:doSubmit" async="true" json="true">
....
  <b jwcid ="subResult@Result"></b>
</form>


Submit: обновляет комноненты
public void doSubmit() {
    responseBuilder.updateComponent("subResult");
    responseBuilder.updateComponent("tableArea");
}


Оборачивание в json и вызов скрипта(?)
public abstract class Result extends AbstractFormWidget implements
        ValidatableField, IJSONRender, IDirect {
    public void renderComponent(IJSONWriter writer, IRequestCycle cycle) {
        JSONObject json = writer.object();
        json.put("asda", "dva");

        Map parms = new HashMap();
        parms.put("props", json.toString());
        parms.put("form", getForm().getName());
        parms.put("widget", this);
        PageRenderSupport prs = TapestryUtils.getPageRenderSupport(cycle, this);
        IScript script = getScript();
        script.execute(this, cycle, prs, parms);
    }


Остался невыясненным вопрос:
Как и куда вернуть данный JSON-объект?



env: Tapestry 4.1.2-SNAPSHOT
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.