0

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)

ここで何が問題なのですか?

4

1 に答える 1

2

これは単純な間違いです。サーバーを取得するには、最初にサーバー データ プロバイダーも登録する必要があります。

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

于 2016-12-13T08:58:20.633 に答える