Overview of Converged Applications
2.3.1 Modifying the SipApplicationSession
When using a replicated domain, WebLogic Server automatically provides concurrency control when a SIP Servlet modifies a SipApplicationSession object. In other words, when a SIP Servlet modifies the SipApplicationSession object, the SIP container automatically locks other applications from modifying the object at the same time. Non-SIP applications, such as HTTP Servlets, must themselves ensure that the application call state is locked before modifying it. This is also required if a single SIP Servlet needs to modify other call state objects, such as when a conferencing Servlet joins multiple calls. To help application developers manage concurrent access to the application session object, WebLogic Server extends the standard SipApplicationSession object with com.bea.wcp.sip.WlssSipApplicationSession, and adds two interfaces, com.bea.wcp.sip.WlssAction and com.bea.wcp.sip.WlssAsynchronous Action, to encapsulate tasks performed to modify the session. When these APIs are Table 2–1 Deprecated com.bea.wcp.util.Sessions Methods Deprecated Method in com.bea.wcp.util.Sessions Replacement Method Description getApplicationSession javax.servlet.sip.SipSessionsUtil. getApplicationSession Obtains the SipApplicationSession object with a specified session ID. getApplicationSessionsByCallId None. Obtains an Iterator of SipApplicationSession objects associated with the specified call ID. createHttpSession None. Applications can instead cast an HttpSession into ConvergedHttpSession. setApplicationSession javax.servlet.sip.ConvergedHttpSession. getApplicationSession Associates an HTTP session with an existing SipApplicationSession. removeApplicationSession None. Removes an HTTP session from an existing SipApplicationSession. getEncodeURL javax.servlet.sip.ConvergedHttpSession. encodeURL Encodes an HTTP URL with the jsessionid of an existing HTTP session object. Note: The com.bea.wcp.util.Sessions API is provided only for backward compatibility. Use the SIP Servlet APIs for all new development. Converged applications that mix the com.bea.wcp.util.Sessions API and JSR 289 convergence APIs are not supported. Specifically, the deprecated Sessions.getApplicationSessionsByCallIdString callId method cannot be used with v1.1 SIP Servlets that use the session key-based targeting method for associating an initial request with an existing SipApplicationSession object. See Section 15.11.2 in the SIP Servlet Specification v1.1 http:jcp.orgenjsrdetail?id=289 for more information about this targeting mechanism.Parts
» Oracle Fusion Middleware Online Documentation Library
» Multiple Responses SIP Servlets Versus HTTP Servlets
» Receiving Responses SIP Servlets Versus HTTP Servlets
» Proxy Functions SIP Servlets Versus HTTP Servlets
» Servlet Request Message Body
» Servlet Response Message Body
» Application Management Role of a Servlet Container
» Sends a 200 response to the CANCEL request.
» Sends a 487 response to the INVITE request to be cancelled.
» Invokes a doCancel method on the SIP servlet. This allows the application to
» Utility Functions Role of a Servlet Container
» Overview of Converged Applications
» Assembling and Packaging a Converged Application
» Using the Converged Application Example
» Overview of Header Format APIs and Configuration Summary of Compact Headers
» Assigning Header Formats with WlssSipServletMessage
» Summary of API and Configuration Behavior
» Overview Generating SNMP Traps from Application Code
» Requirement for Accessing SipServletSnmpTrapRuntimeMBean
» Obtaining a Reference to SipServletSnmpTrapRuntimeMBean
» Overview of Developing Distributed Applications
» Applications Must Not Create Threads
» Servlets Must Be Non-Blocking
» Store all Application Data in the Session
» All Session Data Must Be Serializable
» Use setAttribute to Modify Session Data in “No-Call” Scope
» Mark SIP Servlets as Distributable
» Session Expiration Best Practices
» Observe Best Practices for Java EE Applications
» Application Composition Model Oracle Fusion Middleware Online Documentation Library
» Using the Default Application Router
» Configuring a Custom Application Router
» Session Key-Based Request Targeting
» Overview of SIP Servlet Security
» Role Mapping Features Oracle Fusion Middleware Online Documentation Library
» Using Implicit Role Assignment
» Important Requirements Assigning Roles Using security-role-assignment
» Assigning run-as Roles Role Assignment Precedence for SIP Servlet Roles
» Debugging Security Features weblogic.xml Deployment Descriptor Reference
» Specifying a Predefined Logging Level
» Customizing Log Records Enabling Message Logging
» Overview Specifying Content Types for Unencrypted Logging
» Example Message Log Configuration and Output
» Configuring Log File Rotation
» Diameter Protocol Packages Oracle Fusion Middleware Online Documentation Library
» File Required for Compiling Application Using the Diameter API
» Implementing a Diameter Application
» Sending Request Messages Sending Answer Messages
» Creating New Attributes Working with AVPs
» Working with Diameter Sessions Creating Converged Diameter and SIP Applications
» Overview of Profile Service API and Sh Interface Support
» Enabling the Sh Interface Provider
» Using a Constructed Document Key to Manage Profile Data
» Prerequisites for Listener Implementations
» Implementing ProfileListener Monitoring Profile Data with ProfileListener
» Overview of the Profile Service API
» Implementing Profile Service API Methods
» Mapping Profile Requests to Profile Providers
» Configuring Profile Providers Using the Administration Console
» Overview of Rf Interface Support
» Understanding Offline Charging Events
» Configuring the Rf Application
» Specifying the Session Expiration Sending Asynchronous Events
» Accessing the Rf Application Implementing Event-Based Charging
» Using the Accounting Session State
» Overview of Ro Interface Support
» Credit Authorization with Unit Determination
» Credit Authorization with Direct Debiting
» Determining Units and Rating
» Configuring the Ro Application
Show more