долгое время слушатель, впервые звонящий сюда.
Мы находимся в процессе перехода от BEA WebLogic 10 к GlassFish v3.Мы успешно перевели массивный проект на GlassFish, и все работает, но теперь мы планируем на будущее.
В частности, мы используем MyEclipse 8.5 с одним проектом Enterprise Application (DCMHub), который создает файл EAR, и один проект веб-приложения (DCMWeb), который входит в EAR.
Однако DCMWeb на самом деле представляет собой целую кучу связанных приложений, сгруппированных в одну огромную кучу jsps, файлы классов и банки.То, что мы хотели бы сделать, это разбить их на логические единицы.Например, вместо одного веб-приложения (DCMWeb) нам бы хотелось иметь несколько, скажем, DCMWeb_A, DCMWeb_B и DCMWeb_C, а также некоторые веб-службы (DCMWebService_A, DCMWebService_B) и так далее.(Очевидно, что мы не будем использовать эти конкретные имена; я просто называю их так, чтобы было проще задать вопрос.)
Теперь вот немного сложнее.Все эти веб-приложения и веб-службы будут использовать некоторые общие функции.Например, нам нужен единый вход, поэтому концепция пользователя, аутентификации и разрешений должна быть одинаковой.Точно так же мы хотим поделиться определенными классами, такими как, например, в каком отделе находится пользователь, или в каком Office он работает и т. Д.
Если бы это было просто старое Java-приложение, я мог бы создать несколько jar-файловдля презентации, например, DCMWeb_A, DCMWeb_B, DCMWeb_C, DCMWebService_A, DCMWebService_B, а также некоторые дополнительные jar для общих классов и бизнес-логики, например CommonClasses.jar, UserAndDeskLogic.jar и т. д.
Но это * не обычное старое Java-приложение.Это корпоративное приложение, и я хотел бы структурировать его так, чтобы: а) нам было легко сделать переход от уродливого проекта к красивому проекту простыми шагами, не нарушая при этом ничего важного, и б) что-то, что в конечном итоге приведет кМы полностью совместимы с «правильным» способом ведения дел в Java EE 6, чтобы мы могли воспользоваться всеми последними вкусностями из Java, GlassFish и MyEclipse, когда они станут доступны.
Прямо сейчас, вотгрубая структура того, что мы получили в MyEclpse 8.5:
DCMHub (корпоративное приложение)
META-INF
application.xml
MANIFEST.MF
DCMWeb (Веб-приложение)
src (все исходные файлы java)
WebContent
css (все наши файлы стилей)
изображения (все наши .jpgs, .gifs и т. Д.)
include (всенаши фрагменты jsp)
javascript (все файлы .js)
META-INF
MANIFEST.MF
secure (все jsps, для просмотра которых требуется аутентификация)
WEB-INF
классы
lib
tlds
applicationContext.xml
dcmweb-servlet.xml
face-config.xml
log4j.properties
log4j.xml
oscache.properties
sun-jaxws.xml
sun-web.xml
web.xml
xmlhttp
login.jsp (наша страница входа пользователя без аутентификации)
Теперь, очевидно, одна из вещеймы думаем об использовании для инкапсуляции некоторой бизнес-логики использования EJB 3.Но как мне их представить?Мои предыдущие попытки провалились.Либо я не могу заставить MyEclipse развернуть их как часть EAR, либо чаще я не могу заставить проект веб-приложения «видеть» классы в проекте EJB.(Хотя я могу использовать для них Goto-Definition, как ни странно, но MyEclipse все равно помечает это как ошибку.)
Извините за очень скучный вопрос, но что является лучшимспособ организовать это приложение так, чтобы мы могли двигаться вперед, но не ломать то, что у нас сейчас работает, как мы это делаем?
Большое спасибо!
Jeff G
P.S. Мне удалось загрузить свой EJB и мой проект MyEclipse для ссылки на него, так что эта часть решена. Но я все еще задаюсь большим вопросом: а именно, как лучше двигаться вперед?