Birt报表安详权限方案
从论坛的一篇文章(http://www.javaeye.com/topic/335078)得知,在BIRT VIEWER SERVLET内部也有认证接口代码,只是简朴的返回了true,没有做处理惩罚。BIRT VIEWER SERVLET是报表处理惩罚的进口,该接口假如返回flase,那么报表将不会显示,方针就是在该接口插手我们本身的逻辑实现,本阶段先实现简朴的安详认证,即在没有登录的环境下无法会见报表。
处理惩罚步调:
1.把birt viewer项目和现有项目整合在一起(为了让birt viewer项目能获取到现有项目标session)
2.修改BIRT VIEWER SERVLET类,该类源码在org.eclipse.birt.report.servlet.BirtEngineServlet下面,找到函数经行修改,赤色为新增部门
/**
* Local authentication.
*
* @param request
* incoming http request
* @param response
* http response
* @return
*/
protected boolean __authenticate( HttpServletRequest request,
HttpServletResponse response )
{
//报表权限,没有登录会见不了
if(request.getSession().getAttribute("user")==null)
{
return false;
}
return true;
}
3.将该类编译后放进BIRT包内里。