Domino中使用Java访问Webservice(一)
在Lotus Designer开发工具中可以使用Java编写Webservice以及访问Webservice。这里只介绍一下如何访问Websercice。
所用到的java知识就是URL、URLConnection、HttpURLConnection三个对象,本站很多博客中有详细介绍它们的使用,我这里就不多说了。下面介绍如何访问Webservice:
首先在Domino中发布一简单的Webservice,可以从IBM官网文章中找到学习的例子,如下在Designer中使用Java编写简单Webservice(这里不详细介绍如何创建/发布Websercive):DatabaseInfo 提供一接口getUserRolesArray,通过NotesID返回其拥有的所有角色名称。
import lotus.domino.*;import lotus.domino.types.*;import java.util.Vector;public class DatabaseInfo { private Session session; private AgentContext agentContext; private Database db; public DatabaseInfo () throws Exception { session = WebServiceBase.getCurrentSession(); agentContext = session.getAgentContext(); db = agentContext.getCurrentDatabase(); } public String[] getUserRolesArray (String userName) throws Exception { Document doc = agentContext.getDocumentContext(); Vector v = getRoles(userName);return (String[])v.toArray(new String[1]); } //获取账号拥有的角色名称 private Vector getRoles (String userName) throws Exception {ACL acl = db.getACL();ACLEntry entry = acl.getEntry(userName);if (entry == null) {return new Vector();} else {return entry.getRoles();} }}