private void createMessageAndSend()

in log4j-jakarta-jms/src/main/java/org/apache/logging/log4j/jms/appender/JmsManager.java [376:388]


    private void createMessageAndSend(final LogEvent event, final Layout layout) throws JMSException {
        final var eventMessage = event.getMessage();
        final Message message;
        if (eventMessage instanceof org.apache.logging.log4j.message.MapMessage<?, ?>) {
            message = map((org.apache.logging.log4j.message.MapMessage<?, ?>) eventMessage, session.createMapMessage());
        } else if (layout != null) {
            message = session.createTextMessage(layout.toSerializable(event));
        } else {
            throw new UnsupportedOperationException("Unable to create a JMS message without a layout defined");
        }
        message.setJMSTimestamp(event.getTimeMillis());
        messageProducer.send(message);
    }