Доступ к данным шаблона скрипта из модели с помощью Magnolia Java - PullRequest
0 голосов
/ 01 февраля 2019

Мне нужно получить доступ к данным, вводимым через шаблон скрипта Magnolia, из модели Java Magnolia.

Я попытался настроить параметры и определения.Я пытался использовать различные свойства узла определения и содержимого.

public FormModel(Node content, ConfiguredTemplateDefinition definition, RenderingModel<?> parent) {
    super(content, definition, parent);
}

public String execute() {

    HttpServletRequest request = MgnlContext.getWebContext().getRequest();
    if ("POST".equals(request.getMethod())) {
        try {
            //Access the name input from the template script
        }
        catch(Exception e) {
            System.out.print(e);
        }
    }

    return super.execute();
}

}

<form method="post">
    <div>
        <label>Name:</label>
        <input type="text" name="name"/>
    </div>
</form>

Я хочу иметь возможность доступа к значению ввода в коде Java.

1 Ответ

0 голосов
/ 04 февраля 2019

Вам необходимо указать атрибут modelClass в определении шаблона, а FormModel должен расширяться info.magnolia.rendering.model.RenderingModelImpl<>.Вы не указали, делали ли вы что-нибудь из этого, поэтому очень трудно догадаться, что там может быть не так.

Если вы используете YAML, определение должно выглядеть следующим образом:

renderType: freemarker
templateScript: /my-module/templates/components/home.ftl
modelClass: my.awesome.FormModel
...