public static void main(String[] args) {
Exchange.conn();
}
public static void conn(){
boolean result = false;
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010);
ExchangeCredentials credentials = new WebCredentials(用户名,密码,域);
service.setCredentials(credentials);
try {
service.setUrl(new URI("https://192.168.1.124/EWS/Exchange.asmx"));
Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
System.out.println(service.getTimeout());
} catch (Exception e) {
e.printStackTrace();
}
}
总是报microsoft.exchange.webservices.data.ServiceLocalException: https://192.168.1.124/EWS/Exchange.asmx : Connection error
浏览器可以打开这个连接,但是需要输入用户密码,还有代码中的用户密码各是指什么?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
/**
serverName 接收邮件地址
user 用户信息
pwd 密码
path 邮件临时储存路径
max 每次接收邮件的最大数量
**/
public int receive(String serverName, String user, String pwd, String path, int max) throws Exception {
//新建ExchangeVersion.Exchange2007_SP1版本的Exchange服务
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
String[] userInfo = user.split("/");
//用户认证信息
ExchangeCredentials credentials = new WebCredentials(userInfo[1], pwd,userInfo[0]);
service.setCredentials(credentials);
//设置Exchange连接的服务器地址
service.setUrl(new URI(serverName));
//绑定邮箱
Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
//获取邮箱文件数量
int count = inbox.getTotalCount();
if(max > 0) count = count > max ? max : count;
//循环获取邮箱邮件
ItemView view = new ItemView(count);
FindItemsResults<Item> findResults = service.findItems(inbox.getId(), view);
for (Item item : findResults.getItems()) {
EmailMessage message = EmailMessage.bind(service, item.getId());
List<Attachment> attachs = message.getAttachments().getItems();
try{
if(message.getHasAttachments()){
for(Attachment f : attachs){
if(f instanceof FileAttachment){
//接收邮件到临时目录
File tempZip = new File(path,f.getName());
((FileAttachment)f).load(tempZip.getPath());
}
}
//删除邮件
message.delete(DeleteMode.HardDelete);
}
}catch(Exception err){
log.equals(err);
}
}
return count;
}