由于端口问题,JCO Idoc服务器无法接收消息

时间:2017-01-12 11:10:40

标签: java sap jco idoc sapjco3

我有一个基于java的idoc监听服务器,它使用JCo 3构建。当我启动它并从sap系统发送一个Idoc时,它给了我一个例外。

com.sap.conn.idoc.IDocRuntimeException: Failed to resolve repository reference @MYDESTINATION
    at com.sap.conn.idoc.jco.rt.DefaultJCoIDocServer$IDocRepositoryMapBox$IDocRepositoryReference.getRepository(DefaultJCoIDocServer.java:245)
    at com.sap.conn.idoc.jco.rt.DefaultJCoIDocServer$IDocRepositoryMapBox.getRepository(DefaultJCoIDocServer.java:397)
    at com.sap.conn.idoc.jco.rt.DefaultJCoIDocServer.getIDocRepository(DefaultJCoIDocServer.java:128)
    at com.sap.conn.idoc.jco.rt.DefaultJCoIDocServerWorker$IDocDispatcher.createIDocDocumentListArray(DefaultJCoIDocServerWorker.java:445)
    at com.sap.conn.idoc.jco.rt.DefaultJCoIDocServerWorker$IDocDispatcher.handleRequest(DefaultJCoIDocServerWorker.java:209)
    at com.sap.conn.jco.rt.DefaultServerWorker.dispatchRequest(DefaultServerWorker.java:148)
    at com.sap.conn.jco.rt.MiddlewareJavaRfc$JavaRfcServer.dispatchRequest(MiddlewareJavaRfc.java:3680)
    at com.sap.conn.jco.rt.MiddlewareJavaRfc$JavaRfcServer.executePlayback(MiddlewareJavaRfc.java:3158)
    at com.sap.conn.jco.rt.MiddlewareJavaRfc$JavaRfcServer.playbackTRfc(MiddlewareJavaRfc.java:2981)
    at com.sap.conn.jco.rt.MiddlewareJavaRfc$JavaRfcServer.handletRfcRequest(MiddlewareJavaRfc.java:2875)
    at com.sap.conn.jco.rt.MiddlewareJavaRfc$JavaRfcServer.listen(MiddlewareJavaRfc.java:2674)
    at com.sap.conn.jco.rt.DefaultServerWorker.dispatch(DefaultServerWorker.java:275)
    at com.sap.conn.jco.rt.DefaultServerWorker.loop(DefaultServerWorker.java:356)
    at com.sap.conn.jco.rt.DefaultServerWorker.run(DefaultServerWorker.java:232)
    at java.lang.Thread.run(Thread.java:745)
Caused by: com.sap.conn.jco.JCoException: (102) JCO_ERROR_COMMUNICATION: Connect to message server host failed
Connection parameters: TYPE=B DEST=MYDESTINATION MSHOST=192.168.56.101 R3NAME=NSP GROUP=PUBLIC PCS=1

ERROR       partner '192.168.56.101:sapmsNSP' not reached
TIME        Thu Jan 12 16:19:21 2017
RELEASE     721
COMPONENT   NI (network interface)
VERSION     40
RC          -10
MODULE      nixxi.cpp
LINE        3283
DETAIL      NiPConnect2: 192.168.56.101:3600
SYSTEM CALL connect
ERRNO       61
ERRNO TEXT  Connection refused
COUNTER     1

正如它所说我认为这是由于消息服务器不可用并登录到sap机器并使用netstat检查打开的端口。

端口3600没有侦听,但据报告端口7200由msg_server.exe打开。我已将我的jco服务器端机器的/ etc / services文件设置为sapmsNSP 3600/tcp,但即使我将其更改为7200,也会出现异常内部错误

1 个答案:

答案 0 :(得分:1)

错误消息显示主机192.168.56.101上没有正在运行的进程侦听端口3600.这意味着SAP消息服务器进程正在侦听其他端口,或者它根本就没有运行。

如果您可以使用SAP GUI对ABAP系统NSP进行组登录,则应正确配置您的服务文件。顺便说一句,SAP消息服务器进程通常在Windows上命名为msg_server.exe - 而不是message_server.exe。如果您更改了服务文件,则至少应在显示修改后的端口号的DETAIL错误消息部分中收到不同的错误消息。否则你无法更改服务文件(未保存?在最后一行之后没有回车?)或者在更改服务文件后没有重新启动JCo服务器程序。