未开启权限认证时,即不需要执行ContentManagerService_Port.logon时,抛出的exception可以通过如下代码段来捕获并解析:
catch (RemoteException e) {
// 报表拆分时,没有数据的情况.
if(e instanceof com.cognos.org.apache.axis.AxisFault){
AxisFault af = (AxisFault) e;
Element tmp[] = af.getFaultDetails();
String dataNot = "We are always supposed to have a grouping for each burst";
for (int i = 0; i < tmp.length; i++) {
Element ele = (Element) tmp[i];
NodeList nl = ele.getElementsByTagName("ns1:messageString");
// 判断是否为错误
if(nl == null || nl.getLength()<2){
// 为错误
logger.debug("NodeList length:"+nl.getLength());
}else{
//判断是否为报表没有数据
if(nl.item(1).getFirstChild().getNodeValue().indexOf(dataNot)!= -1){
// 报表没有数据
logger.warn("报表没有数据! " + cognosPath);
return true;
}
}
}
}
logger.error("调用cognos报表运行服务超时。错误:" + e.getMessage(),e);//经常出错
e.printStackTrace();
return false;
}
如果开启权限认证的情况下,即需要执行ContentManagerService_Port.logon才能连接cognos server成功。
ele.getElementsByTagName("ns1:messageString")返回的是空list,
ele.getElementsByTagName("*")返回一个length为6个list,其中有两个item有意义,如下:
<ns1:message>
<messageString>
RSV-SRV-0040 An application error has occurred. Please contact your Administrator.
</messageString>
</ns1:message>
<ns1:message>
<messageString>
DPR-ERR-2082 An error has occurred. Please contact your administrator. The complete error has been logged by CAF with SecureErrorID:2008-12-17-14:18:08.890-#105
</messageString>
</ns1:message>
这两个错误还不确定是否可以作为空报表判断的依据。
分享到:
相关推荐
Cognos ReportNet是一款强大的基于Web的报表生成和管理工具,是IBM Cognos产品系列的重要组成部分。本文将深入探讨ReportNet的主要特性和工作流程,帮助读者了解如何利用这一工具进行有效的报表创建、管理和分析。 ...
**Cognos ReportNet** 是IBM的一款企业级报表工具,用于数据的分析、报告和仪表板展示。其安装配置流程较为复杂,涉及到多个组件的协同工作。首先,确保ReportNet及其框架管理器**Framework Manager**安装在同一目录...
当我们谈论"Cognos自定义Java权限认证"时,我们实际上是在讨论如何在Cognos环境中集成自定义的Java安全认证模块,以满足特定的安全需求。 Cognos默认使用它的内置安全性,包括用户和角色管理,但有时这可能不足以...
本项目"自定义JAVA权限认证"就是针对这种情况,通过Java程序实现对Cognos的用户权限进行定制化管理。 该压缩包文件包含了以下组件: 1. SQL脚本:这些脚本可能用于创建和管理存储用户信息的数据库表。通常,你需要...
- **打开Cognos Configuration**:通过控制面板进入Cognos ReportNet -> Cognos Configuration。 - **修改数据库连接信息**:包括数据库名、用户名和密码。 ##### 3. Configuration资源设置 - **修改数据库名称**...
Cognos报表开发技术 Cognos报表开发技术是指使用Cognos Business Intelligence开发报表的技术,主要应用于商业智能领域,旨在帮助企业决策者和业务用户快速获取有价值的商业信息。下面是该技术的相关知识点: 1. ...
本文将详细解析Cognos中一种常用的报表访问权限控制方式,通过设置两个用户角色来实现对不同层级用户的权限管理。 ### Cognos报表访问权限控制 #### 方案一:细粒度用户权限控制 该方案的核心在于将Portal系统中...
COGNOS 报表开发 COGNOS 报表开发是指使用 COGNOS 软件进行报表开发的过程。COGNOS 是一款商业智能(Business Intelligence)工具,主要用于报表开发、数据分析和商业智能应用。COGNOS 报表开发主要涉及到报表设计...
Cognos 8.1 ReportNet 是一款强大的商业智能工具,它为企业提供了一套完整的报表和分析解决方案。本文将详细阐述如何在Windows XP Professional环境下,顺利完成Cognos 8.1 ReportNet的安装与配置。 首先,我们需要...
Cognos ReportNet还提供了灵活的报表展现,用户可以通过简单的拖拉方式在页面上安排报表对象,并将它们放到报表创建窗口。自适应报表创建环境可以在添加或删除报表对象时在窗口中自动安排报表对象。
Cognos 数据权限管理是IBM的一款商业智能工具Cognos Analytics的重要组成部分,用于确保用户只能访问他们被授权查看的数据。对于初学者来说,理解并掌握这一功能是至关重要的,因为它有助于维护数据安全和合规性。...
接着,在`ReportStudio`中基于数据包设计报表,可以创建各种类型的报表,如`Cognos ReportNet - Ad Hoc Querying`,它支持用户自定义查询。 在设计过程中,我们还需要注意平衡数据中间层的使用方便性和查询效率。...
Cognos8 SDK集成报表涉及到的IT知识点相当广泛,涵盖了商业智能领域、软件开发以及系统集成等多个方面。下面将详细阐述Cognos8 SDK的使用,以及在报表集成过程中所涉及的关键概念和技术点。 首先,Cognos8 SDK是一...
- Cognos的权限管理是基于角色的,管理员可以创建不同角色,并分配相应的访问权限。这些角色可以限制用户查看、编辑、运行或分享报表等操作。 - 用户权限可以通过Cognos的Content Manager进行配置,确保数据安全和...
本文将详细讲解如何使用Cognos SDK来实现用户角色权限的管理,包括第三方认证、角色与组织的创建及管理,以及对不同类型的资源设置权限。 1. **用户角色权限管理** - **第三方认证**:Cognos SDK允许集成外部认证...
Cognos多维报表是IBM的一款商业智能工具Cognos Analytics中的重要功能,它能够帮助用户从多个角度分析数据,从而深入理解业务状况。在Cognos中制作多维报表通常涉及以下步骤: 1. **环境准备**:首先,确保已经安装...
【Cognos报表性能调优】是针对IBM的Cognos Business Intelligence系统进行优化,以提升报表生成速度、降低服务器负载、改善用户体验的关键技术。在Cognos环境中,性能优化通常涉及多个层面,包括硬件配置、数据库...
使用FrameWork Manager,可以将报表发布到Cognos Server上,使得用户可以通过IE登录到Cognos的Portal上,打开报表并进行查询和分析。 Cognos报表操作流程注意事项: * framework 8.3的版本需要注意环境变量的设置...
Cognos报表是一款由IBM开发的商业智能工具,主要用于数据可视化和分析。在这个场景中,我们关注的是如何在Cognos报表中实现“一键导出”功能,这通常涉及到将报表内容导出为不同的文件格式,如PDF、Excel或HTML等,...