1

私がここで間違っているかもしれないことを誰かが知っていますか?ユーザー名とパスワードをtomcat-user.xmlに追加しましたが、それでも「401Unauthorized」エラーが発生します。

String url = "http://localhost:9080/manager/list";
HttpPost httppost = new HttpPost(url);
httppost.setHeader("Authorization", "Basic " + userPass);

log.debug("executing request {}", httppost.getRequestLine());
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();

BufferedReader rd = new BufferedReader(new InputStreamReader(entity.getContent()));
String line;
StringBuffer buffer = new StringBuffer();
while ((line = rd.readLine()) != null) {
buffer.append(line);
buffer.append('\n');
}
rd.close();
4

1 に答える 1

1

答えは、Tomcat 5.5/6とTomcat7のどちらを使用しているかによって異なります。

Tomcat 7

次のURLを使用してリストにアクセスする必要があります。

http://localhost:9080/manager/text/list

ロールを持つユーザーでtomcat-user.xmlを構成する必要がありますmanager-script

Tomcat 5.5 / 6

次のURLを使用してリストにアクセスする必要があります。

http://localhost:9080/manager/list

ロールを持つユーザーでtomcat-user.xmlを構成する必要がありますmanager

アップデート

基本認証手順を正しく実行していない可能性があります。ユーザー名/パスはbase64でエンコードする必要がある場合があります。この質問で最も投票された回答を参照してください:HttpClientを使用したJavaでのHttp基本認証?

于 2012-04-17T16:40:33.407 に答える