Публикация исходящих сообщений с помощью Halidon и Oracle AQJAVA

Программисты JAVA общаются здесь
Anonymous
Публикация исходящих сообщений с помощью Halidon и Oracle AQ

Сообщение Anonymous »

У меня есть следующий класс, который должен отправлять сообщения в файл application.yml, определенный Oracle AQ.

Код: Выделить всё

@ApplicationScoped
public class BaseAQClient{
private static final Logger logger = LoggerFactory.getLogger(BaseAQClient.class);

@Outgoing("to-aq-pokemon")
public PublisherBuilder publish(String msg) {
PublisherBuilder result = ReactiveStreams.of(msg);
return result;
}

@Incoming("from-aq-pokemon")
public void consumeAq(String msg) {
logger.debug("Oracle AQ says: {}", msg);
}
}
Когда я хочу отправить сообщение, я делаю что-то подобное

Код: Выделить всё

BaseAQClient client = new BaseAQClient ();

CompletableFuture.supplyAsync(() -> client.publish(message))
.thenApply(result -> {  logger.info("Message published successfully: {}", result);
return "Message published successfully: " + result;})
.exceptionally(e -> {logger.error("Error publishing message: {}", e.getMessage());
return "Error publishing message";});
Он вообще не отправляет сообщения, и такой вызов метода публикации кажется совершенно неправильным. Но я не могу найти правильный способ сделать это. Также мне не нужна опция async.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -oracle-aq

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