tomcat-maven-plugin: Сервер вернул код ответа HTTP: 403
Я пытаюсь автоматически развернуть веб-приложение Maven из Eclipse Java EE на моем локальном сервере Tomcat. Я использую Windows XP. Это ошибка:
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy (default-cli) on project practicaIW: Cannot invoke Tomcat manager: Server returned HTTP response code: 403 for URL: http://127.0.0.1:8080/manager/deploy?path=%2Fpractica-3&war= -> [Help 1]
Я думаю, что я знаю причину этой ошибки:
- Если я запускаю сервер Tomcat внутри eclipse, 127.0.0.1:8080 - это мое рабочее пространство / цель. На нем есть папка менеджера и остальные классы, поэтому она не работает. Возможное неудачное решение: скопируйте эту папку и файлы внутри моего проекта.
- Если я запускаю сервер Tomcat вне затмения, 127.0.0.1:8080 - это tomcat_location / webapps. Это не работает, потому что Eclipse создает файл war в моей рабочей области, поэтому Tomcat не может его найти. Возможное решение: настройте maven-war-plugin для создания файла war в 127.0.0.1:8080. Как я мог это сделать? Это лучший способ продолжить?
pom.xml выдержка:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<url>http://127.0.0.1:8080/manager</url>
<username>admin</username>
<password>password</password>
<server>TomcatServer</server>
<path>/practica-3</path>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
Извлечение tomcat-users.xml:
<tomcat-users>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="admin"/>
<role rolename="manager-script"/>
<user password="password" roles="admin,manager,manager-gui,manager-script" username="admin"/>
</tomcat-users>
ОБНОВЛЕНИЕ: pvm14 ответил на вопрос. Но ранее вам нужно открыть файл: Tomcat v7.0 Server по адресу localhost.server. Вот как:
- свойства
- При нажатии на местоположение коммутатора появится файл, обозначенный стрелкой 3.
- Открыть файл
1 ответ
На сервере Tomcat, который вы запускаете из Eclipse, консоль "Tomcat Manager" не будет доступна (localhost:8080/manager), если вы не настроите ее с помощью этой опции:
Это означает, что Tomcat, который вы запускаете из Eclipse, именно тот, который вы указали при определении сервера Tomcat в IDE. В противном случае Eclipse запускает сокращенную версию без менеджера в каталоге, расположенном внутри рабочей области:
{workspace_dir}\.metadata\.plugins\org.eclipse.wst.server.core\tmp0
Если у вас нет менеджера tomcat, доступного в экземпляре, который вы используете, tomcat-maven-plugin не сможет ничего развернуть
С наилучшими пожеланиями