我试图从Eclipse Java EE自动部署一个Maven webapp到我的本地Tomcat服务器。我正在使用Windows XP。这是错误:tomcat-maven-plugin:服务器返回的HTTP响应代码:403
[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]
我想我知道这个错误的原因:
- 如果我运行在Eclipse中Tomcat服务器,127.0.0.1:8080是我的工作空间/目标。有任何经理文件夹和其余的类,所以它不起作用。可能的解决方案:将该文件夹和文件复制到我的项目中。
- 如果我在eclipse外部运行Tomcat服务器,127.0.0.1:8080是tomcat_location/webapps。它不起作用,因为Eclipse在我的工作区中创建了war文件,所以Tomcat无法找到它。可能的解决方案:配置maven-war-plugin将战争文件创建为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>
UPDATE: pvm14回答了这个问题。但之前您必须打开文件:localhost.server上的Tomcat v7.0服务器。这里是如何:
- 属性
- 点击开关的位置,使箭头指示3会出现文件。
- 打开文件
与经理桂角色FYI @chelder用户不应该被授予无论是管理者脚本或经理JMX的角色。 – Lucky 2014-06-23 07:09:38