Based on the award winning Caciocavallo project, CacioWeb is a peer to enable Java applications to be deployed without plugin in an HTML5 capable browser.
The solution is tightly integrated with the Java API, so while the application runs on a JVM on the server, all the drawing, event handling, windowing, etc take place on the client. On the client side, it only requires a HTML5 capable browser (it goes in turbo mode on websocket enabled browsers).
The solution is somewhat comparable to a VNC based solution with some important differences, for example, unlike a VNC solution, it hooks directly into the graphics stack of Java.
This means that all the drawing and windowing commands are sent directly from the Java graphics stack to the client’s JavaScript engine.
Java applications deployed using CacioWeb run on a wide variety of systems, including such systems that don’t have (or can’t have) Java or a suitable plugin installed, like Android phones and Apple products.
Deploy Once, Run Anywhere
In addition to support the Free version and develop CacioWeb completely in the open, at the LadyBug we support a special package specifically designed for Corporate users.
Work in progress in this field include:
- a web frontend for easy deployment and configuration of Java Swing applications to the CacioWeb nodes.
- a management service that offers a way for automated deployments using common build tools like Ant or Maven.
- addition of a clustering service to allow hosting of CacioWeb nodes on each server or hosting of several servers with several nodes each. This feature is particularly useful to exploit the benefit of load balancing and stability.
In addition to the above mentioned characteristic, which are still work in progress, we plan on adding the following features in the near future:
- provide access to the client’s filesystem using standard Java APIs like java.io.File
- support client side printing via the standard Java printing APIs.
Last but not least, CacioWeb ships as a standard .ear file, ready to be deployed on any J2EE compatible server.