`

sap BusinessObjects 4 java 单点登录处理 sso

    博客分类:
  • java
阅读更多

最近要做个java系统调用sap bo 报表展现的功能,查询了网上一些资料发现有些地方不是很正确,特别是4版本的包发生了变化,所以特别记录下。

 

java单点登录到BO系统主要是要生成一个Token令牌。具体代码实现:

 

//CMS服务器名,也可以是IP地址
                String cms = "192.168.250.95:6400";

                //认证的安全类型,类型是以上几种,如果是SAP,则类型字符为secSAPR3

                String authentication = "secEnterprise";
               
                //用户名,如果是SAP系统方式登录,格式为bwp~888/eiacext1
                String username = "administrator";

                String password = "passw0rd";//密码

                //登录并获得TOKEN,并命名用OpenDocument方式打开一个文件

                ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
                IEnterpriseSession enterpriseSession = sessionMgr.logon(username, password, cms,
                    authentication);
                ILogonTokenMgr mgr = enterpriseSession.getLogonTokenMgr();
                String defaultToken = mgr.getDefaultToken();
                System.out.println(defaultToken);

 

然后就是在你调用的URL:后面加上上面的值就可以了。

http://192.168.250.95:8080/OpenDocument/opendoc/openDocument.jsp?iDocID=8797&sType=rpt&token=

 

重点是要引用BO的lib:都可以再bo的安装目录下找到:

 

D:\Program Files\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\java\lib

 

lib列表:

aspectjrt.jar
aspectjweaver-1.5.4.jar
axis.jar
backport-util-concurrent-2.2.jar
bcm.jar
biarengine.jar
biplugins.jar
ceaspect.jar
cecore.jar
celib.jar
ceplugins_core.jar
ceplugins_cr.jar
cereports.jar
certjFIPS.jar
cesession.jar
commons-logging.jar
corbaidl.jar
cryptojFIPS.jar
derby.jar
ebus405.jar
jaxrpc.jar
log4j.jar
logging.jar
TraceLog.jar

 

 

分享到:
评论
4 楼 Booill 2013-07-01  
请问BO可以跨域登录么
3 楼 greemranqq 2012-11-22  
jar 用不起,不能识别 为什么呢
2 楼 lei_jingjun 2012-10-12  
tomcat 启动就报错   是jar冲突吗 ?
1 楼 lei_jingjun 2012-10-12  
sap BusinessObjects 4.0  SP4  用这些jar包不行啊 


org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 7 in the generated java file
Only a type can be imported. com.crystaldecisions.sdk.framework.ISessionMgr resolves to a package

An error occurred at line: 8 in the generated java file
Only a type can be imported. com.crystaldecisions.sdk.framework.CrystalEnterprise resolves to a package

An error occurred at line: 9 in the generated java file
Only a type can be imported. com.crystaldecisions.sdk.framework.IEnterpriseSession resolves to a package

An error occurred at line: 21 in the jsp file: /token.jsp
ISessionMgr cannot be resolved to a type
18:    
19: try{
20: //鐧诲綍骞惰幏寰桾OKEN锛屽苟鍛藉悕鐢∣penDocument鏂瑰紡鎵撳紑涓�釜鏂囦欢
21: ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
22: IEnterpriseSession iseSession = sessionMgr.logon(userName,userPss,cms,secEnterprise);
23: ILogonTokenMgr tokenMgr = iseSession.getLogonTokenMgr();
24: token = tokenMgr.getDefaultToken();


An error occurred at line: 21 in the jsp file: /token.jsp
CrystalEnterprise cannot be resolved
18:    
19: try{
20: //鐧诲綍骞惰幏寰桾OKEN锛屽苟鍛藉悕鐢∣penDocument鏂瑰紡鎵撳紑涓�釜鏂囦欢
21: ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
22: IEnterpriseSession iseSession = sessionMgr.logon(userName,userPss,cms,secEnterprise);
23: ILogonTokenMgr tokenMgr = iseSession.getLogonTokenMgr();
24: token = tokenMgr.getDefaultToken();


An error occurred at line: 22 in the jsp file: /token.jsp
IEnterpriseSession cannot be resolved to a type
19: try{
20: //鐧诲綍骞惰幏寰桾OKEN锛屽苟鍛藉悕鐢∣penDocument鏂瑰紡鎵撳紑涓�釜鏂囦欢
21: ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
22: IEnterpriseSession iseSession = sessionMgr.logon(userName,userPss,cms,secEnterprise);
23: ILogonTokenMgr tokenMgr = iseSession.getLogonTokenMgr();
24: token = tokenMgr.getDefaultToken();
25: //System.out.println(token);


Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:356)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

相关推荐

    java单点登录sso源码

    Java单点登录(Single Sign-On,SSO)是一种网络访问控制机制,允许用户在一次登录后,无需再次认证即可访问多个应用系统。SSO的核心思想是:用户只需要在一个可信的身份认证中心(Identity Provider,IdP)进行身份...

    宁盾单点登录(SSO)与SAP对接方案.docx

    宁盾单点登录(SSO)与SAP对接方案旨在解决现代企业中多应用系统登录繁琐、安全性低的问题。随着企业向移动化转型,传统的网络安全措施已经无法满足需求,因此引入了以身份为核心的身份和访问管理(IAM)系统。SSO...

    SAP 单点登录源码 集成文档 方案

    "如何为非SAP Web应用启用单点登录.pdf"文档详细介绍了将SAP SSO扩展到非SAP应用的方法。主要涉及创建信任关系,配置SAML2.0认证,以及在非SAP应用服务器上实现SAP Logon Ticket的解析和验证。 5. 注意事项 - 安全...

    Java 单点登录开发教程(SSO)

    在《SSO单点登录Java开发教程(四)自己动手写SSO单点登录服务端和客户端.md》及《SSO单点登录Java开发教程(五)自己动手写SSO单点注销服务端和客户端.md》中,讲解了如何构建这些组件: 1. **服务端**:主要负责用户...

    SSO 单点登录(java)

    以上是SSO单点登录在Java环境中的主要技术和知识点,理解并掌握这些内容,有助于构建高效且安全的多系统登录解决方案。对于各应用独立用户库的情况,可以通过用户同步、联合身份或联邦身份管理等方式来实现。在具体...

    java单点登录流程及其他

    Java 单点登录(SSO)是指在多个系统或应用程序中,只需要用户登录一次,就可以访问所有相关系统或应用程序的机制。单点登录 OOS(Object-Oriented Security)通常包括身份验证(Authentication)和授权...

    sso单点登录ppt.ppt

    sso单点登录ppt.ppt

    CAS单点登录(SSO)教程

    ### CAS单点登录(SSO)教程详解 #### 前言 随着企业信息化建设的不断发展,用户需要在多个系统之间切换并重复登录的情况越来越常见,这不仅降低了用户体验,还增加了管理成本。为了解决这一问题,单点登录(Single ...

    java sso 单点登录 demo

    Java SSO(Single Sign-On)单点登录是一种网络身份验证机制,它允许用户在一次登录后,访问多个相互信任的应用系统而无需再次进行身份验证。SSO的核心思想是:用户只需要在一个应用系统中登录,然后就可以在整个...

    BusinessObjects Integration Kit for SAP - Installation and Configuration.pdf

    ##### SAP 单点登录 (SSO) - **概述**:使用户仅需一次登录即可访问 SAP 和 BusinessObjects 系统。 - **技术细节**:需配置 SAP SSO Server 与 BusinessObjects 系统之间的认证机制。 - **应用场景**:例如实现跨...

    统一认证单点登录系统SSO解决方案.doc

    单点登录(Single Sign-On,简称SSO)是一种网络身份认证机制,允许用户在一个系统中登录后,无需再次认证即可访问其他相互信任的系统。在企业级应用环境中,多个独立的系统常常需要集成,以便提高用户体验和管理...

    PHP 使用TP5.0 实现SSO单点登录

    因为公司要实现SSO单点登录的效果,最近在网上找了一些资料,但是都没有好用的, 所以自己用PHP 使用TP5.0 实现了SSO单点登录,可以跨多个域名。 下载后在本地配置好 A,B,C 3个网站,就可以模拟效果了。

    跨服务器登录验证(单点登录SSO)过程和Java实现

    单点登录(Single Sign-On,简称SSO)是一种网络用户身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次输入认证信息。这种机制极大地提高了用户体验,减少了用户记忆多套账号密码的困扰,...

    单点登录SSO的实现原理

    单点登录SSO的实现原理 单点登录(SSO)是一种常见的技术实现原理,在多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。实现单点登录说到底就是要...

    sso单点登录 java代码

    单点登录(Single Sign-On,简称SSO)是一种网络身份验证机制,允许用户在一次登录后,无需再次提供凭证即可访问多个相互关联的应用系统。在Java环境中实现SSO,通常涉及以下几个关键知识点: 1. **身份验证框架**...

    java sso单点登录案例、服务综合治理

    SSO(Single Sign-On)单点登录是一种身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次进行身份验证。在Java环境下实现SSO,我们可以利用多种框架和技术,例如Spring Security、CAS...

    Java进阶SSO单点登录技术CAS-快速上手与原理探究视频教程

    4、 单点登录、登出的原理探究等 知识点 l 相关概念或术语:SSO、CAS、TGT、TGC、ST l CAS Server服务端的搭建和配置 l CAS Client客户端的搭建和配置 l 单点登录的测试 l 单点登出的实现和测试测试 l 单点登录、...

Global site tag (gtag.js) - Google Analytics