Как создать и зарегистрировать в среде SAP прослушиватель IDoc?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как создать и зарегистрировать в среде SAP прослушиватель IDoc?

Сообщение Anonymous »


Нам нужно реализовать клиент SAP на Java для прослушивания IDoc. Мы используем

17 3.1.3 3.1.7 ${project.build.directory}/lib ... com.sap.conn.idoc com.sap.conn.idoc.sapidoc3 ${com.sap.conn.idoc.version com.sap.conn.jco com.sap.conn.jco.sapjco3 ${com.sap.conn.jco.version com.sap.conn.jco sapjco3 ${com.sap.conn.jco.version внешняя библиотека dll com.sap.conn.jco libsapjco3 ${com.sap.conn.jco.version внешняя библиотека так конфигурация клиента:

Свойства свойства = новые свойства(); Properties.setProperty(DestinationDataProvider.JCO_ASHOST, хост); Properties.setProperty(DestinationDataProvider.JCO_SYSNR, systemNumber); Properties.setProperty(DestinationDataProvider.JCO_CLIENT, клиент); Properties.setProperty(DestinationDataProvider.JCO_USER, имя пользователя); Properties.setProperty(DestinationDataProvider.JCO_PASSWD, пароль); Properties.setProperty(DestinationDataProvider.JCO_LANG, язык); Properties.setProperty(DestinationDataProvider.JCO_GWHOST, хост); Properties.setProperty(DestinationDataProvider.JCO_GWSERV, GatewayService); Properties.setProperty(DestinationDataProvider.JCO_GROUP, группа); Properties.setProperty(DestinationDataProvider.JCO_PEAK_LIMIT,peakLimit); Используя свойство напоминания, мы создаем DestinationDataProvider, регистрируя его в среде Environment.registerDestinationDataProvider(destinationDataProvider)

тогда мы сможем без проблем создать JCoDestination, JCoRepository или IDocRepository.

JCoDestination jCoDestination = JCoDestinationManager.getDestination("MULE_IDOC_TEST"); JCoRepository jCoRepository = jCoDestination.getRepository(); IDocRepository iDocRepository = JCoIDoc.getIDocRepository(jCoDestination); Наконец, мне нужен прослушиватель IDoc. Я описал класс для одного:

import com.sap.conn.idoc.IDocDocument; импортировать com.sap.conn.idoc.IDocDocumentIterator; импортировать com.sap.conn.idoc.IDocDocumentList; импортировать com.sap.conn.idoc.jco.JCoIDocHandler; импортировать com.sap.conn.jco.server.JCoServerContext; импортировать lombok.extern.slf4j.Slf4j; @Slf4j(topic = "Журнал прослушивания IDoc JCo") публичный класс JCoIDocListener реализует JCoIDocHandler { @Override public void handleRequest(JCoServerContext jCoServerContext, IDocDocumentList iDocDocumentList) { log.info("идокс что-то"); Итератор IDocDocumentIterator = iDocDocumentList.iterator(); в то время как (итератор.hasNext()) { IDocDocument idoc = iterator.next(); log.info("idoc: {}", idoc.toString()); } log.info("сервер: {}", jCoServerContext.getServer()); } } но я понятия не имею, как зарегистрировать его в среде клиента SAP.
Вопрос 1
Можете ли вы помочь мне зарегистрировать объект на основе JCoIDocListener в клиенте SAP Среда?
Другой способ.
Я описал еще один слушатель типа

import com.sap.conn.idoc.jco.JCoIDoc; импортировать com.sap.conn.jco.AbapClassException; импортировать com.sap.conn.jco.AbapException; импортировать com.sap.conn.jco.JCoFunction; импортировать com.sap.conn.jco.server.JCoServerContext; импортировать com.sap.conn.jco.server.JCoServerFunctionHandler; импортировать lombok.extern.slf4j.Slf4j; @Slf4j(topic = «Регистратор прослушивания сервера JCo IDoc») публичный класс JCoIDocServerListener реализует JCoServerFunctionHandler { @Override public void handleRequest (JCoServerContext jCoServerContext, JCoFunction jCoFunction) выдает AbapException, AbapClassException { log.info("что-то получил"); } } Но проблема в том, что я понятия не имею, как зарегистрировать его в среде (кроме того, это похоже на серверную часть).
Вопрос 2
Следует ли мне изменить конфигурацию клиента DestinationDataProvider для использования JCoIDocServerListener, если да, то как? (я думаю, следует указать некоторые свойства сервера) Как зарегистрировать JCoIDocServerListener.class?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»