Abstract:
A component-based framework includes system services and component integration interfaces that provide a run-time environment which automatically provides transactions to encompass work of component-based server applications according to the transactional expectations of individual server application components. A transaction attribute is associated with each server application component that represents whether the component requires execution in a transaction. When a client requests creation of a server application component without having first initiated a transaction and the component's transaction attribute indicates a transaction is required, the framework automatically initiates a transaction in which to run the server application component. The framework also completes the automatically initiated transaction upon receiving an indication from the server application component that its transactional work is complete.
Abstract:
The present invention extends to methods, systems, and computer program products for reliably and securely transferring queued application messages. Application messages are (e.g.,. binary or text) encoded and then encapsulated in transfer messages, enqueue messages, and dequeue responses such that composable protocol elements used in application messages can be reused in the transfer messages, enqueue messages, and dequeue responses. Transfer message headers are encoded and then encapsulated along with encoded application messages such that composable protocol elements used in transfer headers and application messages can be reused in the store and forward messages. Application messages, transfer messages, enqueue messages, dequeue responses, and store and forward messages can all be configured in accordance with the same messaging protocol, such as, for example, Simple Object Access Protocol. Since encapsulated elements are encoded, the encapsulated elements do not interfere with configuration of wrapping messages.
Abstract:
The present invention extends to methods, systems, and computer program products for reliably and securely transferring queued application messages. Application messages are (e.g.,. binary or text) encoded and then encapsulated in transfer messages, enqueue messages, and dequeue responses such that composable protocol elements used in application messages can be reused in the transfer messages, enqueue messages, and dequeue responses. Transfer message headers are encoded and then encapsulated along with encoded application messages such that composable protocol elements used in transfer headers and application messages can be reused in the store and forward messages. Application messages, transfer messages, enqueue messages, dequeue responses, and store and forward messages can all be configured in accordance with the same messaging protocol, such as, for example, Simple Object Access Protocol. Since encapsulated elements are encoded, the encapsulated elements do not interfere with configuration of wrapping messages.
Abstract:
A component-based framework includes system services and component integration interfaces that provide a run-time environment which automatically processes work of component-based server applications in transactions according to transactional rules or behaviors declaratively specified to apply to the respective components. A transaction attribute is declaratively specified for a server application component that represents whether the component requires execution in a transaction. When a client requests creation of a server application component without having first initiated a transaction and the component's transaction attribute indicates a transaction is required, the framework automatically initiates a transaction in which to run the server application component. The framework also completes the automatically initiated transaction upon receiving an indication from the server application component that its transactional work is complete.
Abstract:
A run-time environment implemented as system services and component integration interfaces provides scalable and robust component-based server applications by deactivating server application components between uses by a client program on separate items of work while allowing the client program to retain references to server application components when deactivated. When a server application component is deactivated, a data state of the component and any resources held by the component are released. The run-time environment activates a component on receiving a call by the client to the component while the component is deactivated, whereupon the component is instantiated with an initial data state. The client can interact with the component as if one instance of the component were in continuous existence from the time the client requests creation of the component until the client finally releases the component reference, whereas in actuality the client accesses a sequence or stream of instances using the component reference through multiple iterations of the activation and deactivation cycle.
Abstract:
A programming model for component-based server applications provides declarative and programmatic access control at development without knowledge of the security configuration at deployment. The developer defines the server application access control by defining logical classes of users, called roles. The developer also can declare access privileges of the roles at package, component and interface levels of the server application. At development, the roles are bound to the particular security configuration of the server computer. The programming model also provides application programming and integration interfaces with which the developer can programmatically define access control of the roles to the server application's processing services.
Abstract:
Example embodiments provide for a binding mechanism between RM protocols and request-response transport protocols (e.g., HTTP) in a one-way message exchange pattern. The present invention leverages existing network characteristics of request-response transport protocols without reconfiguration or deployment of new infrastructure services. A request-response transport model is asymmetrical in nature and provides two data-flows; a request flow and a reply flow. When an initiator is not addressable and/or when communication requires a request-response transport, the present invention allows infrastructure and application messages to be sent on the request flow, while acknowledgments and other infrastructure messages may be sent back across the reply flow of the transport.
Abstract:
A virtual applications architecture is provided according to the present invention. The architecture includes a topology manager for managing applications across a plurality of members, and a virtual applications manager for defining a plurality of resources comprising the applications. The topology manager communicates with the plurality of members to initiate scaling of the applications associated with the virtual applications manager to the members. The architecture may also include a replication system for deploying the applications to the members.
Abstract:
A component-based framework includes system services and component integration interfaces that provide a run-time environment for component-based server application in which server application components have control over the duration of their state independent of client action. The framework provides functions that a server application component calls to indicate its work for a client is complete, and its state is to be destroyed. On the component's return from the client's method call, the framework destroys the component's state thus releasing any server computer resources held by the component. This allows the server application components to be programmed so as to minimize the duration that their state remains in memory consuming server computer resources, and which enhances scalability of the server application.
Abstract:
A run-time executive of an object management system for managing execution of software components in an object execution environment uses a component context object to store intrinsic context properties related to an associated component. The run-time executive maintains an implicit association of the component context object with the application component. For example, the context properties can include a client id, an activity id, and a transaction reference. The component context object also provides an interface accessible to the associated component, with member functions for use in transaction processing, in creating additional other application components inheriting component's context properties, and in access control based on abstract user classes (roles).