JSP传递参数问题

许多客户在通过JSP传递参数的时候会遇到这么一个问题:传递到报表中的参数确实可以接收到,但是如果报表有参数模版,在点击”查询”按钮之后,传递过来的参数就变为空了。如何才能使参数长久的保存呢?

下面我们一起来看一下如何实现这一功能。

首先在发布报表的showReport.jsp中定义两个参数arg3arg4,并为其赋值”111“和”222“如下图:

arg3arg4这两个参数的值拼成串的形式赋给argtest.

然后在报表中配置两个同名的参数arg3arg4

然后在报填报表单元格中写:=@arg3=@arg4

在页面上浏览报表时展示如下:

可以发现这两个参数已经传递过来了,但是当输入参数”1“,点击”查询”之后,这两个参数已经变成了null

这是因为点击”查询”按钮之后,调用了一个润干内置js函数:_submit( form1 ),那么也就是说不会执行上面定义那两个参数的代码了,这样一来就导致arg3arg4的值变成了null.

这时候,如果我们在JSP中显示参数模版的那段代码中加入:hiddenParams=”<%=paramTest.toString()%>”

那么,无论你点击多少次”查询”按钮,JSP中传递过来的参数是依然存在的。效果如下图:

hiddenParams属性说明:保留报表中隐藏的参数。