The following sections describe the new and changed features in Oracle CEP 10.3:
Version 10.3 of Oracle CEP includes the following new features:
You can now configure multiple servers in an Oracle CEP domain, and cluster them together to achieve high availability.
See Configuring and Using Oracle Complex Event Processing Clusters.
Oracle CEP applications can optionally publish or consume events to and from a cache to increase the availability of the events and increase the performance of their applications. A cache is a temporary storage area for events, created exclusively to improve the overall performance of your application; it is not necessary for the application to function correctly.
The event repository feature of Oracle CEP allows you to record events flowing through an event processing network (EPN) and store them so you can later play back the events. The event repository is configured per stage, such as a processor or stream.
See Record and Play Back Events Flowing Through an EPN in the Visualizer Online Help document.
Oracle CEP Visualizer, henceforth called Visualizer for simplicity, is a Web 2.0 application that consumes data from Oracle CEP, displays it in a useful and intuitive way to system administrators and operators, and, for specificied tasks, accepts data that is then passed back to Oracle CEP so as to change it configuration.
An HTTP Publish-Subscribe Server is a mechanism whereby Web clients, such as browser-based clients, subscribe to channels, receive messages as they become available, and publish messages to these channels, all using asynchronous messages over HTTP. Every instance of Oracle CEP includes a pub-sub server that programmers can use to implement HTTP publish-subscribe functionality in their applications.
See Using and Creating HTTP Publish-Subscribe Adapters.
Oracle CEP provides both inbound and outbound JMS adapters that you can use in your event applications to send and receive messages to and from a JMS queue, respectively, without writing any Java code.
See Using JMS Adapters.
The Configuration Wizard is a new tool for creating Oracle CEP domains.
See Creating a Domain Using the Configuration Wizard.
The event processing language (EPL) has the following new features:
SELECT
clauses to be embedded within another SELECT
or WHERE
clause. Both IN
and EXISTS
keywords are available when subqueries are used in the WHERE
clause. Previously they were available only in the FROM
clause and without the ability to correlate the inner and outer query.See Simple and Correlated Subqueries.
In conjunction with dynamic event properties, the following functions have also been added to this release:
INSTANCEOF
,
CAST
, and
EXISTS
.
Oracle CEP provides a variety of mechanisms to protect server resources such as data and event streams, configuration, username and password data, security policy information, remote credentials, and network traffic.
Oracle CEP supports various security providers for authentication, authorization, role mapping, and credential mapping. As initially installed, Oracle CEP is configured to use the file-based providers for both authentication and authorization. You can also configure the system to use an LDAP or DBMS provider.
For details, see Configuring Security for Oracle CEP.
Version 10.3 of Oracle CEP includes the following changed and deprecated features:
The HelloWorld example has been simplified in the following ways:
See HelloWorld Example.
The Oracle CEP programming model has changed in the following ways:
com.bea.wlevs.ede.api.RunnableBean
.See Overview of the Oracle CEP Programming Model.
So as to support clustering and a multi-server environment, the directory structure of the out-of-the-box and sample domains has changed.
Previously, all domain files were located directly under the domain directory, such as ORACLE_CEP_HOME
/ocep_10.3/samples/domains/helloworld_domain
, where ORACLE_CEP_HOME
refers to the top-level installation directory of Oracle CEP.
In the 10.3 release, the domain directory contains one or more sub-directories that correspond to a single server; this directory contains all the configuration files for that server. For example, the HelloWorld domain contains a single server whose configuration files are located in the following directory: ORACLE_CEP_HOME
/ocep_10.3/samples/domains/helloworld_domain/defaultserver.
The new Configuration Wizard for creating domains follows this updated directory structure.
See Creating an Oracle Complex Event Processing Domain.
The -start
and -stop
commands of the Deployer tool have been deprecated.
When using the -install
command to install an application, Oracle CEP automatically starts it after all internal initialization tasks have completed. Subsequently, if you stop and start the Oracle CEP server instance, the application is automatically stopped and started, respectively.
The Deployer tool has two new options: -suspend
and -resume
. Users should use -suspend
to suspend a currently running application, and -resume
for it to resume running.
See Deployer Command-Line Reference.
The management framework of Oracle CEP has been overhauled in this version.
For details, see Managing Applications, Servers, and Domains Using MBeans. See Backward Compatibility Issues for changes that are not backward compatible to the previous version of Oracle CEP (WebLogic Event Server 2.0.)
You can now specify logging severity for modules of a server, in addition to the logging severity of the server itself. The severity of the modules overrides that of the server.
For details, see Configuring Logging and Debugging.
Upgrading to Oracle CEP 10.3 is a two-step process: first you must upgrade your applications and then you must upgrade the domain to which the applications are deployed. The following sections describe each step:
This section describes the steps you must take to upgrade an application that you developed in Version 2.0 of WebLogic Event Server so that it runs on Oracle CEP 10.3.
MANIFEST.MF
file to import new versions of Spring framework and Oracle CEP packages, as well as new required packages. In paticular:2.5.5
. For example:Import-Package:
org.springframework.aop.framework;version="2.5.5
",
org.springframework.aop;version="2.5.5
",
...
3.0.0.0
. For example:Import-Package:
com.bea.wlevs.ede;version="3.0.0.0
",
com.bea.wlevs.ede.api;version="3.0.0.0
",
...
Import-Package
header if they are not already included:Import-Package:
com.bea.wlevs.management.configuration.spi;version="3.0.0.0",
...
com.bea.wlevs.management.spi;version="3.0.0.0",
com.bea.wlevs.monitor;version="3.0.0.0",
com.bea.wlevs.spi;version="3.0.0.0",
com.bea.wlevs.spring.support;version="3.0.0.0",
commonj.work;version="1.4.0.0",
org.springframework.osgi.extensions.annotation;version="1.1.0",
com.bea.wlevs.ede.spi;version="3.0.0.0",
com.bea.wlevs.configuration.internal;version="3.0.0.0",
Note: | This change is a result of the upgrade of the Spring framework (from 2.0 to 2.5) that occurred between WebLogic Event Server 2.0 and Oracle CEP 10.3, not as a direct result of the Oracle CEP upgrade. |
Refer to the appropriate 2.5 XSD Schemas for any changes:
Spring: http://www.springframework.org/schema/beans/spring-beans.xsd
Spring DM: http://www.springframework.org/schema/osgi/spring-osgi.xsd
The following bullets list some of the typical changes you might have to make; the following list is not complete.
<osgi:service-property>
tag, use the <entry>
tag with the key
and value
attributes, rather than the old <prop>
tag. For example, update the following 2.0 tag:<osgi:service-properties><prop key="type">SocketAdapterType</prop>
</osgi:service-properties>
<osgi:service-properties><entry key="type" value="SocketAdapterType"/>
</osgi:service-properties>
value
or ref
attribute of an instance-property must always be set to an explicit value; it can no longer be an empty string to indicate an implicit use of a default value. For example, update the following 2.0 tag:<wlevs:adapter id="fileAdapter" provider="FileAdapterType">
<!-- file: empty value uses default<wlevs:instance-property name="file" value="" />
<wlevs:listener ref="algoTradingProcessor"/>
</wlevs:adapter>
to something like the following:
<wlevs:adapter id="fileAdapter" provider="FileAdapterType"><wlevs:instance-property name="file" value="test.file" />
<wlevs:listener ref="algoTradingProcessor"/>
</wlevs:adapter>
After you have made the preceding changes, reassemble the application and deploy it to Oracle CEP 10.3. See Assembling and Deploying Oracle Complex Event Processing Applications.
If, during deployment, you get an exception that indicates that a package is invisible, add this package to the Import-Package
header of the MANIFEST.MF
file, then reassemble and redeploy the application. Keep adding packages in this manner until the application deploys successfully.
This section describes the steps you must take to upgrade a WebLogic Event Server 2.0 domain so that it runs correctly in Oracle CEP 10.3.
For clarity, it is assumed that the existing WebLogic Event Server 2.0 domain is located in the /bea/user_projects/domains/mydomain20
directory.
For the purposes of this procedure, it is assumed that the new Oracle CEP 10.3 domain is called mydomain30
, it contains a single server called defaultserver
, and the server files are located in the /oracle_cep/user_projects/domains/mydomain30/defaultserver
directory.
See Creating and Updating an Oracle CEP Standalone-Server Domain.
lib/XACMLAuthorizerInit.ldift
lib/XACMLRoleMapperInit.ldift
The WebLogic Event Server 2.0 files are located relative to the domain directory (/bea/user_projects/domains/mydomain20
in our example) and the Oracle CEP 10.3 files are located relative to the the server directory under the domain directory (/oracle_cep/user_projects/domains/mydomain30/defaultserver
in our example).
atnstore.txt
file in the WebLogic Event Server 2.0 domain, located in the config
sub-directory of the main domain directory, and add the new Oracle 10.3 groups:group: wlevsDeployers
description:
group: wlevsApplicationAdmins
description:
group: wlevsBusinessUsers
description:
group: wlevsOperators
description:
startwlevs.cmd
(Windows) or startwlevs.sh
(Unix) command scripts in the WebLogic Event Server 2.0 domain to point to the new Oracle 10.3 binaries.stopwlevs.cmd
(Windows) or stopwlevs.sh
(Unix) command scripts in the WebLogic Event Server 2.0 domain to point to the new Oracle 10.3 binaries.The following are non-backward compatible changes in the management framework:
isRegistered()
, preRegister()
, postRegister()
, getMBeanInfo()
.StageMBean
and replaced by com.bea.wlevs.monitor.management.MonitorRuntimeMBean
.com.bea.wlevs.management.boot.BootMBean
has been removed.com.bea.wlevs.management.configuration.ConfigSessionBean
has been removed.ObjectName
for the AppDeploymentMBean
has been changed to include the DomainMBean
as a parent.com.bea.wlevs.server.management.mbean.ServerRuntimeMBean
has been changed to com.bea.wlevs.management.runtime.ServerRuntimeMBean
.com.bea.wlevs.management.api_*
and com.bea.wlevs.management.spi_*
, in addition to the existing com.bea.wlevs.management_*.
com.bea.wlevs.spi.ManagementService
has been moved from bundle com.bea.wlevs.spi_*
to com.bea.wlevs.management.spi_*
.