BT
x Your opinion matters! Please fill in the InfoQ Survey about your reading habits!

Building Complex Event Processing applications in Java with WebLogic Event Server

by Gavin Terrill on Aug 27, 2007 |
Complex Event Processing (CEP) is an extension of the traditional Event Driven Architecture. Wikipedia explains that: "CEP employs techniques such as detection of complex patterns of many events, event correlation and abstraction, event hierarchies, and relationships between events such as causality, membership, and timing, and event-driven processes".

BEA recently published a tutorial on building an Complex Event Processing application based on their new WebLogic Event Server - an "event-driven SOA real-time Java container".  The tutorial is designed to help readers in "understanding the design principles of real-time event-driven architecture", and begins by explaining that OSGi and the Spring Framework underpins the application configuration:
The event-driven programming paradigm supported by the WebLogic Event Server provides for a Spring-based declarative assembly and configuration
In a CEP based application, rules are used to filter and correlate incoming event streams. BEA has introduced their own Event Processing Language (EPL):
EPL is a powerful language that enables you, the developer, to implement a comprehensive range of queries to "extract" the events from the incoming data and invoke your business logic (POJO). What is really cool is that EPL is defined outside the programmatic aspects of the application, which can facilitate high developer productivity and flexibility. In fact, you can dynamically alter queries without recompiling, bundling and republishing the associated application to enable your solution to react to changing conditions or circumstances in real time.
The WebLogic Event Server was designed with real-time requirements in mind using BEA's msA (micro-services Architecture):
At the core of its design is an infrastructure for providing deterministic, extremely low application latencies under predetermined peak workloads — an essential requirement for high-performance real-time applications.
BEA provides an Eclipse plugin for building WebLogic Event Server applications, and have made it easy to get started by providing a HelloWorld example. In the example, all of the neccessary files for a simple application are provided including the Java source, an EPN (Spring cofiugration) file and EPL definitions. The Java source files includes a HelloWorldBean that listens to events generated the the event processor by implementing the WebLogic EventSink interface. The HelloWorldAdapter is used to generate events, and extends the ActiveAdapter framework class.

The tutorial concludes by pointing out that with the IDE features "we are providing developers with capabilities to simplify the dynamic creation and deployment (publishing) of our new WebLogic Event Server applications".

More information on the WebLogic Event Server and WebLogic Real Time products is available here.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT