在使用华丹在线报表平台开发报表时,有时需要免登录直接展示报表,比如在门户网站中展示业务数据等。可以按如下方法实现:

1、在华丹WEB报表平台中注册一个角色,将需要免登录展现的报表授予该角色。

2、创建一个用户public,授予上述角色。

3、写一个JSP放到开发平台的根目录中,如myReport.jsp,在该JSP中向Session中注册public用户信息,并将访问转向到system.report.do(或system.pureRep.do、system.repChart.do、system.repTags.do)访问报表。

4、在门户中调用报表即可以通过myReport.jsp?subSys=demo&repID=1….的方式调用即可。

myReport.jsp代码如下:

<%@page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<%@include file="/charisma/includes/jspHeader.jsp"%>

<%@page import="charisma.web.util.WebKeys"%>

<%@page import="charisma.sys.bean.SysUserInfo"%>

<%

if(session.getAttribute(WebKeys.CUR_USER_INFO_KEY)==null)//向session中注册用户信息,模拟登录。

{

SysUserInfo userInfo=new SysUserInfo();

userInfo.setUserID("public");//在平台中注册一个public用户,将所有报表分配给他。

session.setAttribute(WebKeys.CUR_USER_INFO_KEY,userInfo);

}

getServletConfig().getServletContext().getRequestDispatcher("/system.report.do").forward(request,response);

%>