`
kanpiaoxue
  • 浏览: 1782027 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

birt session 过期问题,跨域问题

    博客分类:
  • birt
 
阅读更多

The viewing session is not available or has expired

 

最近研究birt的使用,发现birt不支持集群。

所以我就另外搭建了一个tomcat,做专门的birt报表服务器。那么我就需要把它继承在现有的web程序中。用的是iframe。

发现,还是有问题,总是报错“The viewing session is not available or has expired”。

搞了半天,查了半天的资料。发现没有好的办法。老外也遇到这个问题,也在惆怅。

我试了IE的设置,找到一个勉强可以接受的方法来解决。

方法如下:

IE - Intetnet 选项 - 隐私 - 设置:这里有个拉动条,可以设置IE的cookie。将它调到“低”或者“最低”,可以达到解决问题的目的。

不过,这个方法我认为不好。你不能让每个用你的birt程序的人都去修改IE浏览器吧?!所以,也希望看见blog的朋友要是解决过这类的问题,说一下你们解决的方法。还有,谁尝试过birt的集群,也希望能给我一些帮助。谢谢

 

------------------------------------ 2012-01-10 [解决如下] -------------

birt the viewing session is not avaliable or has expired

问题描述:

http://11.23.26.3:8084/biReport/frameset?__report=VIP_kefu.rptdesign&__masterpage=true&__format=html&__parameterpage=true&__toolbar=true&__showtitle=false

我采用上面的url,在一个项目中访问另一个项目biReport中的birt报表,发生错误:

birt the viewing session is not avaliable or has expired

 

我在google的很多地方,都没有找到解决的方案。最终,在 http://www.birt-exchange.org/org/forum/index.php/topic/17735-the-viewing-session-is-not-available-or-has-expired-again/page__s__e25ec58943536503b7b10f91ccd1e87e 里面找到一个方案,解决了这个问题。原文描述如下:

Posted 23 December 2010 - 06:25 AM

Hello,

Today I encountered the same "The viewing session is not available or has expired." message again. Some months ago I managed to find a solution (see this post). 

This time the issue was a bit different: it only happened when the reports were accessed from IE, but not from Firefox and only for some of them. Looking at the differences I saw that for some of the reports the URL included the hostname and for the others the IP address of the Tomcat server. The ones that were failing to be displayed were the ones accessed by IP. 

So you could check how you are accessing the reports and how the URL is specified. In my case using the hostname of the machine hosting the Tomcat did the trick.

Regards,
Mudor 
所以,我修改了原有的IP地址访问,把IP地址修改为了hostname,就可以正常访问,不在报session过期的错误。
如下:
http://bi2.query.com:8084/biReport/frameset?__report=VIP_kefu.rptdesign&__masterpage=true&__format=html&__parameterpage=true&__toolbar=true&__showtitle=false

 

呵呵,困扰了很久的问题,终于得到解决。爽啊!(备注:这个问题已经被官网列为BUG,但是一直没有修复,很奇怪。必须用域名,而不能用IP)

 

 

分享到:
评论

相关推荐

    解决springboot实现跨域session共享问题

    然而,随着Web服务的复杂性和交互性增加,跨域资源共享(CORS)和会话(Session)共享成为开发者需要面对的重要问题。本文将详细讲解如何在Spring Boot应用中解决跨域session共享的问题,并探讨防止SQL注入的相关...

    iframe 跨域访问session

    然而,当涉及到跨域时,`iframe` 遇到的问题之一就是无法正常访问父页面或被嵌入页面的`session`。这是因为浏览器的同源策略(Same-Origin Policy)限制了不同源之间的交互,包括`session`和`cookie`。 同源策略是...

    处理session跨域几种方案

    处理Session跨域问题通常涉及到多个网站或应用之间共享用户身份验证信息。Session是Web应用程序用来存储用户特定数据的一种机制,通常存储在服务器端,而Session ID通过Cookie在客户端与服务器之间传递。当用户在...

    java web session跨域共享(redis)

    Java Web中的Session跨域共享问题通常出现在分布式系统或者微服务架构中,多个Web服务器需要共享用户的登录状态。在传统的单体应用中,Session是存储在单一服务器上的,但随着技术的发展,应用程序往往被拆分为多个...

    ThinkPHP框架实现session跨域问题的解决方法

    ThinkPHP框架实现session跨域问题的解决方法主要涉及到了两个方面:其一,是PHP自身处理session的方式,以及如何在ThinkPHP框架下解决session的跨域问题;其二,是根据服务器配置文件的有无,给出不同的解决办法,...

    Spring Boot Redis Session 共享(Ajax 跨域)

    本教程将详细讲解如何在Spring Boot项目中利用Redis来存储和共享Session,并解决Ajax跨域问题。 首先,我们需要理解Spring Boot中的Session管理。默认情况下,Spring Boot使用内存中的HttpSession来存储用户会话...

    基于Cookie的Session跨域.zip

    本项目"基于Cookie的Session跨域"则关注如何在分布式环境中解决Session的共享问题,通过Spring和Spring MVC框架来实现这一目标。 首先,我们来了解一下Cookie和Session的基本概念。Cookie是由服务器端发送到客户端...

    跨域共享session (实现http跳转https 共享session)

    但是,为了提供更好的用户体验,特别是在单点登录(Single Sign-On, SSO)场景下,跨域共享session变得非常重要。 **一、跨域共享session原理** 1. **JSONP(JSON with Padding)**:JSONP是一种早期的跨域解决方案...

    【ASP.NET编程知识】iframe跨域与session失效问题的解决办法.docx

    ASP.NET 跨域与 Session 失效问题的解决办法 在 ASP.NET 开发中,跨域和 Session 失效问题是一个常见的问题,特别是在使用 iframe 嵌入远程应用时。今天,我们来讨论这个问题的解决办法。 什么是跨域和 Session ...

    iframe跨域与session失效问题的解决办法

    何为跨域跨域session/cookie? 也就是第三方session/cookie。第一方session/cookie指的是访客当前访问的网站给访客的浏览器设置的seesion /cookie, 会被存储在访客的计算机上。第三方session/cookie指的是当前访问的...

    session跨域的共享--更改配置

    在IT领域,尤其是在Web开发中,跨域问题一直是一个常见的挑战。当涉及到用户会话(session)管理时,跨域共享session的能力对于构建统一的用户体验至关重要。本文将深入探讨如何通过更改配置文件来实现session的跨域...

    iframe跨域访问时session丢失

    NULL 博文链接:https://thoreau.iteye.com/blog/745100

    express如何解决ajax跨域访问session失效问题详解

    本文将详细探讨如何解决Express中ajax跨域访问时session失效的问题。 首先,我们需要理解为何在跨域请求中session会失效。在HTTP协议中,由于同源策略的限制,浏览器不会在跨域请求中发送cookies,而session通常是...

    Session跨域共享demo

    针对这一问题,我们可以利用特定的技术实现Session跨域共享,使得用户在访问多个相关联的二级域名时,依然能享受到无缝的体验。 本示例"Session跨域共享demo"是基于ASP.NET框架,适用于高版本的开发环境,如Visual ...

    解决前后端分离 vue+springboot 跨域 session+cookie失效问题

    在前后端分离的架构中,Vue.js作为前端框架与Spring Boot作为后端服务进行交互时,常常会遇到跨域和Session、Cookie失效的问题。本文将详细介绍如何解决这些问题。 首先,跨域是由于浏览器的安全策略限制,同一源...

    vue2 前后端分离项目ajax跨域session问题解决方法

    在前后端分离的项目中,Vue2经常遇到的一个挑战是处理AJAX跨域请求时的Session问题。在本文中,我们将深入探讨这个问题,并提供一种解决方案。 首先,让我们理解跨域和Session的基本概念。跨域是由于浏览器的同源...

    php跨域提交及伪造SeSSION

    当尝试从一个域名下的页面请求另一个域名的数据时,就会发生跨域问题。PHP中处理跨域的方法主要包括设置响应头`Access-Control-Allow-Origin`,允许特定或所有域名进行跨域请求。例如: ```php header("Access-...

    nginx跨域问题,解决多端口,多ip问题

    Nginx 跨域问题解决方案 Nginx 是一个流行的开源 Web 服务器软件,广泛应用于 Web 服务器管理。然而,在使用 Nginx 进行服务器管理时,经常会遇到跨域问题。跨域问题是指在不同的域名、端口或协议下,无法访问...

    完美解决ajax访问遇到Session失效的问题

    现在Ajax在Web项目中应用广泛,几乎可以说无处不在,这就带来另外一个问题:当Ajax请求遇到Session超时,应该怎么办? 显而易见,传统的页面跳转在此已经不适用,因为Ajax请求是XMLHTTPRequest对象发起的而不

Global site tag (gtag.js) - Google Analytics