JasperReports服务器中的控制调度

时间:2012-03-20 06:28:42

标签: jasper-reports jasperserver

我想阻止普通用户安排报告。 只有管​​理员才有权安排报告。 可以使用JasperReports Server吗?

1 个答案:

答案 0 :(得分:3)

是的,这是可能的。

您应该修改 jasperserver\WEB-INF\actionModel-search.xml 文件。

您需要在此文件中找到 ScheduleAction 操作的定义,并添加 ROLE_ADMINISTRATOR 角色的条件:

<context name="resource_menu">
    <simpleAction labelKey="RM_BUTTON_RUN" action="invokeRedirectAction" actionArgs="RunResourceAction"
                  clientTest="canBeRun" className="up"/>
    <condition test="isSupportedDevice">
        <simpleAction labelKey="RM_BUTTON_RUN_IN_BACKGROUND" action="invokeRedirectAction" actionArgs="RunInBackgroundResourceAction"
                      clientTest="canBeRunInBackground" className="up"/>
            <condition test="checkAuthenticationRoles" testArgs="ROLE_ADMINISTRATOR">                         
                <simpleAction labelKey="RM_BUTTON_SCHEDULE_REPORT" action="invokeRedirectAction" actionArgs="ScheduleAction"
                              clientTest="canBeScheduled" className="up"/>
            </condition>          
        <simpleAction labelKey="RM_BUTTON_WIZARD" action="invokeRedirectAction" actionArgs="EditResourceAction"
                      clientTest="canResourceBeEdited" className="up"/>
    </condition>

我只是为<condition test="checkAuthenticationRoles" testArgs="ROLE_ADMINISTRATOR">操作添加ScheduleAction

之后,您应该重新启动应用程序服务器(Tomcat)。

相关问题