Изменение структуры файла по умолчанию в приложении Java Struts
-
09-06-2019 - |
Вопрос
Я работал с расставаниями в течение некоторого времени, но для проекта, который я заканчиваю, меня попросили разделить шаблоны (файлы velocity .vm), configs (struts.xml, repistence.xml) от основного файла войны.
У меня есть все в структуре по умолчанию, как:
application |-- Мета-инф -- Some configs are here |-- Web-Inf -- others here | |-- classes | | |-- META-INF | | `-- mypackage | | `-- class-files | `-- lib |-- css `-- ткл -- Template dir to be relocated
И я, очевидно, не могу найти документацию о том, как настроить (вероятно, на struts.xml), куда идут мои шаблоны, и где будут файлы конфигурации.
Я думаю, что мне придется использовать конфигурации на сервере приложений (я использую Jetty 5.1.14).
Итак, какие -нибудь светильники о том, как его настроить?
Спасибо
Что ж, все в том, чтобы изменить шаблоны, это поместить шаблоны в доступную дизайнерскую область, поэтому любая необходимая модификация, дизайнер может загрузить их на свой компьютер, редактировать и загрузить его снова. Я думаю, что это распространенный сценарий. Итак, наверное, я что -то упускаю в своем исследовании. Может быть, я сосредотачиваюсь на его настройке в неправильном месте ... какие -нибудь мысли?
Решение
Если я правильно понял ваш вопрос о файлах конфигурации стойки, они указаны в web.xml. Найдите конфигурацию конфигурации Struts Servlet. Значение PARAM может быть списком разделенного запятой списка файлов XML для загрузки. Например:
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>
WEB-INF/config/struts-config.xml,
WEB-INF/config/struts-config-stuff.xml,
WEB-INF/config/struts-config-good.xml,
WEB-INF/config/struts-config-bad.xml,
WEB-INF/config/struts-config-ugly.xml
</param-value>
</init-param>
...
</servlet>
Видеть это Руководство по стойке до 5.3.2. И да, это также относится к 2.x.
Другие советы
Для Постоянство.xml, В частности, вы можете поместить блок настойчивости в отдельную банку, которую вы можете развернуть отдельно от своей войны в веб -приложениях или оба в архиве уха, в зависимости от того, что поддерживает ваш сервер приложений. Например, руководство JBoss описывает это как Развернуть ухо с ejb3 jar.
Для Struts-config.xml Я ожидаю, что вам придется переопределить код стойки, который загружает его, если вы хотите использовать нестандартное место.
Я не знаю о шаблонах скорости.
В целом, веб -приложения загружают ресурсы только из войны по соображениям безопасности. Есть и другие методы, которые вы можете использовать, но вам может быть проще попробовать Заглечки, который, кажется, является структурой, предназначенной для того, чтобы вы загрузили ресурсы из отдельной банки.
Вам нужно заглянуть в velocity.properties
Файл в вашей папке Web_Inf.Imho Это здесь, где вам нужно изменить шаблон корень Изменение собственности file.resource.loader.path
.
Надеюсь, это поможет, Петр