Java WebstartアプリケーションでJerseyとJAX-RSを使用してレストサービスに接続しています。ユーザがWebstartアプリケーションを使用してパスワードを変更すると、新しいパスワードで新しいHttpBasicAuthFilter
を使用してWebTarget
をリセットします...ただし、新しいパスワードは使用されません。私はjavaws
の代わりにjava
を使ってJava Webstartの外で同じコードを実行しました。うまくいきます。ここでは、問題のコードです:java webstartで実行しているときにjax-rsで新しいパスワードを設定するには?
public WebTarget getWebTarget(String username, String password) {
Client client = ClientBuilder.newBuilder().sslContext(SSLContext.getDefault()).build();
client.register(new HttpBasicAuthFilter(username, password));
WebTarget targetBase = client.target("localhost");
return targetBase;
}
上記のパスワードがWebTarget
がrequest().get()
のようなものと一緒に使用されたときに使用される基礎となるパスワードは変更されません。私はjavaws
の代わりにjava
で起動するとコードが動作することを知っています...それは動作します!だから、問題は、パスワードをキャッシュするように見えるJava Webstartにあります。
WebTarget
を同じアドレス/ホストに別のパスワードと同じユーザー名で取得するにはどうすればよいですか?