1 / 17

The Web Services Container

The Web Services Container. Main Responsibilities of WSC. Routing messages to appropriate call handlers for execution Configuring execution steps based on app config data Control of execution context. SOAP Processing Engine. Custom Message Interceptors. EJB. Custom Legacy Adaptors.

qiana
Download Presentation

The Web Services Container

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Web Services Container

  2. Main Responsibilities of WSC • Routing messages to appropriate call handlers for execution • Configuring execution steps based on app config data • Control of execution context

  3. SOAP Processing Engine CustomMessageInterceptors EJB CustomLegacyAdaptors CustomTransports LegacyAdaptors SOAPEngine CORBA Custom Web ServicesContainer Javaclass CustomSecurity /SessionControl

  4. Web Service Container • Driving question for WSC features: • “What type of configuration details should a user be able to change?”

  5. Web Services Container – Plugin points SessionDataStorage ActivationPolicy SessionManagement ExecutionAPI Web ServicesContainer (Java)CallHandler Javaclass DeploymentAPI UsageController MetadataCatalog SecurityProviders

  6. Invocation API • Receives a SOAP message, and handles the dispatch of the call to a suitable handler. • Based around the current Message Dispatcher / Call Dispatcher interfaces in CapeConnect 3.0 • The details of how to handler a particular call are delegated to an appropriate call handler. • Call handlers can be written by partners and plugged in to the WSC. • Invocation pipeline is completely stateless, for maximum throughput.

  7. Deployment Control Interface • Web Service application deployment API • Deploy app • Undeploy app • Reload app • Publish app [to UDDI/WSDL] • Deployment API is exposed as a SOAP web service • Remote deployment by sending a jar as a MIME attachment.

  8. Web Service Container Internals Web Service Container ExecutionController Session Management Storage Provider Authentication Provider Provider Authorization Interceptor Control Interceptor(s) Activation Control Call Handler Provider ApplicationMetaData

  9. Instantiation Policy Control • Singleton instance • Instance per user • Instance per session • Instance per call [completely stateless]

  10. Resource Usage Controls • Limit number of service instances. • Concurrency limits. • Possibly billing data collection.

  11. Session management • Session state storage • possibly accessible across server farm for failover • Session timeout policy • Web Service accessible session data • E.g. “cookie”-like context data

  12. Application config • All configuration is set on a per-application basis • App configuration defined in an XML descriptor file (like EJB DD) • Typical configuration items: • Serializers and type mappings • Activation policy • Security policy • WSDL generation properties • UDDI publishing properties • Some potential to intercept JSR-109

  13. Web Service Metadata catalog • Service Definition – at several levels • Abstract interface • E.g. data type definitions, abstract operation types • Protocol specific interface • E.g. SOAPAction values for each operation • AKA “Concrete” interface definition • Bound interface • E.g. port definitions with endpoint URL(s) • Published interface • E.g. UDDI service key / UUID, Published name

  14. Standard default implementations • Provide a standard implementation able to wrap a standard Java class for ease of use. • More sophisticated users can access full details of the call environment. • Partners can provide a custom call handler plugin for specific legacy integration • Advanced partners can provide operation plugins (e.g. session management) to customize behaviour.

  15. Security credential propagation Import / map credentials from transport (e.g. IIS) Customauthorizationplugin Customauthenticatorplugin Export / map credentials for call (e.g. WLS) CapeConnectServer

  16. Inbound Security Propagation Credentialimportthrough: HTTP Basic or Digest Authentication,SSL Client-side Certificate, etc. Web Server Transport Servlet Engine Trust relationship CCSOAP Servlet Messaging Protocol / Re-authentication CapeConnect SOAP Engine SOAP Basic or Digest Authentication,SAML SOAP Headers, etc.

  17. Backend Security Propagation CapeConnect SOAP Engine SOAP Call Handler EJB Call Handler EJB Call Handler CORBA Call Handler EJB Native Credentials CSIv2Credentials Re-establish Credentials SOAPCredentials EJB Server SOAPServer EJBServer CORBAServer UserBean ProxyBean

More Related