2015-01-04 5 views
2

Я решил использовать собственный механизм шаблонов с фреймворком Spring MVC.как реализовать поддержку весов для пользовательского механизма шаблонов?

моих шаблоны реализованы в Java и есть метод для рендеринга в строки:

public String render(Map context); 

как настроить весной, чтобы сделать их доступными в бобах Controller как вид, например, как:

ModelAndView modelAndView = new ModelAndView("activationPage"); // - view name which will actually be java class name reference. 
modelAndView.addObject("validationResult", validationResult); 
return modelAndView; 

модель будет передан как контекст в коде, соединяющем пружину и мой механизм шаблонов.

ответ

2

Вы должны реализовать org.springframework.web.servlet.View (который должен быть легким, у вас уже есть что-то очень похожее на render метод он нуждается), а также org.springframework.web.servlet.ViewResolver, который отображает вид имен (например, «activationPage») на ваших пользовательских представлений.

Как только у вас есть это, отбросьте компонент из вашего класса ViewResolver в контекст, и (если вы не сделали что-то еще, что мешает ему), оно должно автоматически подбираться весной и должно просто работать. если у вас уже есть другие ViewResolvers, они могут столкнуться с тем, кто может решить проблему, и в этом случае задайте новый вопрос.

0

Привет Я являюсь автором Rythm template engine, примерно полгода назад у меня такое же требование, как и вы. Я сделал, чтобы прочитать исходный код представления Velocity и Freemarker SpringFramework. А затем создайте Rythm view для весны, следуя их подходу.

Легко следить за тем, что уже существует, и это делает вашу реализацию в хорошем качестве, чтобы следовать официальному модулю. Удачи вам :-)

Смежные вопросы