JCoIDocServer с собственным DestinationDataProvider не работает
Я хочу использовать собственный DestinationDataProvider для JCoIDocServer.
Я зарегистрировал своего провайдера с:
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 ответ
Решение
Это простая ошибка, для того, чтобы получить свой сервер, сначала нужно также зарегистрировать поставщика данных сервера.
com.sap.conn.jco.ext.Environment.registerServerDataProvider (serverDataProvider);