刘圣杰

 

Openmeetings获取另外项目jsp中的用户名密码

建立PO,Member类,有username,userpassword属性。

public class PO {
    private String username;
    private String userpassword;

    getter.....
    setter.....
}

 

然后写一个login.jsp,里面就是简单的用户名密码,一个提交按钮

然后一个登录后的jsp页面HaveLogin.jsp。

在HaveLogin.jsp页面中处理,加入代码:

<%	Member mem=null;
	mem=(Member)session.getAttribute("member");
	DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
	//建立通过此对象建立所需的Document对象
	DocumentBuilder db = dbf.newDocumentBuilder();
	DOMImplementation domi = db.getDOMImplementation();
	//由Document取得Element对象,代表所要建构的XML文件
	Document d = domi.createDocument(null, "users", null);
	Element e = d.getDocumentElement();
	//建立XML数据节点的程序片段,其中分别指定了数据元素的名称:customer、customerid、customername、tel及email
	Element e_customer = d.createElementNS(null, "person");
	Element e_customerid = d.createElementNS(null, "userName");
	Element e_customername = d.createElementNS(null, "userpassword");
	//建立各元素节点的数据内容
	Node n_customerid = d.createTextNode(mem.getMname()) ;
	Node n_customername = d.createTextNode("admins");
	//将建立的Node对象依序加入稍早所建立的元素中
	e_customerid.appendChild(n_customerid);
	e_customername.appendChild(n_customername);
	//依序将包含数据节点的元素加到顶层元素中,来完成XML内容结构
	e_customer.appendChild(e_customerid);
	e_customer.appendChild(e_customername);
	
	e.appendChild(e_customer);
	
	//建立用以输出XML内容的Transformer对象
	TransformerFactory tf = TransformerFactory.newInstance();
	Transformer t = tf.newTransformer();
	//指定输出过程以UTF-8进行编码,以避免所产生的XML文件出现乱码
	t.setOutputProperty(OutputKeys.ENCODING, "utf-8");
	//以Document为参数,建立产生XML文件所需的数据来源DOMSource对象,其中包含了这个范例中加入的所有元素及节点与内容
	DOMSource doms = new DOMSource(d);
	File file = new File(request.getRealPath("/jsp/test.xml"));
	file.createNewFile();
	//XML文件最终输出的目的地
	StreamResult sr = new StreamResult(file);
	//建立XML文件
	t.transform(doms, sr);
	out.println("XML文件建立完成!");
	 %>

 这样就能产生用户名和密码的xml,放在jsp目录下,这个目录在一下的lzx文件中引用。

因为Openmeetings可以很容易的取出xml的文件,所以可以在登录框/src/base/auth/checkLoginData.lzx加一数据源:

<dataset name="dset" request="true" type="http" src="http://127.0.0.1:8888/611/jsp/test.xml"/>

连接到项目611中,其中的test.xml文件即为通过jsp产生的xml文件
然后在登录框内加入:

<customEdittext name="username" y="24" x="120" width="330" datapath="dset:/users[1]/person[1]/userName[1]/text()">

这样就能通过xml的节点取出相应的username的值,密码同理,这样Openmeetings就能获得参数,进而可以实现自动登录了。

今天到此。有空继续

 

 

 

posted on 2012-12-27 22:18  刘圣杰  阅读(1087)  评论(0编辑  收藏  举报

导航