由ANT部署到Tomcat

时间:2012-09-12 08:45:19

标签: java tomcat deployment ant

我正在尝试部署WAR,就像在此示例https://stackoverflow.com/a/4144674/758661

中一样
DeployTask task = new DeployTask();
  task.setUrl("http://localhost:8080/manager/text");
  task.setUsername("tomcat");
  task.setPassword("s3cret");
  task.setPath("/updater");
  task.setWar(warFile.getAbsolutePath());
  task.execute();

但得到403错误:

Server returned HTTP response code: 403 for URL: 
http://localhost:8080/manager/text/deploy?path=%2Fupdater

我认为这是因为“/”已被替换为“%2F”(密码和用户名与tomcat-users.xml类似)

如何防止将“/”替换为“%2F”?还是其他任何想法? THX。

2 个答案:

答案 0 :(得分:1)

替换不是问题,参数被urlencoded是正常的。如果未编码,服务器将无法接收它。

“403”表示“禁止”。

我想这是因为你有一个奇怪的网址。替换

task.setUrl("http://localhost:8080/manager/text");

通过

task.setUrl("http://localhost:8080/manager");

答案 1 :(得分:0)

我解决了。

在Eclipse中的Tomcat服务器概述(右键单击服务器 - >打开)“服务器位置”中我必须选择secons单选按钮“使用Tomcat安装”(默认设置为“使用工作空间”)元数据”。

因为在默认情况下,Tomcat在没有这种情况下需要的管理器应用程序的情况下启动。