Tuesday April 14, 2009
A Tangled Web
GlassFish ESB v2.1 Milestone 2 Available
Today
we announced the availability of the second milestone build of GlassFish
ESB v2.1, the next release of our GlassFish ESB offering. This release
is built on GlassFish v2.1 and NetBeans 6.5. Additional components, the
IEP SE (Intelligent Event Processor) and the Scheduler BC, are included
in this release. Note that due to the move to NetBeans 6.5, the design
time modules for GlassFish ESB v2.1 will not work with GlassFish ESB
v2, which was based on NetBeans 6.1. This milestone includes quite a few bug fixes.
You can download this milestone build from the OpenESB downloads page. Go to the heading "GlassFish ESB v2.1 Milestone 2" for the download link and instructions.
Posted at 01:07PM Apr 14, 2009 by mwhite in Open ESB |
GlassFish ESB v2.1 Milestone 1 Available
Today we announced the availability of the first milestone build of GlassFish ESB v2.1, the next release of our GlassFish ESB offering. This release is built on GlassFish v2.1 and NetBeans 6.5. Additional components, the IEP SE (Intelligent Event Processor) and the Scheduler BC, are included in this release. Note that due to the move to NetBeans 6.5, the design time modules for GlassFish ESB v2.1 will not work with GlassFish ESB v2, which was based on NetBeans 6.1.
You can download this milestone build from the OpenESB downloads page. Go to the heading "GlassFish ESB v2.1 Milestone 1" for the download link and instructions.
Posted at 05:30PM Mar 19, 2009 by mwhite in Open ESB | Comments[2]
How extreme can a motorcycle get?
Every now and then, someone decides to build a totally outrageous machine. I remember the guy in the UK who built a working 48-cylinder motorcycle by grafting 6 V-8 engines into a single power plant. I saw/heard a video clip of the bike actually being started up; it was a mechanical marvel, albeit completely impractical for any real use.
Well, enter German engineer Clemens F. Leonhardt, whose company, Leonhardt Manufacturing, has designed and built an absolute behemoth of a motorcycle, the Gunbus 410. Looking at the first two photos, it doesn't look that big, but scroll down to gain a proper perspective.





A typical superbike-class sport bike has a 1000cc engine, which translates to 61 cubic inches. This baby is 410 cubic inches, or 6728cc's! The fuel-injected, 45 degree V-Twin engine runs through a 3 speed transmission with reverse and puts out 523 foot pounds of torque. The seat height is a reasonable 31.5 inches but overall length is an insane 136 inches. At 1433 pounds it might be a beast to handle. I'm still waiting to see a road test...
Posted at 12:44PM Feb 19, 2009 by mwhite in Motorcycle Mania | Comments[0]
GlassFish Portfolio with GlassFish ESB officially announced
On February 10, Sun Microsystems announced the GlassFish Portfolio (see here). With this announcement Sun has also announced commercial support options for GlassFish ESB, including a price list.
You can see the GlassFish ESB landing page for details: http://www.sun.com/glassfishesb.
Here's a news link on Yahoo! Finance that mentions some of our customers.
Posted at 11:45AM Feb 11, 2009 by mwhite in Open ESB |
New article on Distributed JBI
My collegue Derek Frankforth has written a nice article about different ways to implement a distributed JBI system using OpenESB. The article is published on InfoQ here. Anyone with an interest in using the features of OpenESB in a GlassFish cluster environment should read this article for some insights on how it all works.
Posted at 07:50AM Feb 10, 2009 by mwhite in Open ESB |
Bimota BB1 Progress
Here's the latest update on my Bimota BB1. Frank emailed me pics of the painted bodywork today. One minor detail is wrong; the fuel tank is supposed to be half black. Hopefully that won't be too much of a hassle for him to correct. But the paint looks fantastic in the photos! He'll be sanding/applying decals/clear-coating soon, I just have to wait for the corrected left side decal to get here before he can start. Oh and here's some amazing news on the decals - Don from Scuderia called me yesterday and Bimota still has a few of the decals in stock. Of course the one they are missing is the one I need, but they said they could probably make another one. So hopefully we'll hear back from them quickly.
Here are the pics:


Posted at 06:01PM Feb 06, 2009 by mwhite in Motorcycle Mania | Comments[0]
Nice article about GlassFish ESB v2
| |
In his article on developer.com, Kevin Meeks makes an interesting observation: “…introducing Open Source tools into any organization can be quite challenging, but an unexpected ally arrived recently which has increased the attractiveness of that option: Budget Reductions”. The article describes his recent evaluation of a number of different Open Source projects for an enterprise architecture technology stack. |
|
Having used GlassFish for the last 18 months, Kevin was “…extremely pleased with its stability as well as the quality of the admin console”, and he decided to take a close look at another product coming out of the GlassFish community: GlassFish ESB. Kevin looked at what’s available in the OpenESB community, the uptake of the community, the cost model, etc. and liked what he saw. He concludes: "There are significant developments underway in the GlassFish project community, and as your SOA/EA efforts may face tighter budget challenges, there is real value to be leveraged by considering the GlassFish Java EE Server and GlassFish ESB project as potential core components within your infrastructure. The excellent integration with NetBeans IDE simply adds to the value proposition." Kevin's experience
is illustrated by a nice tutorial that guides the reader through the
entire process, from installation to creating and testing a simple
composite application. This is an excellent article for anyone wanting
to quickly become familiar with GlassFish ESB. |
|
Posted at 11:07AM Feb 04, 2009 by mwhite in Open ESB |
Bimota BB1 Repairs Underway
Finally, an update on my Bimota BB1: A couple of weeks after I posted about the accident, I was contacted by the driver's insurance company about the accident. As it turns out, she did have insurance, she just didn't give me the right information, and refused to respond to my phone messages. Long story short, the insurance folks agreed it was not my fault, and they are paying for the medical bills and the repairs to the bike.
Unlike repairs to a more current model actually sold in the US by dealerships, where you just drop the bike off at the dealership and let them do all the legwork, it was up to me to locate parts, decals, and a painter. The really difficult part was
finding the original graphics decals. From the Bimota mail list that
I'm on, I was able to find a company down in Australia that had made a
decal set for a BB1 in the past. I got the decals in December and
they're nearly perfect. One for the left side needs to be modified and
remade, but I'm hoping someone local can do that for me. I was able to
find a shift lever through through my friend Bob Steinbugler, a friend and Bimota dealer in Raleigh,
NC. I discovered that the billet aluminum footpeg mount was slightly bent, so I will try to straighten that out by heating it and applying some mild force (i.e. carefully beating it with a hammer without denting the aluminum). The only non-stock cosmetic feature of the bike is that the original mirrors are gone and have been replaced with CRG bar-end mirrors (this was done before I owned the bike). I was able to find a replacement for the damaged left-side mirror online (CRG is down near Monterey).
A fellow customer at my local Aprilia/KTM/Bimota dealership (Scuderia West in San Francisco) referred me to a really reputable painter in Livermore, Frank Zucchi (FZ Restoration) and he's started the work. As of a couple of weeks ago, the bodywork had been stripped and prepped for priming. Now here's an example of excellent customer service: Frank emailed me a status update complete with photos of the work in process, totally of his own volition. How many places would bother to do that? Hopefully I'll get another update from him this week.
Here are a few pics of the prepped bodywork:


This is what the bike looks like without its bodywork. It's actually a really cool machine underneath the covers:

I'm hoping the bike will be ready to ride sometime in February. I'll post an update after the next stage of repairs.
Posted at 11:04AM Jan 25, 2009 by mwhite in Motorcycle Mania | Comments[2]
Business Rules Service Engine for OpenESB
Milan Fort has contributed a new Business Rules service engine to our community. It exposes a deployed ruleset as a stateless service within the JBI environment. It works with any JSR94-compliant rules engine and has been tested with Jess, Jamocha, and Drools. For more information see the following links:
Give it a try and let us know what you think. You can provide feedback on the OpenESB users mail list (users@open-esb.dev.java.net) or the forum view on Nabble.
Posted at 04:09PM Jan 20, 2009 by mwhite in Open ESB |
Scheduler Binding Component
The new Scheduler Binding Component is in incubator status and is available for download. It works in both the OpenESB v2 and Fuji environments. For more information, check out these links to Ed Wong's blog:
- Ed's blog entry on new Scheduler BC
- Ed's blog entry on Cron Trigger for Scheduler BC
- Ed's blog entry on Systemic Qualities in Scheduler BC
- Ed's blog entry on Fuji-enabled Scheduler BC
- Ed's blog entry on adding Scheduler BC to your Fuji environment
For you Fuji fans, the Scheduler BC archetype is now integrated into Fuji and the Scheduler BC bundle can be downloaded from the Maven repository on dev.java.net. Note that you still need to download and install the Spring libraries referred to in Ed's blog entry on adding the Scheduler BC to a Fuji environment. Do this in whatever OSGi runtime you are using for your Fuji work.
For even more information, see the Scheduler BC wiki page.
Posted at 02:32PM Jan 15, 2009 by mwhite in Open ESB |
Fuji Milestone 3 is here!
Hot on the heels of the recently-released GlassFish ESB Release Candidate 1, we continue to move forward on Project Fuji, our exciting new OSGi-based technology which will form the foundation for the next-generation SOA integration platform, GlassFish ESB.next. This project has two sides: one is evolutionary, meaning Adapters (binding components) and Containers (service engines) from the current v2 offerings will run in Fuji, as will applications built using the v2 tooling. The other side is revolutionary, in that lots of innovation is happening in the area of productivity.
Milestone 3 of Project Fuji introduces a cool new lightweight web-based tooling option for composing applications.
From this page you can watch the Fuji Milestone 3 Screencast showing how a simple drag and drop browser interface is used to easily build the same demo that was built in Miletone 2. It is worth noting here that the browser interface creates the same IFL that was written in the IDE for Milestone 2, and that you can checkout the IFL created by the web-based tooling and import the project into your IDE if you wish.
All of this ties right into the goal of Fuji: productivity through flexibility, agility, and ease of use. Here's what this milestone provides in those areas:
- Flexibilty: the tooling choices are expanded with the availability of a browser-based UI
- Agility: there is the new "automatically save and deploy" option in the tooling, which is one step towards our goal of making it very easy to develop, test and correct your application as you go along
- Ease of use: the web-based tooling provides simple visual modeling of enterprise integration patterns with simple properties dialogs to configure them
As always, we welcome feedback on Project Fuji!
Posted at 05:48PM Nov 26, 2008 by mwhite in Open ESB | Comments[0]
Open ESB Logging
Extensive logging capabilities are available in Open ESB v2 to help diagnose runtime problems and to help a component developer diagnose problems within a component. This discussion describes what logging facilities are available in the JBI runtime and how to control the levels of the various loggers. For a detailed look at the logging support for JBI components, please see my blog entry here.
JBI Runtime Logging
The JBI runtime has separately controllable loggers for its various sub-components to allow diagnosis at a fine-grained level without generating excessive amounts of logging output. There is also a top-level logger, com.sun.jbi, which is the parent of all of the sub-component loggers. The first time the runtime is initialized, the top-level logger defaults to a level of INFO, and all sub-component loggers have their levels set to null so that they inherit their levels from the top-level logger. Any logger levels that are set thereafter are always persisted so that they are restored after a restart of the runtime. There is a special logger level, DEFAULT, recognized by the runtime, that resets a logger level to null so that it reverts to inheriting its level from its parent logger. This is supported by the admin console, asadmin, and asant.
Here is a list of the main runtime loggers:
- com.sun.jbi - the top-level logger for the entire runtime
- com.sun.jbi.framework - core runtime, includes the startup and shutdown processing, all interactions directly with the JBI SPIs implemented by installed Binding Components and Service Engines, and all class loading management in the runtime
- com.sun.jbi.management - all management processing
- com.sun.jbi.management.AdminService - the administrative service responsible for bootstrapping the management system for all other system services, starting and stopping the the rmanagement services, and providing information that remote clients use to access system services and components
- com.sun.jbi.management.ConfigurationService - the configuration service which provides configuration support for the runtime and for all Binding Components and Service Engines
- com.sun.jbi.management.DeploymentService - the deployment service which provides support for deployment of Service Assemblies into the runtime
- com.sun.jbi.management.InstallationService - the installation service which provides support for installation of Binding Components, Service Engines, and Shared Libraries
- com.sun.jbi.management.LoggingService - the logging service which provides a lookup mechanism for logger MBeans
- com.sun.jbi.messaging - the Normalized Message Router where all message exchange processing is performed
Controlling Runtime Loggers
Every runtime logger has a logger MBean which provides all of the operations necessary to manage the logger level. The administrative clients use these MBeans to perform all logger level setting. Here are examples showing how to manage runtime logger levels using asadmin. The following command is used to list the levels of all of the runtime loggers:
open1[66]% asadmin show-jbi-runtime-loggers
com.sun.jbi = INFO
com.sun.jbi.framework = INFO
com.sun.jbi.management = INFO
com.sun.jbi.management.AdminService = INFO
com.sun.jbi.management.ConfigurationService = INFO
com.sun.jbi.management.DeploymentService = INFO
com.sun.jbi.management.InstallationService = INFO
com.sun.jbi.management.LoggingService = INFO
com.sun.jbi.messaging = INFO
Command show-jbi-runtime-loggers executed successfully.
Suppose you want to change the the framework logger level to WARNING. The following command will do that:
open1[67]% asadmin set-jbi-runtime-logger "com.sun.jbi.framework=WARNING"
Command set-jbi-runtime-logger executed successfully.
Listing the loggers again you can see the framework logger level has changed:
open1[68]% asadmin show-jbi-runtime-loggers
com.sun.jbi = INFO
com.sun.jbi.framework = WARNING
com.sun.jbi.management = INFO
com.sun.jbi.management.AdminService = INFO
com.sun.jbi.management.ConfigurationService = INFO
com.sun.jbi.management.DeploymentService = INFO
com.sun.jbi.management.InstallationService = INFO
com.sun.jbi.management.LoggingService = INFO
com.sun.jbi.messaging = INFO
Command show-jbi-runtime-loggers executed successfully.
Now let's see how the logger level inheritance works. The following command will set the top-level logger level to FINE:
open1[69]% asadmin set-jbi-runtime-logger "com.sun.jbi=FINE"
Command set-jbi-runtime-logger executed successfully.
Note that the framework logger level has already been explicitly set, but all other loggers are still inheriting from the top-level logger:
open1[70]% asadmin show-jbi-runtime-loggers
com.sun.jbi = FINE
com.sun.jbi.framework = WARNING
com.sun.jbi.management = FINE
com.sun.jbi.management.AdminService = FINE
com.sun.jbi.management.ConfigurationService = FINE
com.sun.jbi.management.DeploymentService = FINE
com.sun.jbi.management.InstallationService = FINE
com.sun.jbi.management.LoggingService = FINE
com.sun.jbi.messaging = FINE
Command show-jbi-runtime-loggers executed successfully.
Suppose you want to change the framework logger to once again inherit its level from the top-level logger. Simply set its logger level back to DEFAULT:
open1[71]% asadmin set-jbi-runtime-logger "com.sun.jbi.framework=DEFAULT"
Command set-jbi-runtime-logger executed successfully.
Now the framework logger level is inheriting the last level set on its parent, the top-level runtime logger:
open1[72]% asadmin show-jbi-runtime-loggers
com.sun.jbi = FINE
com.sun.jbi.framework = FINE
com.sun.jbi.management = FINE
com.sun.jbi.management.AdminService = FINE
com.sun.jbi.management.ConfigurationService = FINE
com.sun.jbi.management.DeploymentService = FINE
com.sun.jbi.management.InstallationService = FINE
com.sun.jbi.management.LoggingService = FINE
com.sun.jbi.messaging = FINE
Command show-jbi-runtime-loggers executed successfully.
Now here's an example using the GlassFish admin console. The screen shots are of only the frame that is relevant, not the entire browser window, just to cut down on the size. This is the display of the runtime loggers and their levels:

Clicking on the drop-down list of logger levels for the Framework logger gives this:

Clicking on the FINE level in the drop-down results in this output. However, the actual logger level is not changed until the Save button is clicked:

After clicking on the Save button, the Framework logger level is changed:

Posted at 09:36PM Nov 15, 2008 by mwhite in Open ESB | Comments[0]
GlassFish ESB Release Candidate 1 available for download
We've reached a major milestone in our work on GlassFish
ESB. The first release candidate, RC1, is now available for download.
RC1 includes a lot of improvements and bug fixes compared with Milestone 2.
A list of these improvements will be posted shortly in the release
notes.
Unless major issues are found in this release candidate, the next drop will
be the GA release itself. This is planned for December 5.
A word of thanks to everyone involved, including those who downloaded
Milestone 2 and provided feedback. Please download RC1, and see if issues that
you may have reported earlier indeed have been fixed. If there are new issues,
please indicate if you think if they are show stoppers for the GA release.
Feedback can be posted on the users
mailing list.
Posted at 09:06AM Nov 15, 2008 by mwhite in Open ESB | Comments[0]
Fuji Milestone 2 is here!
Project Fuji is our exciting new OSGi-based technology which will form the foundation for the next-generation SOA integration platform, OpenESB v3. In Fuji Milestone 1, which we unveiled at JavaOne 2008, a simple yet powerful way to define services and link them together was introduced, including the option for web-based tooling. The demo we built for Milestone 1 was based on technologies like RSS and XMPP. As cool as this was, it left some people wondering how this would apply to more classic integration scenarios.
Well now it's time for Fuji Milestone 2, and we have chosen a classic integration scenario to demonstrate how easily and quickly it can be solved using the powerful but simple to use capabilities of Fuji. On the Fuji Milestone 2 page, you will find a summary of all the slick new features, including:
- support for additional Enterprise Integration Patterns
- enhanced interceptor support
- lots of new NetBeans tooling features
- new support for distributed JBI
- a reactive runtime which automatically refreshes updated applications
- new service types (database, FTP, SMTP, HL7)
- IFL enhancements
From this page you can also watch a screencast of the demo in action, download the Milestone 2 distribution, and get a complete picture of the demo application, including step-by-step instructions for creating and running the demo yourself.
Also have a look at Andi's entry on Fuji Milestone 2, which includes further background info, and for you IFL fans, check out Chikkala's entry on the new IFL editor features.
And, as always, we welcome feedback on Project Fuji!
Posted at 07:40PM Oct 23, 2008 by mwhite in Open ESB | Comments[0]
Don't ride a rare bike to work....
I just learned a hard lesson the week before last - don't ride a rare, irreplaceable bike to work! I was on my way to the office on my newly-acquired 1996 Bimota BB1 Supermono on a sunny Tuesday morning, when all of a sudden a car changed lanes right into me. This was on I-238 between I-580 and I-880 where they're doing construction and there's no shoulder, just a temporary concrete divider. It happened so fast that I had almost no time to react, and the car hit my right side, knocking me straight towards the concrete divider. I managed to veer away from that but the bike went completely out of control (even though I couldn't have been going more than 35mph) and finally fell down on its left side. My helmet never even hit the pavement but I got some nasty bruises on my right thigh, left knee, right forearm, and both hands. Of course I was wearing full protective gear so there was no road rash. I'm lying on the pavement and the driver of the car stopped behind me, got out, ran up and asked if I was ok, then started apologizing, saying she didn't see me.
Eventually the paramedics and CHP arrived, and the paramedics insisted on strapping me to a backboard and taking me to the ER in an ambulance even though I had been walking around when they arrived. I should have just refused to go, there was nothing wrong with me other than some bruises. My bike got towed away, and I am sure I could have ridden it home even though the shift lever was broken.
Oh, and here's the really good part - the insurance information I was given by the other driver is invalid! Perfect. Add insult to injury. Thank you very much.
Here are a few pictures of the damage. It looks minor, but there's no way to get replacement bodywork, or even the decals for a full paint job. I'm trying to get a shift lever as it's the same one used on a few other Bimota models (you can see where it is broken off in the second picture). It might take some time to find a painter who can restore this to its original look. I may be able to get custom decals made too, at a cost. The only lucky thing is that the bodywork is not plastic, it's fiberglass, so it can be repaired.
Posted at 10:56PM Oct 08, 2008 by mwhite in Motorcycle Mania | Comments[2]