1
Javaクライアントからの共有ポイントリストにアクセスするためにJAX-WSを使用しています。私はntlm認証部分を解読することができません。それは私に403禁じられたerror.Butを与えている基本認証が有効になっているときに私は認証することができます。私のコードは以下の通りです。それ以前に誰かが働いたことはありますか?前もって感謝します。NTLM認証を使用してJavaのSharepointリストにアクセスする
public static void main(String[] args) {
try {
String userName = "INDIA\\arindam";
String password = "[email protected]";
String end = "http://www.sharepoint.com/_vti_bin/lists.asmx";
com.microsoft.schemas.sharepoint.soap.ListsSoap port = null;
com.microsoft.schemas.sharepoint.soap.Lists service = new Lists();
port = service.getListsSoap();
NtlmAuthenticator authenticator = new NtlmAuthenticator(userName, password);
Authenticator.setDefault(authenticator);
String listName = "Shared Documents";
String rowLimit = "150";
String viewName = "";
com.microsoft.schemas.sharepoint.soap.GetListItems.ViewFields viewFields = null;
com.microsoft.schemas.sharepoint.soap.GetListItems.Query query = null;
com.microsoft.schemas.sharepoint.soap.GetListItems.QueryOptions queryOptions = null;
String webID = "";
com.microsoft.schemas.sharepoint.soap.GetListItemsResponse.GetListItemsResult result = port.getListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, webID);
System.out.println(result.toString());
} catch (Exception ex) {
System.err.println(ex);
}
}
*
public class NtlmAuthenticator extends Authenticator {
private final String username;
private final char[] password;
com.microsoft.schemas.sharepoint.soap.ListsSoap port = null;
com.microsoft.schemas.sharepoint.soap.Lists service = new Lists();
public NtlmAuthenticator(final String username, final String password) {
super();
this.username = new String(username);
this.password = password.toCharArray();
}
@Override
public PasswordAuthentication getPasswordAuthentication() {
return (new PasswordAuthentication(username, password));
}
}