About Habari Client for Artemis
Habari Client for Artemis is a library for Delphi and Free Pascal which provides access to the ActiveMQ Artemis free open source message broker.
The throughput test application runs two threads, sending and receiving from a topic destination, using two STOMP 1.2 connections.
After a short warm-up time, every second approximately 15,000 messages are sent and received from the Delphi application to the message broker. In total, more than 30,000 messages per second flow between the message broker and the Delphi application.
The previous post listed the basic configuration steps which are required to exchange messages with the default message broker in the WildFly 10 open source application server. This configuration allowed us to run the Habari Client for Artemis chat example application with WildFly 10.
Now we would like to see some interaction with a Java EE 7 program. This article shows the Java code for a simple “chat bot”-like Message-Driven Bean. which logs all messages sent from the Delphi chat client(s) and responds to specific messages.
The program is able to do two things:
- log all messages sent to the ExampleTopic destination from all instances of the Delphi chat application which are connected to the ActiveMQ Artemis message broker in WildFly 10
- automatically reply to specific messages (similar to a “chat bot”)
As shown in the first part of this article, you can use the Delphi chat demo to send messages to the example topic. If you enter one of the strings which are handled by the source code, the server reply will appear in the client. Note that the reply will appear in every client, if more than one instance of the chat client is connected to the server.
If you wish to exchange messages between Delphi or Free Pascal applications and the WildFly 10 open source application server, follow these steps for a quick demonstration of the new client library from Habarisoft:
- download WildFly 10.0.0.CR2
- enable STOMP and add the ExampleTopic destination in the standalone-full.xml configuration file (see below)
- use add-user.bat to add user guest with password guest and role guest
- start WildFly with the standalone-full profile
- download the Habari Client for Artemis 1.0-RC1 demos
- launch HabariChat with user guest and password guest
Habarisoft announces the first release candidate of its Object Pascal STOMP client library. Habari Client for Artemis is a library which provides access to the ActiveMQ Artemis free open source message broker.
The release candidate has been tested with ActiveMQ Artemis 1.0.0, Indy 10.6.2 5302, Free Pascal 2.6.4, Lazarus 1.4.2 and Delphi 2009.
About Habari Client for Artemis
Habari Client for Artemis is easy to install and configure, and provides a high-level API and programming model, based on connections, sessions, destinations, message producers, and message consumers.
Habari Client for Artemis home page:
About Apache ActiveMQ Artemis:
Apache ActiveMQ Artemis has a proven non blocking architecture. It delivers outstanding performance. Its features include AMQP protocol support, OpenWire support for ActiveMQ 5 clients, STOMP protocol support, HornetQ Core protocol support for HornetQ 2.4,2.5 clients, JMS 2.0 and 1.1 support.
ActiveMQ Artemis home page: https://activemq.apache.org/artemis/
Habarisoft is pleased to announce the release of ScroogeXHTML 6.9, a fast RTF to HTML / XHTML converter library for Delphi and Free Pascal.
Habari Web Components is a web application framework for small to medium size HTTP services, based on the popular open source TCP/IP library for Delphi and Free Pascal, Internet Direct (Indy).
Online demo: the online demo on https://secure.habariwebcomponents.de/demo/index.html runs on a Ubuntu Linux system (please note that Linux is not officially supported).
Demo download: The demo download contains documentation, tutorial project sources and the “Flightplan” executable demo which uses jQuery mobile.
Version 3.5.4 of the RabbitMQ open source message broker introduced a change in the STOMP plug-in to improve compatibility with the PHP STOMP extension. Unfortunately this change breaks client applications which do not expect additional newline characters after the end marker of a STOMP frame.