具有自己的DestinationDataProvider的JCoIDocServer无法正常工作

时间:2016-12-01 09:17:22

标签: sapjco3

我想为JCoIDocServer使用自己的DestinationDataProvider。

我已向我的提供商注册:

Environment.registerDestinationDataProvider

当我打电话

JCoDestination destination = JCoDestinationManager.getDestination("SAP_DEST_" + connector.name + "_server");

我的数据提供者被调用。

但是当我使用时:

JCoIDocServer server = JCoIDoc.getServer("SAP_DEST_" + connector.name + "_server");

我的提供程序未被调用(我调试了它),我得到了这个例外:

com.sap.conn.jco.JCoException: (106) JCO_ERROR_RESOURCE: Server SAP_DEST_TestSap_server does not exist
at com.sap.conn.jco.rt.StandaloneServerFactory.update(StandaloneServerFactory.java:338)
at com.sap.conn.jco.rt.StandaloneServerFactory.getServerInstance(StandaloneServerFactory.java:175)
at com.sap.conn.idoc.jco.JCoIDoc.getServer(JCoIDoc.java:301)
at com.sap.conn.idoc.jco.JCoIDoc$getServer.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at com.lomnido.service.SapService.$tt__startServer(SapService.groovy:84)
at com.lomnido.service.SapService$_startServer_closure2.doCall(SapService.groovy)

这里有什么问题?

1 个答案:

答案 0 :(得分:2)

这是一个简单的错误,为了获得您的服务器,您必须首先注册服务器数据提供程序..

com.sap.conn.jco.ext.Environment.registerServerDataProvider(serverDataProvider);