Играть! Framework 2.X WebJar с файлами *.html: доступ из контроллера

Мы пытаемся создать модель плагина для нашего Play! проект. Плагин должен включать код Java/Scala и файл шаблона html (с css, js).

Примеры для WebJars описывают, как ссылаться на статические ресурсы, такие как css и js, но мы не можем найти, как включать и использовать (из контроллера) файлы шаблонов html.

public static Result index(Http.Context ctx) {
    ...
    return ok(views.html.ourHtmlTemplate.render();
}

person Yuriy Ch    schedule 18.07.2014    source источник
comment
Что вы хотите сделать с WebJar в контроллере?   -  person James Ward    schedule 18.07.2014
comment
Мне нужно поместить файл jar с (java, css, js и html) в Play! папку и иметь возможность отображать html (из этой банки) с помощью Play! механизм шаблонов (шаблон отображается из контроллера). JAR-файл добавлен в Play! как зависимость.   -  person Yuriy Ch    schedule 18.07.2014
comment
Я все еще немного смущен тем, что вы пытаетесь сделать. Какой Jar и какая папка Play?   -  person James Ward    schedule 19.07.2014
comment
Идея состоит в том, чтобы создать консольное приложение веб-управления с расширением функциональности с помощью плагинов, плагины должны иметь возможность отображать полную веб-страницу и содержать некоторую логику на стороне контроллера. Плагины будут распространяться в виде jar-файлов и будут включать в себя все необходимые компоненты. Я рассматривал WebJar как одно из возможных решений проблемы. Баночка плагина будет помещена в Play! папка пути к классам.   -  person Yuriy Ch    schedule 20.07.2014


Ответы (1)


Вы можете упаковать любое приложение Play (представления, контроллеры и т. д.) в виде повторно используемой библиотеки. Зависимости этого приложения Play могут быть транзитивными с использованием поддержки Maven/POM в sbt. Таким образом, если проект зависит от WebJars, эти зависимости могут быть транзитивно перенесены в другой проект.

Поскольку проекты Play на самом деле являются просто проектами sbt, просто посмотрите, как создавать повторно используемые библиотеки с помощью sbt: http://www.scala-sbt.org/0.13/docs/Publishing.html

person James Ward    schedule 21.07.2014