|
Java Connector Architecture for server side mobile internet
|
|
Monday, February 7, 2005
In today's world, Java 2 Enterprise Edition (J2EETM) is the dominant technology for developing mobile internet applications, leveraging all such enterprise features as security, transactions, connection management and so on. J2EE servers consist of two parts, Enterprise Java Beans container (EJB) and Web Container. EJB containers provide a runtime environment to the Enterprise Java Bean components holding the business logic, while the web containers hold the presentation logic primarily in the form of servlets and JSPs.
The telecom service layer is a set of network and telecom components that provide different services to the end-user. The services could be messaging such as SMS and MMS, or location-based services and so on. Ericsson describes the service layer as "The architectural layer that covers all functions between the core network and the content/application interface. The service network, an implemented solution in the service layer, is any collection of products and services, such as terminals and content, that fulfills a business need in the service layer." The different telecom components in the services layer are linked with the IT world through different gateways, also called "service enablers". These service enablers act as an interface for the IT applications to interact with the telecom nodes. For example, Gateway Mobile Positioning Centre (GMPC) works as a service enabler in the case of mobile applications. These service enablers are accessed by the IT applications through their application programming interfaces (API), which use specific protocol to communicate with the service enabler. The developers of the IT applications use the service enabler APIs to develop the mobile internet applications utilizing the services available in the service layer. The mobile internet world consists of several service-enabler APIs for providing different kinds of services, such as charging, SMS, MMS, and location-based services. A server side mobile internet application, developed on the J2EE platform, might have to write the business logic that involves communication with service-enabler APIs; for example, for sending SMS, MMS, or getting the location information for a specific person. Although EJB provides a good structure for writing business logic, the developer is restricted to writing certain types of code that could hamper the EJB container. Some examples of such code are: 1. Multithreaded code. 2. Java Reflection API. 3. File access, or I/O operations. 4. SSL connections and so on. For service-enabler APIs, it is quite common to have one or more of these kinds of code, and so, according to the EJB specifications, should not be accessed from the EJB containers. For example, JML API provided with Ericsson's MPS SDK uses SSL to establish connections with the Gateway Mobile Positioning Center. The solution to overcoming the limitations of EJB is to use Java Connector Architecture (JCA). JCA is the part of J2EE platform, which defines the specifications for developing integration adapters to connect the J2EE-compliant application servers with different Enterprise Information Systems. JCA adapters are plugged with the application server, but outside the EJB container environment to enable the execution of code, which is unfriendly with the EJB container. Putting this all into the context of location-based services (LBS), the complete picture, including the service network components, should look like this.
Check out the complete solution for the resource adopters. Last published February 17, 2007
|
|