Adam Bien's Weblog
JCA, Distributed, Transactional Collections, ...in 2 Minutes And 363 kB
Hazelcast is a small library (363 kb, version 1.5RC1), which comes with distributed, transactional collections and a Java EE JCA (shipped with the zip!). The connector is only needed in Java EE environments to transparently propagate e.g. EJB transactions to hazelcast (outbound transactions).
To install you have only to download, extract and start the sample application (run.bat - it worked perfectly in my case). This should take less than 2 minutes. The installation of the JCA connector is even easier - just drop the hazelcast-ra.rar file into e.g. [glassfish]/domains/domain1/autodeploy/ (I tested the installation only with GF v2).
The screencast (12 min) explains the concurrent, transactional access to distributed collections - well done.
I looked at Hazelcast last year - I liked the ease of use and the quality of the screencast, but not so impressed by the unclear licensing. It was free but not open - and without clear licensing. Shortly after I complained about this fact (no idea whether opensourcing of this library was actually my fault :-)), it changed, now it is a Google Code project with Apache license and so interesting for commercial projects. I guess good support is available as well - at least the main committer answered the question about licensing immediately in my case.
Hazelcast is an interesting foundation for creation of clusters, grids - or "Cloud Computing" :-).
Posted at 09:22AM Feb 06, 2009 by Adam Bien in Java EE 5 Architectures And Idioms | Kommentare[4]
[my tweets]
Rss My book: Real World Java EE - Rethinking Best Practices


Did you try the JCA module? If so, which version? In the open source version, the ra.xml is wrong and the connector source does not seem to do anything useful. :-(
Gesendet von Thomas am February 10, 2009 at 12:05 AM CET #
Hi Thomas,
"Did you try the JCA module?"
yes, with GF v2ur2.
"If so, which version?"
Last year, around november :-)
"In the open source version, the ra.xml is wrong.."
GF complained about the license tag - but it was only a warning.
"...does not seem to do anything useful..."
...except propagating transactions to the Hazelcast framework :-),
thanks for your feedback!,
adam
Gesendet von Adam Bien am February 12, 2009 at 09:20 PM CET #
Ah, ok. Got it. Sick little bastards. :-)
Not exactly the way the JCA spec was intended to be used. It makes it impossible to have multiple collection "spaces" in one jvm instance.
I just imagine what interesting results you will get, if you deploy a couple of applications that unintentionally share the same map name. Fun.
As an admin, I would probably disallow the use of this library. :-)
Gesendet von Thomas am February 13, 2009 at 05:09 AM CET #
Hi Thomas,
With JCA adapter, Hazelcast is simply attaching to container's transaction. Hazelcast supports only LocalTransactions so no XA implementation in the code. What makes you say that the code doesn't do much? What else should it do that it doesn't?
Can you please also explain why you think that it is not the way JCA spec was intented to be used?
"I just imagine what interesting results you will get, if you deploy a couple of applications that unintentionally share the same map name."
You can get interesting results if you unintentionally share other stuff in life too :) With Hazelcast's grouping feature you might find a way to not share.
http://code.google.com/docreader/#p=hazelcast&s=hazelcast&t=ConfigGroup
I will be happy to hear your suggestions or feedback to improve Hazelcast. oztalip at gmail dot com.
Regards,
-talip
Gesendet von Talip Ozturk am March 16, 2009 at 02:18 AM CET #