首页 > 编程语言 >SAP Java Connector 错误 - JCO_ERROR_COMMUNICATION

SAP Java Connector 错误 - JCO_ERROR_COMMUNICATION

时间:2022-10-31 23:15:10浏览次数:36  
标签:rt sap Java COMMUNICATION jco java SAP com conn

我运行 SAP Java Connector 自带的 SimpleCall 例子程序时,遇到如下错误消息:

Exception in thread "main" com.sap.conn.jco.JCoException: (102) JCO_ERROR_COMMUNICATION: Initialization of repository destination ABAP_AS1 failed: Connect to SAP gateway failed
connection parameters: TYPE=A DESTINATION=ABAP_AS1 ASHOST=abap_host_name SYSNR=00 PCS=1 SERIALIZATION_FORMAT=columnBased NETWORK=LAN

LOCATION CPIC (TCP/IP) on local host with Unicode
ERROR hostname 'abap_host_name' unknown
TIME Tue Oct 25 14:07:48 2022
RELEASE 753
COMPONENT NI (network interface)
VERSION 40
RC -2
MODULE D:/depot/bas/753_REL/src/base/ni/ninti.c
LINE 898
DETAIL NiPGetHostByName: 'abap_host_name' not found
SYSTEM CALL getaddrinfo
COUNTER 2

at com.sap.conn.jco.rt.RfcDestination.getSystemID(RfcDestination.java:1560)
at com.sap.conn.jco.rt.RepositoryManager.getRepository(RepositoryManager.java:28)
at com.sap.conn.jco.rt.RfcDestination.initRepository(RfcDestination.java:1464)
at com.sap.conn.jco.rt.RfcDestination.getRepository(RfcDestination.java:1846)
at com.sap.conn.jco.rt.RfcDestination.getRepository(RfcDestination.java:40)
at com.sap.conn.jco.examples.client.beginner.SimpleCall.main(SimpleCall.java:23)

Caused by: com.sap.conn.jco.JCoException: (102) JCO_ERROR_COMMUNICATION: Connect to SAP gateway failed
connection parameters: TYPE=A DESTINATION=ABAP_AS1 ASHOST=abap_host_name SYSNR=00 PCS=1 SERIALIZATION_FORMAT=columnBased NETWORK=LAN

LOCATION CPIC (TCP/IP) on local host with Unicode
ERROR hostname 'abap_host_name' unknown
TIME Tue Oct 25 14:07:48 2022
RELEASE 753
COMPONENT NI (network interface)
VERSION 40
RC -2
MODULE D:/depot/bas/753_REL/src/base/ni/ninti.c
LINE 898
DETAIL NiPGetHostByName: 'abap_host_name' not found
SYSTEM CALL getaddrinfo
COUNTER 2
(remote system is [])
at com.sap.conn.jco.rt.AbstractConnection.generateJCoException(AbstractConnection.java:624)
at com.sap.conn.jco.rt.ClientConnection.connectInternal(ClientConnection.java:633)
at com.sap.conn.jco.rt.ClientConnection.connect(ClientConnection.java:1201)
at com.sap.conn.jco.rt.RepositoryConnection.connect(RepositoryConnection.java:188)
at com.sap.conn.jco.rt.PoolingFactory.init(PoolingFactory.java:116)
at com.sap.conn.jco.rt.ConnectionManager.createFactory(ConnectionManager.java:461)
at com.sap.conn.jco.rt.DefaultConnectionManager.createFactory(DefaultConnectionManager.java:24)
at com.sap.conn.jco.rt.ConnectionManager.getFactory(ConnectionManager.java:400)
at com.sap.conn.jco.rt.RfcDestination.getSystemID(RfcDestination.java:1542)
... 5 more
Caused by: RfcException raised by system []:
message: Connect to SAP gateway failed
connection parameters: TYPE=A DESTINATION=ABAP_AS1 ASHOST=abap_host_name SYSNR=00 PCS=1 SERIALIZATION_FORMAT=columnBased NETWORK=LAN

LOCATION CPIC (TCP/IP) on local host with Unicode
ERROR hostname 'abap_host_name' unknown
TIME Tue Oct 25 14:07:48 2022
RELEASE 753
COMPONENT NI (network interface)
VERSION 40
RC -2
MODULE D:/depot/bas/753_REL/src/base/ni/ninti.c
LINE 898
DETAIL NiPGetHostByName: 'abap_host_name' not found
SYSTEM CALL getaddrinfo
COUNTER 2

return code: RFC_FAILURE (1)
error group: 102
key: RFC_ERROR_COMMUNICATION
at com.sap.conn.rfc.engine.RfcIoControl.error_end(RfcIoControl.java:234)
at com.sap.conn.rfc.engine.RfcIoControl.ab_rfcopen(RfcIoControl.java:125)
at com.sap.conn.rfc.api.RfcApi.RfcOpen(RfcApi.java:77)
at com.sap.conn.jco.rt.ClientConnection.connectInternal(ClientConnection.java:597)
... 12 more

这是因为 JCO 项目文件夹下 ABAP_AS1.jcoDestination 文件的 jco.client.ashost 字段,仍然使用了默认的 abap_host_name 值(我们在错误消息里可以观察到这个值)

这里涉及到 destination 的概念。

JCoDestination 标识函数调用的物理目的地。 它包含连接到 SAP 系统所需的所有属性。
注意:JCoDestination 只是一个配置实例,其中包含 JCo 运行时创建连接所需的所有信息。它本身不会创建或保持任何连接。如果由目标配置定义,JCo 运行时会创建连接并将它们汇集起来。

目标 BACK 仅在 JCo RFC 服务器场景中可用,在发送 RFC 请求的时间点和返回 RFC 响应的时间点之间。

Destination 的类型:

  • 3 - 使用未指定登录方法的 ABAP 系统的目的地
  • A - 使用直接应用程序服务器主机登录的 ABAP 系统的目标
  • B - 具有消息服务器驱动的负载平衡登录的 ABAP 系统的目的地
  • E - 外部 RFC 服务器程序的目的地
  • R - 已注册 RFC 服务器程序的目的地
  • N - SAP Cloud Platform 中使用未指定登录方法的本地 ABAP 系统的目的地

标签:rt,sap,Java,COMMUNICATION,jco,java,SAP,com,conn
From: https://www.cnblogs.com/sap-jerry/p/16846223.html

相关文章

  • java快速入门
    概述jvm:java虚拟机jre:java运行环境包括:jvm+库包(api)jdk:java开发环境包括:开发工具+jre核心优势:跨平台运行环境java8+netbeans或者vscode+java插件或者idea或者命......
  • java中的lambda表达式
    简介java的lambda表达式是一种简单的匿名函数,这个匿名函数中都是干货,参数列表,lambda表达式的符号->和逻辑代码lambda的表达式的形式如下//当只有一个参数时,可以省略小......
  • java关键字static
    static修饰的成员,属于类的2、static关键字的特点:static修饰的成员,属于类(称之为类成员或类变量),而不属于某一个对象,但可以被类的所有对象共享。可以通过类名进行访问,当然......
  • JavaScript快速入门
    JavaScript快速入门1.前端知识体系  想要成为真正的“互联网Java全栈工程师”还有很长的一段路要走,其中前端是绕不开的一门必修课。本阶段课程的主要目的就是带领Ja......
  • java中的继承
    继承,变量的访问顺序,就近原则classFu{intmoney=20;}classZiextendsFu{intmoney=30;publicvoidshow(){intmoney=200;Sy......
  • 使用JAVA实现完全数
    一、什么是完全数?就是一个数:它满足除了它本身以外所有的因子的和是这个数的本身,那么我们就称这个数是完全数。例如6=1+2+3;那么6就是一个完全数。二、代码的实现:1、实现......
  • ST-link驱动安装(遇到的各种问题:问题1.No st-link detected.问题2:st-link usb communi
    一、上ST官方网站下载最新版本的驱动。ST官方网站:https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-develop......
  • JavaScript 输出
    JavaScript没有任何打印或者输出的函数。JavaScript显示数据JavaScript可以通过不同的方式来输出数据:使用window.alert()弹出警告框。使用document.write()方法将......
  • 设计模式-策略模式在Java中的使用示例
    场景策略模式(StrategyPattern)是指定义了算法家族并分别封装起来,让它们之间可以互相替换,此模式使得算法的变化不会影响使用算法的用户。策略模式的应用场景1、系统......
  • Java 从入门到放弃12 - 《网络编程基础》
    网络编程基础为了把计算机接入互联网,就必须要使用TCP/IP协议。TCP/IP协议泛指互联网协议,其中最重要的两个就是TCP和IP协议,而使用其他网络协议都是无法接入互联网的IP地......