is a lightweight Java middleware, designed to combine power and simplicity.
When designing a distributed system, the question invariably arises: How to connect components? Control all and start at the socket level, at the price of having to design and implement an application specific protocol? Or use an existing middleware, like RMI, CORBA, or WebServices, at the price of introducing considerable overhead, through extra tools, application servers, ORB, registry, IDL, and/or XML configuration?
If your system is purely Java, OCSelot may be an alternative that spares you a lot of design, implementation and administration effort.
|Is easy to use||Only a few lines of Java code: no extraneous ORB, no app server, no external configuration files|
|Is easy to master||Slim API of pure, familiar Java: No IDL (interface definition language) and no XML formats to learn|
|Is modelled after the Proxy design pattern||Invocations of local object ("proxy") are delegated to remote object ("subject")|
|Can turn given classes and interfaces into communicators||Uses POJOs (Plain Old Java Objects) for services and derives client-side proxies automatically: no interface definitions and no dedicated classes required|
|Runs simple servers and powerful clients||Server can run oblivious of its job, client may populate it with the service objects it needs|
|Makes dual development easy||Local and remote versions almost identical, simple to switch modes at runtime|
|Provides for security||Guard servers with passwords, IP patterns, data encryption, and class restrictions against unauthorized access and use|
|Has tiny footprint||Runtime JAR with just 65 KB (ideal for applets)|
In short, it's slender, elegant, and smart. A bit like the cat that inspired its name.