Cettia: A Java server for building real-time web apps
Solve tricky problems with WebSocket, JSON and switch statements with Cettia! This full-featured web app framework for Java allows developers to exchange events between the server and client in real-time. Cettia is now celebrating its 1.1 release!
Developing and maintaining real-time web apps is easier than ever with tools like WebSocket. However, sometimes things fall through the cracks. That’s where Cettia comes in!
We’ve already talked about Asity, the lightweight abstraction layer for web frameworks on the JVM. Today, we’re going to take a look at Cettia, the latest offering from Donghwan Kim. Cettia is a full-featured web app framework for Java that offers developers a whole host of features and support that other frameworks miss.
Building apps with Cettia
Cettia makes it possible for developers to avoid repetitive, boilerplate code while still scaling their app horizontally. This framework was designed specifically to support environments where WebSocket is not available. Plus, it can handle both text and binary data together, recover missed events, and provides a multi-device user experience.
Cettia works seamlessly with any web framework on the JVM, making it easy to adopt. It has a reliable full duplex message channel, even if given proxy, firewall, anti-virus software or arbitrary Platform as a Service (PaaS).
Thanks to an advanced event system, Cettia can classify events no matter if they take place server-side or client-side. It can exchange these events in real-time.
Information about sockets can be stored in situ; Cettia can search and find specific sockets based on the information inside.
Missed events can be recovered declaratively thanks to an event-driven architecture for disconnection.
- Matching sockets
- Sentence can accept or execute socket actions
- Changes to socket attributes
- A new socket identifier
Okay, yeah, it’s mostly a bunch of changes for sockets. But those are important! See the changelog for the full details.
Looking to try out this full-featured web app framework for Java? Cettia is free, open source and community driven. It is available on GitHub, but you should definitely check out the starter kit here. Requirements include Java 8+ and Maven 3+.
The getting started guide and introductory tutorial for building real-time web apps are both particularly helpful for anyone adopting Cettia.
As always, Cettia is an open source project and depends on developers like you to shape its future. Any and all help is welcome.