मैं जावा एप्लिकेशन लिखने का प्रयास करता हूं जो ईमेल पढ़ने के लिए एक्सचेंज वेब सेवाओं तक पहुंचता है। इस प्रकार, मैं एक्सचेंज वेब सर्विसेज (EWS
) माइक्रोसॉफ्ट द्वारा प्रदान की गई जावा एपीआई का उपयोग करता हूं।जावा में एक्सचेंज वेब सेवा कनेक्शन के लिए एलडीएपी प्रमाणीकरण का उपयोग कैसे करें?
I already had several issues with it, और अंततः मुझे पता चला कि प्रमाणीकरण एलडीएपी का उपयोग करके किया जाना चाहिए। दुर्भाग्य से, मुझे यकीन नहीं है कि ऐसी चीज कैसे करें। क्या ईडब्ल्यूएस एपीआई एक्सचेंज सर्वर से कनेक्ट करते समय उपयोग की जाने वाली प्रमाणीकरण योजना को कॉन्फ़िगर करने की अनुमति देता है? यदि हां, तो इसे कैसे कॉन्फ़िगर करें?
इस कोड मैं कनेक्शन के लिए उपयोग है, लेकिन यह डिफ़ॉल्ट प्रमाणीकरण योजना है, यानी NTLM
उपयोग करता है:
String url = "https//my-server/EWS/exchange.asmx";
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.setTraceEnabled(true);
service.setCredentials(new WebCredentials("user", "password"));
service.setUrl(url.toURI());
Mailbox mailbox = new Mailbox("[email protected]");
FolderId folder = new FolderId(WellKnownFolderName.Inbox, mailbox);
ItemView view = new ItemView(10);
view.getOrderBy().add(ItemSchema.DateTimeReceived, SortDirection.Descending);
FindItemsResults<Item> items = service.findItems(folder, view);
मैंने इन निर्देशों का पालन किया और एनटीएलएम संशोधित किया और स्रोत से संकलित किया जैसा कि यहां वर्णित है और अभी भी वही त्रुटि संदेश प्राप्त हुए हैं। हम यहां जावामेल कार्यान्वयन का उपयोग करने पर बस गए, जिसने काम किया: http://stackoverflow.com/a/18043717/445131 –
यह कक्षा EwsJCIFSNTLMScheme (एपीआई 1.2) में एक आंतरिक कक्षा है। – oers