Yet another exercise in the iep workshop...
Another small exercise for the iep workshop. You can get it here. It's about keeping only the last derived value of a stream, according to the need of the client of the process. Not something complex, and this can be considered to be a building block of the iep modeling. You can also get the wink file how to build the application...
Have fun!
Serge
Posted at 04:09PM Sep 09, 2009 by sergeblais in OpenESB | Comments[4]
Update to the iep workshop...
Hi all!
A new example has been added the iep workshop. It's on how to map an exernal DB to a relation update. This way, we can keep the external DB table up to par with the internal state of IEP. Fairly simple to do, but nice to have in your back pocket...
So, to take a look, just click here!
At the same time, thanks all for taking the time to learn about iep! Over a 1000 downloads for the samples included in the workshop to date!
Serge
Posted at 03:12PM Aug 31, 2009 by sergeblais in OpenESB | Comments[0]
DatabaseBC not Connecting?
I though this might be of interest, so here it is. While using the database BC for the first time on a MySQL database, I ran into this strange error:
Caused by: java.sql.SQLException:
Error occured while executing
SQL.insert into firetable (Fire) values (?)
Reason: No database selected SQLState: 3D000 ErrorCode: 1046 at org.glassfish.openesb.databasebc.OutboundMessageProcessor. executeOutboundSQL(OutboundMessageProcessor.java:1377) at org.glassfish.openesb.databasebc.OutboundMessageProcessor. processInOut(OutboundMessageProcessor.java:611)
Which basically means what is says. It doesn't know which database to connect to to execute the sql statement. So, when this happens, prefix the name of the table with the name of the database in the WSDL with the database binding. In my case this meant to change the sql from
insert into firetable (Fire) values (?)
to
insert into cep.firetable (Fire) values (?)
Nothing more to it.
Now back to our regular programming...
Serge
Posted at 10:18AM Feb 03, 2009 by sergeblais in OpenESB | Comments[0]
Need to increase IEP Performance?
Yesterday I started doing some performance testing for a project I am working on. By default, Glassfish is using org.apache.derby.jdbc.ClientDriver for the connection to Java DB. Well IEP is very (very) DB centric, so changing the jdbc driver from ClientDriver to org.apache.derby.jdbc.EmbeddedDriver made my application go 8x faster. So keep this in mind!
To change the driver in Glassfish, you go to the admin screen (http://localhost:4848 for me);
That's all there is to it!
Posted at 09:32AM Aug 12, 2008 by sergeblais in OpenESB | Comments[1]
EDA on a personal level...
EDL an interesting acronym. Event Driven Life. That is what I live. From putting email reminders on my calendar for meetings, bill payments, soccer games, to emergency events like my wife calling me "Were you supposed to pick up the kids?" And me giving the standard ACK, "Oh s***, I forgot..."
Once I realized where I got, I had to ask myself, how did I get there? No, not having kids, I mean the event driven life. Then I realized, because I needed it, because it makes my life simpler. It too complex now, without using some level of event processing.
What happens if you don't have the event notifications? You have to have the discipline to poll your calendar at relevant times. When you wake up, before going out, checkin' in with your spouse... You have to actively go out and ask for information. Ask anyone, especially my wife, I tend to forget about things... (Including updating this blog)
So, I figure, when do you need EDA in an enterprise? As soon as polling becomes too complex to support, EDA can be the job saver. EDA is more costly, computing wise, than direct call. Always was, always will be. But EDA will provide for "Just In Time Computing" Processing resources are used only when needed.
Now, when does EDA breaks down? Well, if my wife were to call me every 5 minutes to remind me of things, I know I would break down. Too many events, something we call event flooding can break down an EDA system if flood gates are not in place, like turning a phone off... (a throttling system can be used to slow down the influx or an event filtering system to reduce the number of events).
So, should you go EDA? Only if it makes sense. Only if systemic complexity is too high, if one system being offline stops all other from processing. EDA is more complex than direct call systems, but there are tools to help. IEP is one of them. IEP can take an influx of events, and preprocess it for filtering, redirection, any types of event processing you need, that is not too business logic intensive. (It can't reject an account opening application for example).
So, how should you get started with IEP? Well, this blog is a good place, there is also the IEP site on java.net and the iep wiki on wikis.sun.com. At the moment, processing event as events is still new to most of us, but it will catch on. It has to, life has become too complex for us not to use it. Gotta stop this blog now, an event notification just got in, time for soccer practice for my son....
Later!
Posted at 03:00PM Jul 14, 2008 by sergeblais in OpenESB | Comments[0]
IEP/cql Personal Discoveries...
A small list of one liners on "door opening" realizations about IEP...[Read More]
Posted at 10:30AM Mar 05, 2008 by sergeblais in OpenESB | Comments[1]
Output Possibilities on Intelligent Event Processor
This is a small entry to show the differences in the possible outputs of a iep process...
[Read More]
Posted at 10:00AM Mar 03, 2008 by sergeblais in OpenESB | Comments[0]
iep for Message Ordering...
Ever wondered about the gapwindow and the event sequencing that can be done in iep? Well, a colleague of mine asked me if I ever worked with it. I have to admit I did not. But now I do! Read on, and see how simple this can be...[Read More]
Posted at 10:30AM Feb 28, 2008 by sergeblais in OpenESB | Comments[0]
CQL in iep, a fishy example....
This entry is a sample of a Intelligent Event Processing sample. It is based around a fictitious fisherman, who is using JBI to monitor a river... This has been done to provide for a sample that is business agnostic, and allow for the reader to fill in the gap to see how can this technology be applied to his/her business area.[Read More]
Posted at 03:30PM Feb 21, 2008 by sergeblais in OpenESB | Comments[0]
CQL, Great, yet another standard....
CQL, a great model for event processing. Take a look at this entry, this provides a tiny summary and some pointers to that new way (well at least for me!) of thinking about processing events in the enterprise....[Read More]
Posted at 03:30PM Feb 21, 2008 by sergeblais in OpenESB | Comments[0]
4/4 XACML SE used from a BPEL process
This is the final entry in the introductory serie about creating service engines. In the first entry, the service engine was created. In the previous entry, we did a simple test.
In this entry, we will call the XACML service engine from a BPEL process, and see how multiple service engines can call each other.
Posted at 03:00PM Dec 10, 2007 by sergeblais in OpenESB | Comments[0]
3/4 - XACML JBI Deployment Module Creation
This entry focuses on the Service Unit creation.
Posted at 01:00PM Dec 05, 2007 by sergeblais in OpenESB | Comments[0]
2/4 - Using the SE Wizard of NB 6.0...
This is the second entry in the XACML SE creation. This entry describes the usage of the SE Wizard and the modifications that were done to the generated code. You can find the previous entry here.
[Read More]
Posted at 12:00PM Dec 04, 2007 by sergeblais in OpenESB | Comments[4]
Open ESB Acronyms...
Tags: Open ESB, SOA, Integration, JBI
In multiple posts, I'll be using a lot of acronyms, most of which are relevant solely to JBI and Open ESB. So, to avoid duplication, I'll be maintaining a list here, of my own definitions. They are in no way, shape or form the real definitions, but they are close enough as working definitions.
Posted at 05:04AM Dec 04, 2007 by sergeblais in OpenESB | Comments[0]
1/4 - Getting involved in JBI, an XACML engine v1
Introduction to creating a Service Engine. This describes the initial motivation, and the roadmap ahead of creating an XACML SE. The XACML SE will be based on the jar file provided by the Sun Labs, that can be found at the sourceforge.
Posted at 11:00AM Dec 01, 2007 by sergeblais in OpenESB | Comments[4]