Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как развернуть приложение на Tomcat? Как развернуть проект war на Tomcat? 
V
    Опции темы
Molodec
  Дата 21.12.2010, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: 1
Всего: 1



Доброго времени суток!
Пожалуйста, помогите с разворачиванием приложение на сервере Apache Tomcat. 
Вот такая ситуация, установил Alfresco, с ней установился  Apache Tomcat который разворачивает её проекты. Как развернуть на этом же  Apache Tomcat вместе с приложениями Alfresco и своё приложение war. Заранее спасибо. 

PM MAIL   Вверх
nc30
Дата 21.12.2010, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Интересующийся :)
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 24.6.2010
Где: Санкт-Петербург

Репутация: 2
Всего: 8



Tomcat Web Application Deployment

Простой способ в двух словах:
1. Скопировать war в каталог <TOMCAT_HOME>\webapps
2. Если Tomcat был запущен, то он сам развернет приложение из war-ника через несколько секунд (появится одноименный каталог). Либо запускаете Tomcat, и он разворачивает war.
3. Все, можно запускать приложение в браузере.

Деплоить/андеплоить можно и через Tomcat Manager. Это несколько сложнее, но может быть более гибко.

Удаление web-приложения вручную (чтоб уже наверняка):
1. shutdown.bat
2. В <TOMCAT_HOME>\webapps удалить war и одноименный каталог.
3. В <TOMCAT_HOME>\conf\Catalina\localhost удалить одноименный xml.
4. В <TOMCAT_HOME>\work\Catalina\localhost удалить одноименный каталог. 
Последний шаг необязателен: удаляются временные файлы которые создал Tomcat.

PM MAIL   Вверх
Molodec
Дата 21.12.2010, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: 1
Всего: 1



nc30, спасибо, это как раз то, что нужно! Простой способ уже испытал - замечательно работает.
Но все же хотелось бы попробовать через Tomcat Manager, как Вы и говорили, он более гибкий, а это как раз то, что нужно. Со входом(авторизацией) в Tomcat я разобрался. Но появились новые, несколько, маленьких, на мой взгляд, проблем, с которыми тем не менее мне не удаётся справится. Пытаюсь Деплоить/андеплоить. 

При попытке деплоить проект по такому адресу:
file://localhost/C:/Alfresco/tomcat/webapps/super.war
Такой командой:
http://localhost:8080/manager/deploy?war=jar:file://localhost/C:/Alfresco/tomcat/webapps/super.war!/
Tomcat выдаёт ошибку:
FAIL - Invalid context path null was specified

При попытке андеплоить проект по такому адресу:
file://localhost/C:/Alfresco/tomcat/webapps/super.war
Такой командой:
http://localhost:8080/manager/undeploy?path=file://localhost/C:/Alfresco/tomcat/webapps/super.war/
Tomcat выдаёт ошибку:
FAIL - No context exists for path file://localhost/C:/Alfresco/tomcat/webapps/super.war/

Данный проект самостоятельно деплоить, может дело в том, что он уже запущен, или же может я путь неправильно написал?
 


Это сообщение отредактировал(а) Molodec - 21.12.2010, 16:40
PM MAIL   Вверх
nc30
Дата 22.12.2010, 05:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Интересующийся :)
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 24.6.2010
Где: Санкт-Петербург

Репутация: 2
Всего: 8



Molodec, для деплоя через админку (Tomcat Manager) нужно сделать следующее (на всякий случай объясню по шагам с самого начала):

1. Запустить Tomcat.
2. Перейти на его страницу: http://localhost:8080/
3. Перейти в админку (меню Administration -> Tomcat Manager)
4. Залогиниться. Для этого в файле <TOMCAT_HOME>\conf\tomcat-users.xml должна быть прописана роль manager'а, т. е. файл будет иметь примерно такой вид (комментарии убрал):
Код

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager"/>
  <user username="root" password="root" roles="manager"/>
</tomcat-users>

5. На странице Tomcat Web Application Manager вы увидите несколько блоков, в т. ч.:
Manager - очень рекомендую покликать по ссылкам и почитать help самостоятельно;
Applications - где указана информация о развернутых приложениях (в т. ч. которые Tomcat разворачивает по умолчанию);
Deploy - то что нам нужно: WAR file to deploy -> Select WAR file to upload (ищите свой war-ник) -> Deploy
После этого Tomcat самостоятельно копирует war к себе в <TOMCAT_HOME>\webapps и разворачивает его (указал в предыдущем посте). Web-приложение появляется в списке Applications и вы можете запустить его, кликнув по ссылке с его названием.
Прим.: если ваш исходный war меняется, то придется снова сделать андеплой/деплой.

Что касается путей, да, вы их прописываете неверно. Для запуска web-приложения вы должны указывать путь, который прописан в файле дескриптора контекста (context descriptor): <дом_каталог_вашего_приложения>\web\META-INF\context.xml. Файл должен выглядеть примерно так:
Код

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/super">
  <!-- сведения о ресурсах и т. п. --> 
</Context>

Тогда для запуска вы должны набрать в браузере (при запущенном Томкэте и задеплоенном приложении, естественно): http://localhost:8080/super/

Подробную информацию вы найдете на офсайте Apache Tomcat, например по шестой версии: Apache Tomcat 6.0 Web Application Deployment.

Если не очень уверенно чувствуете себя в принципах разработки web-приложений, то можно почитать какую-нибудь книжку по этой теме, например Буди Курнявана.

Это сообщение отредактировал(а) nc30 - 22.12.2010, 06:13
PM MAIL   Вверх
Molodec
  Дата 22.12.2010, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: 1
Всего: 1



Всё отлично! Спасибо за подробную инструкцию. 
У меня ещё один маленький вопрос - Вы никогда не сталкивались с тем, что один проект нормально деплоится, а другой не полностью разворачивается и не работает?
Вот как у меня:
Код

HTTP Status 404 - /proj/
type Status report
message /proj/
description The requested resource (/proj/) is not available.
Apache Tomcat/6.0.26

PM MAIL   Вверх
nc30
Дата 22.12.2010, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Интересующийся :)
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 24.6.2010
Где: Санкт-Петербург

Репутация: 2
Всего: 8



Эта ошибка говорит о том, Tomcat не может найти одну из страниц проекта. В данном случае - стартовую.

У web-приложения есть т. н. дескриптор развертывания (deployment descriptor): <дом_каталог_вашего_приложения>\web\WEB-INF\web.xml. Из него Tomcat получает информацию о названиях сервлетов, соответствующих им классах, маппинге URL-servlet, стартовой странице и т. п.

Что касается конкретно вашего случая. Допустим, стартовая страница вашего проекта называется index.jsp. Тогда web.xml должен содержать примерно следующее:
Код

...
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
...

Проверьте наличие этой страницы в <дом_каталог_вашего_приложения>\web. Она должна там быть smile

Если для вас эти знания совсем новые, то, полагаю, в этом случае не обойтись без более глубокого изучения технологии сервлетов.

Удачи smile

Это сообщение отредактировал(а) nc30 - 22.12.2010, 13:04
PM MAIL   Вверх
Molodec
  Дата 22.12.2010, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: 1
Всего: 1



Посмотрел, там нет упоминаний о домашней странице в web.xml.
Добавил, по Вашему примеру... Все равно не работает. Но я больше чем уверен, что это я что-то не так сделал. 
Маленький вопрос: у меня проект состоит из подпроектов. Один из которых и есть war. Как в таком случае деплоить? Выбрать этот war и он сам все зависимости что надо возьмёт, или как то иначе?
PM MAIL   Вверх
nc30
Дата 23.12.2010, 06:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Интересующийся :)
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 24.6.2010
Где: Санкт-Петербург

Репутация: 2
Всего: 8



Molodec, у меня, к сожалению, весьма "шапочные" представления о разработке web-приложений на Java. Чем смог — помог, в остальном — не обессудьте smile Надеюсь, какие-то специфические вопросы вам помогут решить более опытные коллеги по форуму.
PM MAIL   Вверх
Molodec
Дата 23.12.2010, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: 1
Всего: 1



Все равно, Вы мне отлично помогли. Спасибо.  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1111 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.