2 The Servlet Interface |
|
2.1 Servlet Life Cycle |
|
2.1.1 Servlet Life Cycle Listener |
|
2.2 Processing SIP Messages |
|
2.3 SIP Specific Request Handling Methods |
|
2.4 Receiving Requests |
|
2.5 SIP Specific Response Handling Methods |
|
2.6 Number of Instances |
|
3 Servlet Context |
|
3.1 The SipFactory |
|
3.2 Extensions Supported |
|
3.3 Context Path |
|
3.4 Context Parameters |
|
4 Addressing |
|
4.1 The Address Interface |
|
4.1.1 The Parameterable Interface
|
|
4.1.2 The From and To Header Fields |
|
4.1.3 The Contact Header Field |
|
4.1.3.1 Transport Parameters in Contact Header |
|
4.2 URIs |
|
4.2.1 SipURI |
|
4.2.2 TelURL |
|
5 Requests and Responses |
|
5.1 The SipServletMessage Interface |
|
5.2 Implicit Transaction State
|
|
5.3 Access to Message Content |
|
5.3.1 Character Encoding |
|
5.4 Headers |
|
5.4.1 Address Header Fields |
|
5.4.2 System Headers |
|
5.4.3 TLS Attributes |
|
5.5 Transport Level Information
|
|
5.6 Requests |
|
5.6.1 Parameters |
|
5.6.2 Attributes |
|
5.6.3 Popped Route Header |
|
5.7 Responses |
|
5.7.1 Reliable Provisional Responses
|
|
5.7.2 Buffering |
|
5.8 Accessibility of SIP Servlet Messages |
|
5.9 Internationalization |
|
5.9.1 Indicating Preferred Language |
|
5.9.2 Indicating Language of Message Content |
|
6 Sessions |
|
6.1 SipApplicationSession |
|
6.1.1 Protocol Sessions |
|
6.1.2 SipApplicationSession Lifetime |
|
6.1.2.1 Application Session Timer Operation and SipApplicationSession Expiration |
|
6.1.2.2 SipApplicationSession Invalidation |
|
6.1.2.2.1 Application Invalidation |
|
6.1.2.2.2 Container Invalidation |
|
6.2 SipSession |
|
6.2.1 Relationship to SIP Dialogs |
|
6.2.1.1 Cancel Message Processing |
|
6.2.2 Maintaining Dialog State in the SipSession |
|
|
|
6.2.2.2 When in the INITIAL SipSession State |
|
6.2.3 Creation of SipSessions |
|
6.2.3.1 Extensions Creating Dialogs |
|
6.2.3.2 Derived SipSessions |
|
6.2.4 SipSession Lifetime |
|
6.2.4.1 Ongoing Transactions |
|
6.2.4.2 Session Invalidation |
|
6.2.5 Important Changes From v1.0 |
|
6.2.6 The RequestDispatcher Interface |
|
6.2.7 The SipSession Handler |
|
6.2.8 Binding Attributes into a SipSession |
|
|
|
6.4 Important Session Semantics |
|
6.4.1 Message Context |
|
6.4.2 Threading Issues |
|
6.4.3 Distributed Environments |
|
7 SIP Servlet Applications |
|
7.1 Relationship with HTTP Servlet Applications |
|
7.2 Relationship to ServletContext |
|
7.3 Elements of a SIP Application |
|
7.4 Deployment Hierarchies |
|
7.5 Directory Structure |
|
7.6 Application Names |
|
7.6.1 Example Application Directory Structure |
|
7.7 Servlet Application Archive File |
|
7.8 SIP Application Configuration Descriptor |
|
7.9 Dependencies On Extensions |
|
7.10 Servlet Application Classloader |
|
7.11 Replacing a Servlet Application |
|
7.12 Servlet Application Environment |
|
8 Application Listeners and Events |
|
8.1 SIP Servlet Event Types and Listener Interfaces |
|
9 Timer Service |
|
9.1 TimerService |
|
9.2 ServletTimer |
|
9.3 TimerListener |
|
10 Proxying |
|
10.1 Parameters |
|
|
|
10.2.1 Proxy Branches |
|
10.2.2 Pushing Route headers |
|
10.2.3 Sending Responses |
|
10.2.4 Receiving Responses |
|
10.2.4.1 Handling 2xx Responses to INVITE |
|
10.2.4.2 Correlating responses to proxy branches |
|
10.2.4.3 Sequential Search Timeout |
|
10.2.5 Sending CANCEL |
|
10.2.6 Receiving CANCEL |
|
10.2.7 Sending ACK |
|
10.2.8 Receiving ACK |
|
10.2.9 Handling Subsequent Requests |
|
10.2.10 Max-Forwards Check |
|
10.3 Proxying and Sessions |
|
10.4 Record-Route Parameters |
|
10.5 Path Header and Path Parameters |
|
11 Acting as a User Agent |
|
11.1 Client Functions |
|
11.1.1 Creating Initial Requests
|
|
11.1.1.1 Copying From and To Addresses |
|
11.1.2 Creating Subsequent Requests |
|
11.1.3 Pushing Route Header Field Values |
|
11.1.4 Sending a Request as a UAC |
|
11.1.5 Receiving Responses |
|
11.1.5.1 Handling Multiple Dialogs |
|
11.1.6 Transaction Timeout |
|
11.1.7 Sending ACK |
|
11.1.8 Sending PRACK |
|
11.1.9 Sending CANCEL |
|
11.2 Server Functions |
|
11.2.1 Sending Responses |
|
11.2.2 Receiving ACK |
|
11.2.3 Receiving CANCEL |
|
11.3 Merged Requests |
|
12 Back To Back User Agents |
|
12.1 B2BUA Helper Class |
|
12.2 Creating new B2BUA Request |
|
12.3 Linked SipSessions And Linked Requests |
|
12.3.1 Explicit Session Linkage |
|
12.3.2 Implicit Session Linkage |
|
12.4 Access to Un-Committed Messages |
|
12.5 Original Request and Session Cloning |
|
12.5.1 Cloning and Linking |
|
13 Converged Container and Applications
|
|
13.1 Converged Application
|
|
13.1.1 SIP and J2EE Converged Application
|
|
13.1.2 SIP and HTTP Converged Application
|
|
13.2 Accessing SIP Factory
|
|
13.3 Accessing SipApplicationSession By Id
|
|
|
|
13.5 Association of HTTP Session With SipApplicationSession
|
|
13.6 Finding Parent SipApplicationsSession From A Protocol Session
|
|
13.7 Encoding HTTP URLs With HTTP Sessions In Non HTTP Scope
|
|
14 Container Functions |
|
14.1 Division of Responsibility |
|
14.1.1 Protocol Compliance |
|
14.2 Multihomed Host Support
|
|
14.2.1 Application Composition on Multihomed Container |
|
15 Application Selection And Composition Model | | |
(background-color:yellow;)15.1 Application Selection Process |
|
15.1.1 The Role of the Application Router | | |
(background-color:yellow;)15.1.2 The Role of Applications |
|
15.1.3 The Role of the Container | | |
(background-color:yellow;)15.1.4 Application Independence |
|
15.1.5 Subscriber Identity and Routing Regions | | |
(background-color:yellow;)15.1.6 Routing Directives |
|
15.2 Application Environment and Behaviour | | |
(background-color:yellow;)15.2.1 Receiving an Initial Request |
|
15.2.2 Sending an Initial Request | | |
(background-color:yellow;)15.3 Application Router Behavior |
|
15.3.1 Order of Routing Regions | | |
(background-color:yellow;)15.3.2 Inter-Container Application Routing |
|
15.4 Container Behavior | | |
(background-color:yellow;)15.4.1 Procedure for Routing an Initial Request |
|
15.5 Application Names | | |
(background-color:yellow;)15.6 Responses, Subsequent Requests and Application Path |
|
15.7 Transport Information | | |
(background-color:yellow;)15.8 Popping of Top Route Header |
|
(background-color:yellow;)15.9.1 Example with Two Applications |
|
15.9.2 Simple call with no modifications of requests | | |
(background-color:yellow;)15.9.3 Modification of Headers |
|
15.9.4 Reversing the Direction of the Call | | |
(background-color:yellow;)15.9.5 Initiating a New Request |
|
15.10 Loop Detection | | |
(background-color:yellow;)15.11 Encode URI and Session Targeting |
|
15.11.1 The Encode URI mechanism | | |
(background-color:yellow;)15.11.2 Session Key Based Targeting Mechanism |
|
16 Mapping Requests To Servlets |
|
16.1 Multiple Servlets |
|
16.2 Servlet Selection |
|
16.2.1 Compatibility with v1.0 Specification |
|
(background-color:yellow;)17.1 Introduction |
|
17.2 Declarative Security | | |
(background-color:yellow;)17.3 Programmatic Security |
|
(background-color:yellow;)17.5 Authentication |
|
17.6 Server Tracking of Authentication Information | | |
(background-color:yellow;)17.7 Propagation of Security Identity in EJBTM Calls |
|
17.8 Specifying Security Constraints | | |
(background-color:yellow;)17.9 Default Policies |
|
17.10 Authentication of Servlet Initiated Requests | | |
(background-color:yellow;)17.10.1 Description of the Procedure |
|
18 Java Enterprise Edition 5 Container | | |
(background-color:yellow;)18.1 Java 5 |
|
18.2 Annotations and Resource Injection | | |
(background-color:yellow;)18.2.1 Servlet 2.5 alignment |
|
18.2.2 @PreDestroy Annotation | | |
(background-color:yellow;)18.2.3 @SipServlet Annotation |
|
18.2.3.1 Servlet methods | | |
(background-color:yellow;)18.2.4 @SipApplication Annotation |
|
18.2.5 @SipApplicationSessionListener Annotation | | |
(background-color:yellow;)18.2.6 @SipSessionListener Annotation |
|
18.2.7 @SipSessionAttributeListener Annotation | | |
(background-color:yellow;)18.2.8 @SipErrorListener Annotation |
|
18.2.9 @SipServletListener Annotation | | |
(background-color:yellow;)18.2.10 @SipTimerListener Annotation |
|
18.2.11 @SipApplicationKey Annotation | | |
(background-color:yellow;)18.2.12 Annotation for SipFactory injection |
|
18.2.13 Annotation for SipSessionsUtil | | |
(background-color:yellow;)18.2.14 Examples |
|
19 Deployment Descriptor | | |
(background-color:yellow;)19.1 Differences from the HTTP Servlet Deployment Descriptor |
|
19.2 Converged SIP and HTTP Applications | | |
(background-color:yellow;)19.3 Deployment Descriptor Elements |
|
19.4 Rules for Processing the Deployment Descriptor | | |
(background-color:yellow;)19.5 The SIP Servlet XSD |
|