2012-09-12 73 views
2

我想就像這個例子https://stackoverflow.com/a/4144674/758661通過ANT

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錯誤部署到Tomcat:

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

我認爲這是因爲「/」已替換爲「%2F」(密碼和用戶名像在tomcat-users.xml中)

如何防止將「/」替換爲「%2F」?還是其他想法?謝謝。

回答

0

我解決這個問題。

在「服務器位置」中的Eclipse中右鍵單擊服務器 - >打開Tomcat服務器概述我必須選擇secons單選按鈕「使用Tomcat安裝」(默認情況下它設置爲「首先使用工作空間元數據」。

因爲在默認情況下,Tomcat啓動時不會在這種情況下,需要管理者應用至極。

1

替換不是一個問題,這是正常的參數被urlencoded。如果沒有編碼,服務器將無法收到它。

而「403」的意思是「禁止」。

我想這是因爲你有一個奇怪的URL。更換

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

通過

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

不幸的是,這並沒有解決我的問題。 – ForeverSmiling