Patent attributes
An application proxy is disclosed for shielding the complexities of invoking a service from a higher level mechanism, such as a process engine. The application proxy comprises a proxy engine and one or more sets of protocol logic. Each set of protocol logic implements a particular protocol that may be used to invoke services on service applications. The protocols implemented by the sets of protocol logic may be standard protocols (e.g. SOAP (Simple Object Access Protocol), ebXML, etc.) implemented by many service applications to enable service invocations. In operation, the application proxy receives a message to perform an activity which calls for the invocation of a service. In response to the message, the application proxy obtains the service definition associated with the service. Based upon the service definition, the proxy engine executes an appropriate set of protocol logic. Using the information in the service definition, the protocol logic generates a service invocation in accordance with the protocol that the protocol logic implements. Once generated, the service invocation is sent to the appropriate service application for processing. In this manner, the application proxy properly invokes the service.