2

この例のように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」に置き換えないようにするにはどうすればよいですか? または他のアイデアはありますか?どうも。

4

2 に答える 2

1

置換は問題ではありません。パラメーターが urlencoded であることは正常です。エンコードされていない場合、サーバーはそれを受信できません。

そして「403」は「禁止」を意味します。

変なURLを持っているからだと思います。交換

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

task.setUrl("http://localhost:8080/manager");
于 2012-09-12T08:54:40.713 に答える
0

私はそれを解決します。

EclipseのTomcatサーバーの概要(サーバーを右クリック->開く)の「サーバーの場所」で、「Tomcatインストールを使用する」という秒のラジオボタンを選択する必要がありました(デフォルトでは、最初に「ワークスペースメタデータを使用する」に設定されています)。

デフォルトの場合、Tomcat はこの場合に必要なマネージャー アプリなしで起動するためです。

于 2012-09-12T13:24:54.953 に答える