有朋友做过connections的开发吗?用api获取connections某些资源的时候需要认证之后才能获取,我在Redbook中找到了下面这段代码来测试
Abdera abdera = new Abdera();
AbderaClient client = new AbderaClient(abdera);
AbderaClient.registerTrustManager();
client.addCredentials("http://connections.servername.com", null, null, new UsernamePasswordCredentials("wasadmin","passw0rd"));
ClientResponse resp = client.get("http://connections.servername.com/profiles/admin/atom/profileService.do");
Document service_doc = resp.getDocument();
Service service = service_doc.getRoot();
Collection collection = service.getCollection("Profiles Administration Workspace", "All User Profiles");
String coll_uri = collection.getResolvedHref().toASCIIString() + "?email=" + emailAddress;
resp = client.get(coll_uri);
switch(resp.getType()) {
case SUCCESS:
Document doc = resp.getDocument();
doc.writeTo(System.out);
break;
default:
System.out.println("Error: " + resp.getStatusText());
}
但是运行之后认证不成功,会报异常
异常信息:
2012-9-18 7:22:58 org.apache.commons.httpclient.auth.AuthChallengeProcessor selectAuthScheme
INFO: basic authentication scheme selected
2012-9-18 7:22:58 org.apache.commons.httpclient.HttpMethodDirector processWWWAuthChallenge
INFO: No credentials available for BASIC 'lotus-connections'@connections.servername.com:9444
Exception in thread "main" org.apache.abdera.parser.ParseException: org.apache.abdera.parser.ParseException: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
at javax.xml.stream.SerializableLocation@6a966a96
at org.apache.abdera.protocol.client.AbstractClientResponse.getDocument(AbstractClientResponse.java:129)
at org.apache.abdera.protocol.client.AbstractClientResponse.getDocument(AbstractClientResponse.java:89)
at org.apache.abdera.protocol.client.AbstractClientResponse.getDocument(AbstractClientResponse.java:71)
at com.gkhb.conn.AbderaTest.main(AbderaTest.java:38)
Caused by: org.apache.abdera.parser.ParseException: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
at javax.xml.stream.SerializableLocation@6a966a96
at org.apache.abdera.parser.stax.FOMBuilder.next(FOMBuilder.java:244)
at org.apache.abdera.parser.stax.FOMBuilder.getFomDocument(FOMBuilder.java:317)
at org.apache.abdera.parser.stax.FOMParser.getDocument(FOMParser.java:79)
at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:191)
at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:143)
at org.apache.abdera.protocol.client.AbstractClientResponse.getDocument(AbstractClientResponse.java:111)
... 3 more
Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
at javax.xml.stream.SerializableLocation@6a966a96
at com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:686)
at com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2134)
at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2040)
at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069)
at org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225)
at org.apache.abdera.parser.stax.FOMBuilder.getNextElementToParse(FOMBuilder.java:149)
at org.apache.abdera.parser.stax.FOMBuilder.next(FOMBuilder.java:174)
... 8 more
请高手赐教!谢谢!