Hi,<br />
I am facing problem of session management in birt viewer.<br />
<br />
<strong class='bbc'>Configurations</strong><br />
<br />
1) Birt 4.2.0<br />
2) apache-tomcat-7.0.29 (Session time out in web.xml is default 30 minutes)<br />
3) Integrated Birt 4.2 with Spring 3.0 by using scripted data source.<br />
4) Using JSP to pass parameters & display report.<br />
5) Added four reports in one JSP having select option to select one of them. (I believe there is separate session created for every report)<br />
<br />
6) JSP code :<br />
<birt:parameterPage id="user" name="user" <br />
target="userReportFrame" <br />
reportDesign="Reports/user_report.rptdesign" <br />
isCustom="true" <br />
showTitle="true" <br />
showToolBar="true" <br />
showNavigationBar="true" <br />
frameborder="true" <br />
forceOverwriteDocument="true" <br />
pattern="frameset"<br />
> <br />
<birt:paramDef id="157" name="userIds" value="1"> </birt:paramDef> <br />
<input type="submit" class="button" onclick="return setUserValues();" value="Generate Report"/><br />
</birt:parameterPage><br />
<br />
7) In open script of scripted data set I have written :<br />
importPackage( Packages.java.util );<br />
importPackage( Packages.java.lang );<br />
importPackage(Packages.org.springframework.context);<br />
importPackage(Packages.org.springframework.web.context.support );<br />
<br />
//ServletContext<br />
var sc = reportContext.getHttpServletRequest().getSession().getServletContext();<br />
//ApplicationContext <br />
var spring = WebApplicationContextUtils.getWebApplicationContext(sc);<br />
reportService = spring.getBean("userReportServiceImpl");<br />
userList=reportService.getUsers(params["userIds "]);<br />
iter=userList.iterator();<br />
<br />
8) In fetch script of scripted data set I have written :<br />
<br />
if( iter.hasNext() ){<br />
user = iter.next();<br />
row["userId"] = user.getUserId(); <br />
row["name"] = user.getName(); <br />
row["status"] = firstChar + remainChar;<br />
row["createdBy"] = user.getCreatedBy(); <br />
return true;<br />
}else{<br />
return false;<br />
}<br />
This generates the reports.<br />
<br />
? <span style='font-size: 14px;'><strong class='bbc'>Problem</strong></span>: -<br />
1) After 10 to 20 minutes it shows ?The viewing session is not available or has expired?.<br />
<br />
?<span style='font-size: 14px;'><strong class='bbc'> Solutions tried: -</strong></span><br />
I have tried some solutions (configurations) available in birt exchange forum but with no success. For example -<br />
a) I have modified viewer.properties file to set viewer.session.timeout = 0; <br />

I have modified viewer.properties file to set viewer.session.timeout = 43200;(12 hrs)<br />
c) viewer.session.maximumSessionCount=0;<br />
d) If I set ?viewer.session.timeout? for minimum values like 5 minutes are reflecting from this file but If I configure it to ?0? OR ?MAX ?(More than 3 hrs) then ?viewing session expired? exception comes invariably.<br />
<br />
Can any one please help me to solve this problem?<br />
<br />
Thanks in Advance.