JCO SERVER CONNECTION

原创 2011年01月14日 11:09:00

JCO SERVER CONNECTION使用说明

JCo(Sap Java Connect 2010-01-09 22:03:02 阅读66 评论0   字号: 订阅

1.    Jco Server  Connection实现要点

1)       Implement the JCoServerFunctionHandler and the coding to be executed when the call is received.

2)       Create an instance for your JCoServer implementation and start it with start().

 

1.1. 建立与sap端的连接

static

    {

        Properties connectProperties = new Properties();

        connectProperties.setProperty(DestinationDataProvider.JCO_ASHOST, "10.52.41.3");

        connectProperties.setProperty(DestinationDataProvider.JCO_SYSNR, "02");

        connectProperties.setProperty(DestinationDataProvider.JCO_CLIENT, "800");

        connectProperties.setProperty(DestinationDataProvider.JCO_USER, "CRCTEST");

        connectProperties.setProperty(DestinationDataProvider.JCO_PASSWD, "12345678");

        connectProperties.setProperty(DestinationDataProvider.JCO_LANG, "en");

        createDataFile(DESTINATION_NAME1, "jcoDestination", connectProperties);

       

        connectProperties.setProperty(DestinationDataProvider.JCO_POOL_CAPACITY, "3");

        connectProperties.setProperty(DestinationDataProvider.JCO_PEAK_LIMIT, "10");

        createDataFile(DESTINATION_NAME2, "jcoDestination", connectProperties);

       

        Properties servertProperties = new Properties();

        servertProperties.setProperty(ServerDataProvider.JCO_GWHOST, "10.52.41.3");

        servertProperties.setProperty(ServerDataProvider.JCO_GWSERV, "3302");

        servertProperties.setProperty(ServerDataProvider.JCO_PROGID, "JCODEMO");

        servertProperties.setProperty(ServerDataProvider.JCO_REP_DEST, "ABAP_AS_WITH_POOL");

        servertProperties.setProperty(ServerDataProvider.JCO_CONNECTION_COUNT, "2");

        createDataFile(SERVER_NAME1, "jcoServer", servertProperties);

    }

ServerDataProvider.JCO_GWHOST 设置的server端的ip地址,ServerDataProvider.JCO_GWSERV设置的是sap端的端口号。

1.2. StfcConnectionHandle类处理RFC

StfcConnectionHandle类继承JCoServerFunctionHandle接口,并重写了handleRequestJCoServerContext serverCtxJCoFunction function)方法。

New 一个DefaultServerHandlerFactory.FunctionHandlerFactory 对象,使用registerHandlerFunction NamestfcConnectionHandler)方法,前面一个参数是sap端所要调用的函数,后面一个参数是StfcConnectionHandler类的一个实例。

然后使用server namesetCallHandlerFactoryDefaultServerHandlerFactory.FunctionHandlerFactory factory)方法,就可以用server.start()了。

补充handleRequestJCoServerContext serverCtxJCoFunction function)功能:

function.getImportParameterList()用来获取sap call Function 传递过来的exporting参数。

function.getExportParameterList().setValue()用来设置importing参数。

 

 

1.3. Simple Server Connection With Exception Listener Server Connection tRFC Server Connection

1.3.1.    With Exception Server Connection Simple Server Connection 的基础上,register Listener Class.

MyThrowableListener eListener = new MyThrowableListener();

server.addServerErrorListener(eListener);

server.addServerExceptionListener(eListener);

 

MyThrowableListener 继承JCoServerErrorListener JCoServerExceptionListener 两个接口,重写了serverErrorOccurred() 和serverExceptionOccurred()方法。

 

1.3.2.    tRFC Server Connection Simple Server Connection的基础上,通过TIDHandler实现事务型Connection

 

myTIDHandler = new MyTIDHandler();

server.setTIDHandler(myTIDHandler);


 JCO SERVER CONNECTION使用说明 - wangjia007bond - 青空飞鸟

MyTIDHandler类继承JCoServerTIDHandler 接口,重写了checkTID(),commit(),rollback(),confirmTID(),execute()方法。

使用了一个HashTable存储statusCREATED, EXECUTED, COMMITTED, ROLLED_BACK, CONFIRMED ),TIDState state = availableTIDs.gettid)。如果statusnull,则改变为CREATED,返回TRUE;如果statusCREATED或者ROLLED_BACK,则返回TRUE,其他返回FALSE

Jco服务配置以及程序编写

Jco服务配置以及程序编写 SAP 与第三方面软件进行数据通信时,运用到的中间件JCO,以下是JCO的服务配置.以及程序的编写,希望能给大家带来点帮助 SAP与java进行通信的流程:...
  • zhangdaiscott
  • zhangdaiscott
  • 2012年08月15日 20:48
  • 3624

SAP JCo的Server/Client编程实例

JCo是服务于SAP系统和Java系统的RFC中间件,是用Java实现的API,以Jar包的方式发布。应用灵活,但使用起来相对繁琐,NetWeaver Portal中基于Java的Webdynpro开...
  • yin_chuan_lang
  • yin_chuan_lang
  • 2011年08月22日 15:29
  • 6989

linux配置jco3

安装步骤: 1、  将libsapjco3.so复制到JDK目录安装目录路径:/usr/local/tools/jco3;(目录可自由指定) 2、  复制sapjco3.jar到/usr/java...
  • fishernemo
  • fishernemo
  • 2015年07月30日 15:28
  • 2727

JAVA使用JCO实现调用SAP接口方法

一、配置连接(1)第一种连接配置1.根据操作系统将sapjco3.dll文件放入C:\Windows\System32目录; 2.在项目中引入sapjco3.jar包; 3.创建DisplaySa...
  • u012909738
  • u012909738
  • 2017年07月03日 15:47
  • 632

JCO3远程调用SAP接口随笔二(输入、出参)

SAP接口,输入参数 输出参数 结构体 内表
  • QZC78
  • QZC78
  • 2015年11月06日 12:07
  • 676

JCO--API1

要让JAVA程序能访问SAP系统,一般通过SAP JCO接口进行通讯,在获取到SAP的连接时需求提供一些连接参数,这些参数在最新的JCO 3.0中需要被保存到一个带有扩展名 登录配置 jco.clie...
  • u012099568
  • u012099568
  • 2016年10月18日 11:29
  • 285

JCO连接SAP例子

JCO连接SAP例子  SAP JCo(SAP Java Connector,SAP Java连接器)是SAP组件和Java应用程序之间的中间件和接口实现机制。 JCo基于JNI(Java Nat...
  • precipitant
  • precipitant
  • 2015年02月15日 16:14
  • 2142

java通过jco连接sap

首先我们需要用到的jar包为sapjco3.jar,以及其他相关配置文件下载如下: windows环境下只需要把sapjco3.dllsapjco3.jar文件放置在jdk安装目录的lib目录下: ...
  • Yds492203171
  • Yds492203171
  • 2016年01月07日 10:33
  • 2258

Java(JCo3)与SAP系统相互调用 外部系统(Java)调用BAPI函数...

Java(JCo3)与SAP系统相互调用
  • u011229925
  • u011229925
  • 2017年06月02日 09:10
  • 1434

JAVA用JCO连接SAP,实现调用SAP的RFC函数(整理)(附一篇看起来比较全面的说明)

转载自: // 获取RFC返回的字段值 11 JCoParameterList exportParam = function.getExportParameterList(); 12...
  • wanglei880526
  • wanglei880526
  • 2014年11月07日 02:45
  • 4481
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JCO SERVER CONNECTION
举报原因:
原因补充:

(最多只允许输入30个字)