Как я могу поделиться общими компонентами между веб-приложениями Java? - PullRequest
4 голосов
/ 28 июля 2010

Среда

  • IDE: Netbeans 6,9
  • Сервер приложений: Glassfish 3
  • Каркасы: Spring, Hibernate, Struts 2

Проблема

У меня 2 веб-приложения.Я хочу разделить ресурсы между ними обоими - то есть форма аутентификации jsp и другие активы (js - yui, jquery / images / css).Я добавлю больше веб-приложений, которым также потребуется доступ к этим общим компонентам.

В качестве крайней меры я создам еще один веб-проект, содержащий только общие ресурсы - включая их через http://common.mydomain.

* 1021.* Как кто-то еще достиг этого?Могу ли я создать веб-ресурс jar / war и включить его в оба приложения?

Я экспериментирую, поэтому обновлю вопрос с любым прогрессом.

Большое спасибо.

Ответы [ 3 ]

1 голос
/ 28 июля 2010

В eclipse вы должны создать проект утилиты и проект уха, содержащий проект утилиты и ваши текущие веб-приложения.Затем вы можете переместить общий код в служебный проект и развернуть ухо для Glassfish.

Общие ресурсы должны быть расположены через путь к классам.Это довольно просто с JSF 2

1 голос
/ 11 октября 2012

Netbeans имеет функцию для этого.Создайте новый проект только для ваших общих компонентов.Перечислите проект как зависимость от проектов, которым он нужен, и убедитесь, что оба проекта открыты в IDE во время процесса сборки.

Независимый от IDE способ (который я использую в своих собственных проектах.)
будет:

  1. использовать maven для управления вашими проектами
  2. встроить ваши общие компоненты в их собственные .jar
  3. настроить сервер локального хранилища (nexus,artifactory) сервер для размещения общего .jar
    (если вы единственный разработчик, вы можете обойти это с помощью mvn install)
  4. перечислить ваш новый jar как зависимость от проектов(войны), которые нуждаются в этом.
1 голос
/ 28 июля 2010

Поместите эти «общие» компоненты в отдельный модуль (или в несколько отдельных модулей) и создайте зависимость для этого модуля от других частей вашего приложения. (Я не уверен, как это называется в NetBeans, в IntelliJ IDEA это называется модулем, в Eclipse - это отдельный проект в той же рабочей области).

...