zoukankan      html  css  js  c++  java
  • java实现SAP BO登录

      最近一个项目用到了SAP的businessObjects,需要进行二次开发,今天开发了登录接口,遇到了一些问题,进行了解决,现在分享一下。

      1、依赖jar包的添加

        bo登录需要用到一些jar包,具体在bo安装目录的Tomcat55webappsVoyagerClientWEB-INFlib下,我们用到的版本是3.X,目录仅供参考。

      2、登录代码编写

         // ip:port, port一般是6400
            String CMS = "*.*.*.*:6400";
            // 登录的用户名
            String userID = "username";
            // 密码
            String password = "password";
            // 认证类型: secEnterprise
            String auth = "secEnterprise";
            IEnterpriseSession enterpriseSession;
            try {
                ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
                enterpriseSession = sessionMgr.logon(userID, password, CMS, auth);
                
                /* 其中createLogonToken(java.lang.String clientComputerName, int validMinutes, int validNumOfLogons)
                   clientComputerName为使用这个token的客户端计算机名,空字符串表示该token可被任何客户端使用;
                   validMinutes为token的有效时间(分钟);
                   validNumOfLogons 表示该token允许被使用的最大次数。*/
                String token = enterpriseSession.getLogonTokenMgr().createLogonToken("", 1, Integer.MAX_VALUE);
            } catch (SDKException e){
                e.printStackTrace();
                return;
            }

      拿到token了之后就可以进行url的拼接,做其他操作了,如:http://10.6.4.170:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&sType=wid&iDocID=AQa.zJ7BBUBAolv5NdN3X2A&lsSP_DATE=20180415&token=BIPRD0:6400@129477Jg4Sy5pocBTNao8qOGGws6j129475J1JhLhH8z4qO7A6adlV4R1hONEOFF

      3、报错说明

        登录时候一直报一个

          com.crystaldecisions.enterprise.ocaframework.OCAFrameworkexception$CommunicationError:尝试连接服务器BO1:6400时出现通信错误(FWM 01009)

          ......

        的错误,找了很多资料,ping BO1和telnet BO1 6400都可以通,最后发现,是BO1服务器上的hosts文件还有其他的主机名配置,后来把服务器上的hosts文件中的关于服务器的IP的配置拷贝到做项目的服务器上,就好了。

        所以这个问题解决要看服务器是否能ping通,端口是否可以访问,hosts文件是否需要配置。  

  • 相关阅读:
    Objective--C三大特性:封装,继承,多态(零碎笔记)
    零碎的知识点
    Objective--C之《文件操作》练习代码
    Objective--C的Foundation frame之NSMutableDictionary代码
    Objective--C的Foundation frame之NSMutableArray代码
    Objective--C随笔2016年8月7日
    关于OC中的委托delegate
    javascript 绝对路径工具类
    IE 弹出框处理经验
    InputStream和OutputStream 何时使用
  • 原文地址:https://www.cnblogs.com/effortn/p/10305316.html
Copyright © 2011-2022 走看看