Nov 25

This example implements a part of the ELS functionality dealing with linking a number of related messages until all are collected or a time period elapses, whichever is the sooner, a counted and timed correlation pattern, or an aggregator pattern with a timer.

Unlike the implementation from Example 2, on which it is heavily based, this implementation will correlate a varying number of messages, statically set at design time, or as many as it receives within a given time period expressed as a static duration. Thus the same implementation can be used to correlate 2, 3, 10 or 30 messages, by modifying the value of a single business process attribute, over a statically configured time period. By obtaining the value of the business process attribute which controls the message count or which controls duration, from the environment or the initial message, one will change the static implementation into a dynamic counted and timed correlation solution.

CorrelationExample_03_CountedAndTimed.pdf discusses the solution and illustrates key points that vary between Example 2 and this example.

CountedAndTimes.zip is the Java CAPS 5.1.3 project export that implements the solution.

Nov 25

This example implements a part of the ELS functionality dealing with linking a number of related messages, a counted correlation pattern, or an aggregator pattern.

Unlike the simple implementation from Example 1, this implementation will correlate a varying number of messages, statically set at design time. Thus the same implementation can be used to correlate 2, 3, 10 or 30 messages, by modifying the value of a single business process attribute. By obtaining the value of the business process attribute, which controls the message count, from the environment or the initial message, one will change the static implementation into a dynamic counted correlation solution.

CorrelationExample_02_StaticCounted.pdf discusses the example and addresses key points in its implementation.

CountedStatic.zip is a Java CAPS 5.1.3 project export that implements the correlation in this example.

Nov 24

Correlations are probably the single least understood area of eInsight functionality. The example discussed in the attached document implements one of the “Event Linking and Sequencing” patterns, present in e*Gate 4.5 and eGate SRE, that is alleged to have been lost in ICAN and Java CAPS. In as much as implementing ELS in eInsight 5.1 using correlation requires some development, rather then just configuration, one could argue that it was lost. In as much as implementing ELS in eInsight 5.1 is possible and relatively simple, one could also argue the opposite.

The example discussed in the document, and illustrated with the Java CAPS 5.1.3 project export, implements a part of the ELS functionality dealing with linking a specific number of related messages, a counted correlation pattern, or an aggregator pattern.

CorrelationExamples_01_SimpleCountedTwo.doc – writeup

CountedSimple.zip – Java CAPS 5.1.3 Project Export

Nov 07

By default Java CAPS uses the Java Message Service infrastructure as its underlying messaging layer. Occasionally there is a requirement or a temptation to develop synchronous service, for example invoked as web services or as HTTP Request/Response services, that invoke some back-end component over JMS. In request/response scenarios the response must be delivered by the component which received the request, a JCD or a BP. If the request is passed to the nback-end infrastructure through a JMS Queue or Topic there arises an issue of getting the response back to the same instance of the JCD or a BP that sent the original request. The attached extract, JMS RequestReply, from an early draft of the “Java CAPS Basics – Implementing Common EAI Patterns“, discusses and illustrates how the JMS RequestReply() method of the JMS OTD can be used to implement this kind of functionality.

Nov 01

This note introduces the use of the Java Properties file, some locations where such a file can be put, a method to use a properties file residing in an arbitrary location without hardcoding the location, and the most basic method of access to the properties in the properties file.

Loading Properties from a File, discussion.

Loading Properties from a File, Java CAPS 5.1.3 project export

preload preload preload