JSRs: Java Specification Requests
JSR 22: JAINTM SLEE API Specification
JCP version in use: 2.1
Java Specification Participation Agreement version in use: 1.0
Descriptions of all interfaces, classes, exceptions and requirements to develop portable telecommunication services and application frameworks so that services once developed will run on any JAINTM SLEE-compliant execution environment.
Please direct comments on this JSR to the Spec Lead(s)
The following has been updated since the original Specification:
JAINTM Service Logic Execution Environment API SpecificationJSR 22 has refined its focus on the Service Logic Execution Environment portion. For development of SCE, please refer to JSR-000100 JAINTM Service Creation Environment.
Original Java Specification Request (JSR)
Original Summary: The specification includes complete descriptions of all the interfaces, classes, exceptions and requirements to develop portable telecommunication services and application framework so that services once developed will run on any JAINTM SLEE compliant execution environment.
Section 1. Identification
Submitting Participants: AT&T and IBM Corporation
Siroos Afshar - AT&T
Shmuel Kallner - IBM,
Dinesh N. Lokhande - AT&T,
ZA Lozinski - IBM,
James Scriba - AT&T,
Section 2: Request
This JSR is to develop the JAIN Service Creation Environment (SCE) and the Service Logic Execution Environment (SLEE) API Specifications. These APIs will provide service developers, whether independent software vendors, service providers or network equipment providers, with a common model and a consistent run-time environment for developing and deploying network services in Java. These network services encompass AIN/IN services such as number translation or follow-me, voice services such as personal assistant, services in the mobile network such as location query, as well as services in the future IP based networks.
The main objective of this effort is to provide a framework specification - what design time components are available for the Service Creation Environment and what run-time components are supported in the Service Logic Execution Environment, how these components will exist and interact with each other, how services will be developed and how services will run. This will allow service providers to either develop or use service creation or execution platform developed or integrated from the component factories created by various JAVA groups. The JAIN SCE and SLEE are network architecture neutral: they define the application interfaces available to the service creator, they do not prescribe how the network provides these capabilities.
The JAIN Service Creation and Service Logic Execution Environment Specifications are targeted towards the service providers, equipment manufactures, software vendors and network providers for the purpose of creating service creation and execution platform using JAVA component factories.
Today, network services are built using proprietary interfaces. These interfaces are often specific to the hardware and software of that network. A service such as Internet call waiting is not portable from the platform where it was developed to an alternate network equipment provider. This result in single supplier based vertically integrated solutions with high costs to develop and maintain services. Services are not portable between network technologies. Services that were developed for the AIN cannot easily be ported to a Mobile network or to a Voice-over IP network.
Service providers are looking for ways that will enable them to develop and deploy new services quickly. The service provider's main focus is how to create and introduce new services without worrying about the specifics of the framework, network and interfaces. An open standards based framework makes it possible for network service providers to create services without rewriting for the different interfaces in a multi-vendor environment. The JAIN APIs for the service creation and execution will allow open standard based service creation and service execution platforms using re-usable components.
The JAIN API specification for service creation will address the following requirements:
The JAIN API specification for the service logic execution environment will address the following requirements:
The JAIN service creation and service execution specifications are based upon the APIs that will be defined in other JAIN edit groups such as Java Call Control (JCC) and JAIN Secure Network Access. In addition to the APIs being defined in other JAIN application group, additional APIs will be defined as needed. The JAIN service creation and service execution specifications will use existing JAVA technologies such as the Java Virtual Machine, Enterprise JavaBeans (EJB), Java Database connectivity (JDBC) and Java Management (JMX) wherever possible.
The package names being considered are:
This package contains the main interfaces, classes and exceptions required supporting service execution.
This package contains the main interfaces, classes and exceptions required for operation, administration and maintenance purpose in service execution.
The following package names are reserved for future use:
This package contains the main interfaces, classes and exceptions required supporting service creation.
This package contains the main interfaces, classes and exceptions required for operation, administration and maintenance purpose in service creation.
JAIN Service Creation will make it possible to build generic service creation and execution environment using JAVA and associated technologies. Risks include failure of the Java platform due to poor performance or the inability to failover or recover. Since the service creation and execution part are not integral part of the JAVA platform. Therefore it does not jeopardize existing Java platform or any other Java standardization projects.
Section 3: Contributions
Documents describing JAIN can be found at http://java.sun.com/products/jain/index.html