JSR 359 - SIP Servlet 2.0
The reach of the Java EE Platform is not necessarily limited to ‘traditional’ Enterprise applications. A good illustration of that is the SIP Servlet technology, which brings together the SIP programming model and the Java EE platform. SIP (Session Initiation Protocol) is a network signaling protocol, used in the Telecommunication space, for creating and terminating sessions (e.g. VOIP sessions) with different participant(s).
A SIP Servlet is to SIP what a (traditional) Servlet is to HTTP, a server-side component managed by a container. A component developed using a Java API that interacts with clients by responding to incoming requests and returning corresponding responses. The SIP Servlet API (javax.servlet.sip) builds on the generic servlet API (javax.servlet) in much the same way as the HTTP Servlet API (javax.servlet.http) does. Given that, it is relatively easy to learn how to write SIP-based applications. A Converged Application is a (Telco oriented) application that spans multiple protocols (e.g. SIP, HTTP) and interfaces, such as Web, telephony, and other Java EE interfaces. A SIP container enables the development of applications that use SIP, HTTP Servlet API, and other Java EE APIs and components like JPA, JAX-RS, and messaging. To learn more about this, you might want to read the SIP Servlet Tutorial.
And like any major Java APIs, the SIP Servlet API is defined through the JCP. The SIP Servlet specification has recently been updated, see JSR 359.
Originaly posted on The Aquarium blog.