实现功能:如何通过地址取得JSF的运行结果,即AJAX的服务器端程序,客户端可根据自己的爱好进行选择
1、加入 shale-remoting.jar
2、定义XML输出Bean:
public class AjaxCommonImpl {
public void pageContext() throws IOException {
FacesContext context = FacesContext.getCurrentInstance();
// temp fix until shale-remoting allows the no-cache setting
HttpServletResponse response = (HttpServletResponse) context
.getExternalContext().getResponse();
response.setHeader("Pragma", "No-Cache");
response.setHeader("Cache-Control", "no-cache,no-store,max-age=0");
response.setDateHeader("Expires", 1);
response.setCharacterEncoding("UTF-8");
// Acquire a response containing these results
ResponseWriter out = factory.getResponseWriter(context, "text/html");
out.startElement("html", treePanel);
out.write("/n");
out.startElement("head", treePanel);
out.write("/n");
this.importResouse(treePanel, out);
out.endElement("head");
out.write("/n");
out.startElement("body", treePanel);
out.write("/n");
out.endElement("body");
out.write("/n");
out.endElement("html");
}
3、注册JSF实体
<managed-bean>
<managed-bean-name>complibtreePanel</managed-bean-name>
<managed-bean-class>
com.jl.complib.treepanel.ajax.AjaxCommonImpl</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
4、调用地址:
http://localhost:8080/web/faces/dynamic/complibtreePanel/pageContext
解:http://localhost:8080/项目名/faces/dynamic/JSF实体Bean/方法名
注:以上内容来自网络,本人不承担任何连带责任
文章转自:http://blog.youkuaiyun.com/bjsq/archive/2006/08/14/1061246.aspx