US20130290927A1 - Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter - Google Patents

Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter Download PDF

Info

Publication number
US20130290927A1
US20130290927A1 US13/872,822 US201313872822A US2013290927A1 US 20130290927 A1 US20130290927 A1 US 20130290927A1 US 201313872822 A US201313872822 A US 201313872822A US 2013290927 A1 US2013290927 A1 US 2013290927A1
Authority
US
United States
Prior art keywords
resource adapter
class
application
request
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/872,822
Inventor
Jefferey Steidl
Vivekananda Maganty
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oracle International Corp
Original Assignee
Oracle International Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oracle International Corp filed Critical Oracle International Corp
Priority to US13/872,822 priority Critical patent/US20130290927A1/en
Assigned to ORACLE INTERNATIONAL CORPORATION reassignment ORACLE INTERNATIONAL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: STEIDL, JEFFREY
Assigned to ORACLE INTERNATIONAL CORPORATION reassignment ORACLE INTERNATIONAL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MAGANTY, VIVEKANANDA
Publication of US20130290927A1 publication Critical patent/US20130290927A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Definitions

  • BCEL Byte Code Engineering Library
  • FIG. 1 illustrates an example of a system in accordance with certain implementations of the disclosed technology.
  • FIG. 2 illustrates an example of a computer-controlled method in accordance with certain implementations of the disclosed technology.
  • a messaging-specific dynamic code generation tool is provided.
  • the messaging-specific dynamic code generation tool is a custom tool for messaging and connector use. There are a lot of novel features in this tool that are specific to the messaging domain. Previous tools, as described above, which were not designed for messaging, do not provide customized features for messaging.
  • FIG. 1 illustrates an example of a system 100 in accordance with certain implementations of the disclosed technology.
  • a resource adapter 102 is communicatively coupled between a first device 104 and a second device 106 .
  • the first device 104 may be or include a messaging provider, such as a Java Messaging Service (JMS) provider, configured to provide an object to the resource adapter and the second device 106 is an application or application server hosting an application, for example.
  • JMS Java Messaging Service
  • the resource adapter 102 may be configured to receive a request from an application or application server and, responsive to receiving the request, instruct a messaging provider to provide an object.
  • the messaging provider may be configured to provide the requested object to the resource adapter 102
  • the resource adapter 102 may be further configured to send to a class loader 108 a request for the class loader 108 to create a class.
  • the object may be a connection, a session, a queue, a topic, a producer, a message, or a consumer, for example.
  • the class loader 108 may be configured to create the class and provide the class to the resource adapter 102 , and the resource adapter 102 may be further configured to instantiate the class to create a wrapper object 110 , wrap the object based on the wrapper object 110 , and send the wrapped object to the to the second device 106 , which may be or include the application or application server that sent the original request, for example.
  • the resource adapter instance may be configured to store the class.
  • the resource adapter 102 may be configured to store a plurality of previously-created classes and also to receive a request from an application or application server and, responsive to receiving the request, instruct a messaging provider to provide an object.
  • the messaging provider may be configured to provide the requested object to the resource adapter 102 , which may be further configured to instantiate one of the plurality of previously-created classes to create the wrapper object 110 , wrap the object based on the wrapper object 110 , and send the wrapped object to the application or application server that sent the request to the resource adapter 102 .
  • FIG. 2 illustrates an example of a computer-controlled method 200 in accordance with certain implementations of the disclosed technology.
  • an application or application server may provide a request to a resource adapter.
  • Certain embodiments may include an application that is managed by an application server. In such embodiments, the application may reside on the application server.
  • the resource adapter may instruct a messaging provider, such as a Java Messaging Service (JMS) provider, to provide an object, as indicated at 204 . Responsive thereto, the messaging provider may provide the requested object to the resource adapter, as indicated at 206 .
  • the resource adapter may send to a class loader a request for the class loader to create a class. The class loader may then create the class and provide the class to the resource adapter, as indicated at 210 .
  • JMS Java Messaging Service
  • the resource adapter may instantiate the class to create a wrapper object.
  • the resource adapter may wrap the object based on the wrapper object.
  • the resource adapter may send the wrapped object to the application or application server.
  • the resource adapter instance may store the class.
  • the resource adapter instance may store a plurality of previously-created classes and instantiate one of the stored classes to create the wrapper object used by the resource adapter to wrap the object.
  • machine is intended to broadly encompass a single machine or a system of communicatively coupled machines or devices operating together.
  • Exemplary machines may include computing devices such as personal computers, workstations, servers, portable computers, handheld devices, tablet devices, and the like.
  • a machine typically includes a system bus to which processors, memory such as random access memory (RAM), read-only memory (ROM), and other state-preserving medium, storage devices, a video interface, and input/output interface ports can be attached.
  • the machine may also include embedded controllers such as programmable or non-programmable logic devices or arrays, Application Specific Integrated Circuits (ASICs), embedded computers, smart cards, and the like.
  • the machine may be controlled, at least in part, by input from conventional input devices such as keyboards and mice, as well as by directives received from another machine, interaction with a virtual reality (VR) environment, biometric feedback, or other pertinent input.
  • VR virtual reality
  • the machine may utilize one or more connections to one or more remote machines, such as through a network interface, modem, or other communicative coupling.
  • Machines can be interconnected by way of a physical and/or logical network, such as an intranet, the Internet, local area networks, wide area networks, etc.
  • network communication may utilize various wired and/or wireless short range or long range carriers and protocols, including radio frequency (RF), satellite, microwave, Institute of Electrical and Electronics Engineers (IEEE) 545.11, Bluetooth, optical, infrared, cable, laser, etc.
  • RF radio frequency
  • IEEE Institute of Electrical and Electronics Engineers
  • Embodiments of the disclosed technology may be described by reference to or in conjunction with associated data including functions, procedures, data structures, application programs, instructions, etc. that, when accessed by a machine, may result in the machine performing tasks or defining abstract data types or low-level hardware contexts.
  • Associated data may be stored in, for example, volatile and/or non-volatile memory, such as RAM and ROM, or in other storage devices and their associated storage media, which can include hard-drives, floppy-disks, optical storage, tapes, flash memory, memory sticks, digital video disks, biological storage, and other non-transitory, physical storage media.
  • Associated data may be delivered over transmission environments, including the physical and/or logical network, in the form of packets, serial data, parallel data, etc., and may be used in a compressed or encrypted format. Associated data may be used in a distributed environment, and stored locally and/or remotely for machine access.

Abstract

A computer-controlled method can include an application providing a request to a resource adapter and, responsive to receiving the request, the resource adapter instructing a Java Messaging Service (JMS) provider to provide an object. The JMS provider can provide the requested object to the resource adapter. The resource adapter can send to a class loader a request for the class loader to create a class and, responsive thereto, the class loader can create the class and provide it to the resource adapter. The resource adapter can instantiate the class to create a wrapper object, wrap the object based on the wrapper object, and send the wrapped object to the application.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application claims benefit of provisional patent applications 61/639,786, and 61/639,791, both filed Apr. 27, 2012; and provisional patent applications 61/793,043, 61/793,257, 61/793,459, 61/800,016, and 61/799,391, all filed Mar. 15, 2013, all incorporated by reference herein their entirety.
  • This application is related to the following co-pending U.S. patent application Ser. Nos., all filed Apr. 29, 2013, all incorporated by reference herein in their entirety:
  • 13/XXX,XXX, (Attorney Docket No. ORA121139-US-NP-3222-0075), “SYSTEM AND METHOD FOR CLUSTERED TRANSACTIONAL INTEROPERABILITY OF MULTIPLE MESSAGING PROVIDERS USING A SINGLE CONNECTOR MECHANISM;”
  • 13/XXX,XXX (Attorney Docket No. ORA130423-US-NP-3222-0076), “SYSTEM AND METHOD FOR CLUSTERED TRANSACTIONAL INTEROPERABILITY OF PROPRIETARY NON-STANDARD FEATURES OF A MESSAGING PROVIDER USING A CONNECTOR MECHANISM;”
  • 13/XXX,XXX (Attorney Docket No. ORA121140-US-NP-3222-0077), “METHOD FOR A CONNECTOR PROVIDING TRANSACTIONAL INTEROPERABILITY TO MULTIPLE MESSAGING PROVIDERS TO MULTIPLE APPLICATION SERVERS USING THE SAME IMPLEMENTATION;”
  • 13/XXX,XXX (Attorney Docket No. ORA130424-US-NP-3222-0078), “SYSTEM AND METHOD FOR A CONNECTOR BEING ABLE TO ADAPT TO NEWER FEATURES INTRODUCED TO A MESSAGING PROVIDER WITH ONLY CONFIGURATION CHANGES;” and
  • BACKGROUND
  • Currently, there are a number of tools available for dynamically creating or modifying Java files. A generic example of such a tool is the Byte Code Engineering Library (BCEL). However, these tools are generally designed for a significantly wide domain such as would be associated with containers and application servers. Also, with something like BCEL, someone must write the code that will then write/generate the final code.
  • Accordingly, there remains a need for a way to address these and other deficiencies associated with the prior art.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates an example of a system in accordance with certain implementations of the disclosed technology.
  • FIG. 2 illustrates an example of a computer-controlled method in accordance with certain implementations of the disclosed technology.
  • DETAILED DESCRIPTION
  • In accordance with an embodiment, a messaging-specific dynamic code generation tool is provided. The messaging-specific dynamic code generation tool is a custom tool for messaging and connector use. There are a lot of novel features in this tool that are specific to the messaging domain. Previous tools, as described above, which were not designed for messaging, do not provide customized features for messaging.
  • FIG. 1 illustrates an example of a system 100 in accordance with certain implementations of the disclosed technology. In the example, a resource adapter 102 is communicatively coupled between a first device 104 and a second device 106. In certain embodiments, the first device 104 may be or include a messaging provider, such as a Java Messaging Service (JMS) provider, configured to provide an object to the resource adapter and the second device 106 is an application or application server hosting an application, for example.
  • In certain embodiments, the resource adapter 102 may be configured to receive a request from an application or application server and, responsive to receiving the request, instruct a messaging provider to provide an object. In such embodiments, the messaging provider may be configured to provide the requested object to the resource adapter 102, and the resource adapter 102 may be further configured to send to a class loader 108 a request for the class loader 108 to create a class. The object may be a connection, a session, a queue, a topic, a producer, a message, or a consumer, for example.
  • The class loader 108 may be configured to create the class and provide the class to the resource adapter 102, and the resource adapter 102 may be further configured to instantiate the class to create a wrapper object 110, wrap the object based on the wrapper object 110, and send the wrapped object to the to the second device 106, which may be or include the application or application server that sent the original request, for example. In certain embodiments, the resource adapter instance may be configured to store the class.
  • In certain embodiments, the resource adapter 102 may be configured to store a plurality of previously-created classes and also to receive a request from an application or application server and, responsive to receiving the request, instruct a messaging provider to provide an object. In such cases, the messaging provider may be configured to provide the requested object to the resource adapter 102, which may be further configured to instantiate one of the plurality of previously-created classes to create the wrapper object 110, wrap the object based on the wrapper object 110, and send the wrapped object to the application or application server that sent the request to the resource adapter 102.
  • FIG. 2 illustrates an example of a computer-controlled method 200 in accordance with certain implementations of the disclosed technology. At 202, an application or application server may provide a request to a resource adapter. Certain embodiments may include an application that is managed by an application server. In such embodiments, the application may reside on the application server.
  • Responsive to receiving the request, the resource adapter may instruct a messaging provider, such as a Java Messaging Service (JMS) provider, to provide an object, as indicated at 204. Responsive thereto, the messaging provider may provide the requested object to the resource adapter, as indicated at 206. At 208, the resource adapter may send to a class loader a request for the class loader to create a class. The class loader may then create the class and provide the class to the resource adapter, as indicated at 210.
  • At 212, the resource adapter may instantiate the class to create a wrapper object. At 214, the resource adapter may wrap the object based on the wrapper object. At 216, the resource adapter may send the wrapped object to the application or application server. In certain embodiments, the resource adapter instance may store the class. In certain embodiments, the resource adapter instance may store a plurality of previously-created classes and instantiate one of the stored classes to create the wrapper object used by the resource adapter to wrap the object.
  • The following discussion is intended to provide a brief, general description of a suitable machine in which embodiments of the disclosed technology can be implemented. As used herein, the term “machine” is intended to broadly encompass a single machine or a system of communicatively coupled machines or devices operating together. Exemplary machines may include computing devices such as personal computers, workstations, servers, portable computers, handheld devices, tablet devices, and the like.
  • Typically, a machine includes a system bus to which processors, memory such as random access memory (RAM), read-only memory (ROM), and other state-preserving medium, storage devices, a video interface, and input/output interface ports can be attached. The machine may also include embedded controllers such as programmable or non-programmable logic devices or arrays, Application Specific Integrated Circuits (ASICs), embedded computers, smart cards, and the like. The machine may be controlled, at least in part, by input from conventional input devices such as keyboards and mice, as well as by directives received from another machine, interaction with a virtual reality (VR) environment, biometric feedback, or other pertinent input.
  • The machine may utilize one or more connections to one or more remote machines, such as through a network interface, modem, or other communicative coupling. Machines can be interconnected by way of a physical and/or logical network, such as an intranet, the Internet, local area networks, wide area networks, etc. One having ordinary skill in the art will appreciate that network communication may utilize various wired and/or wireless short range or long range carriers and protocols, including radio frequency (RF), satellite, microwave, Institute of Electrical and Electronics Engineers (IEEE) 545.11, Bluetooth, optical, infrared, cable, laser, etc.
  • Embodiments of the disclosed technology may be described by reference to or in conjunction with associated data including functions, procedures, data structures, application programs, instructions, etc. that, when accessed by a machine, may result in the machine performing tasks or defining abstract data types or low-level hardware contexts. Associated data may be stored in, for example, volatile and/or non-volatile memory, such as RAM and ROM, or in other storage devices and their associated storage media, which can include hard-drives, floppy-disks, optical storage, tapes, flash memory, memory sticks, digital video disks, biological storage, and other non-transitory, physical storage media.
  • Associated data may be delivered over transmission environments, including the physical and/or logical network, in the form of packets, serial data, parallel data, etc., and may be used in a compressed or encrypted format. Associated data may be used in a distributed environment, and stored locally and/or remotely for machine access.
  • Having described and illustrated the principles of the invention with reference to illustrated embodiments, it will be recognized that the illustrated embodiments may be modified in arrangement and detail without departing from such principles, and may be combined in any desired manner. And although the foregoing discussion has focused on particular embodiments, other configurations are contemplated. In particular, even though expressions such as “according to an embodiment of the invention” or the like are used herein, these phrases are meant to generally reference embodiment possibilities, and are not intended to limit the invention to particular embodiment configurations. As used herein, these terms may reference the same or different embodiments that are combinable into other embodiments.
  • Consequently, in view of the wide variety of permutations to the embodiments described herein, this detailed description and accompanying material is intended to be illustrative only, and should not be taken as limiting the scope of the invention. What is claimed as the invention, therefore, is all such modifications as may come within the scope and spirit of the following claims and equivalents thereto.

Claims (18)

We claim:
1. A computer-controlled method, comprising:
an application providing a request to a resource adapter;
responsive to receiving the request, the resource adapter instructing a messaging provider to provide an object; and
the messaging provider providing the requested object to the resource adapter;
the resource adapter sending to a class loader a request for the class loader to create a class;
the class loader creating the class;
the class loader providing the class to the resource adapter;
the resource adapter instantiating the class to create a wrapper object;
the resource adapter wrapping the object based on the wrapper object;
the resource adapter sending the wrapped object to the application.
2. The computer-controlled method of claim 1, wherein the application is managed by an application server.
3. The computer-controlled method of claim 2, wherein the application resides on the application server.
4. The computer-controlled method of claim 1, wherein the object is one of a group consisting of the following: a connection, a session, a queue, a topic, a producer, a message, and a consumer.
5. The computer-controlled method of claim 1, further comprising the resource adapter instance storing the class.
6. The computer-controlled method of claim 1, wherein the messaging provider is a Java Messaging Service (JMS) provider.
7. One or more non-transitory computer-readable media storing instructions that, when executed by a processor, cause the processor to perform the computer-controlled method of claim 1.
8. A computer-controlled method, comprising:
an application providing a request to a resource adapter;
responsive to receiving the request, the resource adapter instructing a messaging provider to provide an object; and
the messaging provider providing the requested object to the resource adapter;
the resource adapter instance storing a plurality of previously-created classes;
the resource adapter instantiating one of the stored classes to create a wrapper object;
the resource adapter wrapping the object based on the wrapper object;
the resource adapter sending the wrapped object to the application.
9. The computer-controlled method of claim 8, wherein the application is managed by an application server.
10. The computer-controlled method of claim 9, wherein the application resides on the application server.
11. The computer-controlled method of claim 8, wherein the object is one of a group consisting of the following: a connection, a session, a queue, a topic, a producer, a message, and a consumer.
12. The computer-controlled method of claim 8, wherein the messaging provider is a Java Messaging Service (JMS) provider.
13. One or more non-transitory computer-readable media storing instructions that, when executed by a processor, cause the processor to perform the computer-controlled method of claim 8.
14. A system, comprising:
a messaging provider;
a first device hosting an application or application server configured to provide a request;
a second device hosting a resource adapter configured to receive the request from the application or application server and, responsive to receiving the request, instruct the messaging provider to provide an object, wherein the messaging provider is configured to provide the requested object to the resource adapter, wherein the resource adapter is further configured to send to a class loader a request for the class loader to create a class, wherein the class loader is configured to create the class and provide the class to the resource adapter, and wherein the resource adapter is further configured to instantiate the class to create a wrapper object, wrap the object based on the wrapper object, and send the wrapped object to the application or application server; and
a class loader configured to receive from the resource adapter a request to create the class, create the class, and provide the created class to the resource adapter.
15. The system of claim 14, wherein the resource adapter instance is configured to store the class.
16. The system of claim 14, wherein the messaging provider is a Java Messaging Service (JMS) provider.
17. A system, comprising:
a messaging provider;
a first device hosting an application or application server configured to provide a request;
a second device hosting a resource adapter configured to store a plurality of previously-created classes and also to receive the request from the application or application server and, responsive to receiving the request, instruct the messaging provider to provide an object, wherein the messaging provider is configured to provide the requested object to the resource adapter, and wherein the resource adapter is further configured to instantiate one of the plurality of previously-created classes to create a wrapper object, wrap the object based on the wrapper object, and send the wrapped object to the application or application server.
18. The system of claim 17, wherein the messaging provider is a Java Messaging Service (JMS) provider.
US13/872,822 2012-04-27 2013-04-29 Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter Abandoned US20130290927A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/872,822 US20130290927A1 (en) 2012-04-27 2013-04-29 Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201261639791P 2012-04-27 2012-04-27
US201261639786P 2012-04-27 2012-04-27
US201361793459P 2013-03-15 2013-03-15
US201361793043P 2013-03-15 2013-03-15
US201361799391P 2013-03-15 2013-03-15
US201361800016P 2013-03-15 2013-03-15
US201361793257P 2013-03-15 2013-03-15
US13/872,822 US20130290927A1 (en) 2012-04-27 2013-04-29 Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter

Publications (1)

Publication Number Publication Date
US20130290927A1 true US20130290927A1 (en) 2013-10-31

Family

ID=49478299

Family Applications (5)

Application Number Title Priority Date Filing Date
US13/872,976 Active 2033-11-30 US9325768B2 (en) 2012-04-27 2013-04-29 System and method for clustered transactional interoperability of multiple messaging providers using a single connector mechanism
US13/872,919 Active 2034-10-15 US10033790B2 (en) 2012-04-27 2013-04-29 Method for a connector providing transactional interoperability to multiple messaging providers to multiple application servers using the same implementation
US13/872,899 Active 2036-03-07 US11064005B2 (en) 2012-04-27 2013-04-29 System and method for clustered transactional interoperability of proprietary non-standard features of a messaging provider using a connector mechanism
US13/872,822 Abandoned US20130290927A1 (en) 2012-04-27 2013-04-29 Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter
US13/872,797 Active US9456017B2 (en) 2012-04-27 2013-04-29 System and method for a connector being able to adapt to newer features introduced to a messaging provider with only configuration changes

Family Applications Before (3)

Application Number Title Priority Date Filing Date
US13/872,976 Active 2033-11-30 US9325768B2 (en) 2012-04-27 2013-04-29 System and method for clustered transactional interoperability of multiple messaging providers using a single connector mechanism
US13/872,919 Active 2034-10-15 US10033790B2 (en) 2012-04-27 2013-04-29 Method for a connector providing transactional interoperability to multiple messaging providers to multiple application servers using the same implementation
US13/872,899 Active 2036-03-07 US11064005B2 (en) 2012-04-27 2013-04-29 System and method for clustered transactional interoperability of proprietary non-standard features of a messaging provider using a connector mechanism

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/872,797 Active US9456017B2 (en) 2012-04-27 2013-04-29 System and method for a connector being able to adapt to newer features introduced to a messaging provider with only configuration changes

Country Status (1)

Country Link
US (5) US9325768B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111736913A (en) * 2019-03-25 2020-10-02 华为技术有限公司 Class loading method and device

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102271265B1 (en) 2014-01-21 2021-07-01 오라클 인터내셔날 코포레이션 System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11188427B2 (en) * 2014-09-26 2021-11-30 Oracle International Corporation System and method for transaction recovery in a multitenant application server environment
US9519509B2 (en) * 2014-10-21 2016-12-13 Oracle International Corporation System and method for supporting transaction affinity based request handling in a middleware environment
CN106648922A (en) * 2016-10-11 2017-05-10 江苏电力信息技术有限公司 Data collecting method based on XMPP
US11070559B2 (en) * 2017-08-23 2021-07-20 Oracle International Corporation System and method for supporting object-based security
CN108108238B (en) * 2017-12-29 2022-01-11 长威信息科技发展股份有限公司 ITM monitoring-based agent pointing automatic migration method and electronic equipment
KR102115758B1 (en) 2018-06-15 2020-05-27 주식회사 티맥스 소프트 Method for processing data flow based service and computer program stored in computer readable medium therfor
US10430179B1 (en) * 2019-03-07 2019-10-01 Capital One Services, Llc Methods and systems for managing application configurations

Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020031230A1 (en) * 2000-08-15 2002-03-14 Sweet William B. Method and apparatus for a web-based application service model for security management
US20020144012A1 (en) * 2001-03-26 2002-10-03 Sun Microsystems, Inc. Dynamic interface aggregation on demand
US20040006765A1 (en) * 2002-04-16 2004-01-08 Goldman Kenneth J. Live software construction with dynamic classes
US20040015974A1 (en) * 2002-03-21 2004-01-22 Sun Microsystems, Inc. Callback event listener mechanism for resource adapter work executions performed by an application server thread
US20040019684A1 (en) * 2002-05-02 2004-01-29 Timothy Potter Systems and methods for application view transactions
US20040098726A1 (en) * 2002-11-15 2004-05-20 International Business Machines Corporation JMS integration into an application server
US20040123048A1 (en) * 2002-07-22 2004-06-24 Ward Mullins Dynamic object-driven database manipulation and mapping system having a simple global interface and an optional multiple user need only caching system with disable and notify features
US20040172639A1 (en) * 2003-02-28 2004-09-02 Bea Systems, Inc. Method for dynamically generating a wrapper
US20040205771A1 (en) * 2000-03-29 2004-10-14 Nextset Software Inc. System and method of generating and using proxy beans
US6922695B2 (en) * 2001-09-06 2005-07-26 Initiate Systems, Inc. System and method for dynamically securing dynamic-multi-sourced persisted EJBS
US20050268276A1 (en) * 2004-06-01 2005-12-01 Tankov Nikolai D Program object to support connection generation
US6996565B2 (en) * 2001-09-06 2006-02-07 Initiate Systems, Inc. System and method for dynamically mapping dynamic multi-sourced persisted EJBs
US7013469B2 (en) * 2001-07-10 2006-03-14 Microsoft Corporation Application program interface for network software platform
US20060161925A1 (en) * 2005-01-20 2006-07-20 International Business Machines Corporation Method, system, and program product for providing access to J2EE application servers from non-J2EE application clients
US7249131B2 (en) * 2001-09-06 2007-07-24 Initiate Systems, Inc. System and method for dynamically caching dynamic multi-sourced persisted EJBs
US20080249988A1 (en) * 2007-04-06 2008-10-09 International Business Machines Corporation Computer programming method and system for performing a reversal of selected structured query language operations within a database transaction
US7472401B2 (en) * 2003-02-28 2008-12-30 Bea Systems, Inc. Computer product for a dynamically generated wrapper class
US7509429B2 (en) * 2004-05-28 2009-03-24 Sap Ag Message endpoint activation
US20090094316A1 (en) * 2005-06-22 2009-04-09 Mark Lawrence Chen Distributed Virtual Machine Architecture
US20090307229A1 (en) * 2008-04-28 2009-12-10 Infosys Technologies Limted Method and system for rapidly processing and transporting large XML files
US7657658B2 (en) * 2004-06-07 2010-02-02 Sap Ag Resource adapter deployment
US20120102085A1 (en) * 2010-10-22 2012-04-26 Unisys Corp. Resource adapter for inbound and outbound communications in an application server

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738975B1 (en) 1998-11-18 2004-05-18 Software Ag, Inc. Extensible distributed enterprise application integration system
US6578191B1 (en) 1999-05-17 2003-06-10 International Business Machines Corporation Method and apparatus for dynamic generation of adapters
US20020116454A1 (en) 2000-12-21 2002-08-22 William Dyla System and method for providing communication among legacy systems using web objects for legacy functions
US7930704B2 (en) * 2002-02-06 2011-04-19 Oracle International Corporation J2EE component extension architecture
US7035841B2 (en) 2002-07-18 2006-04-25 Xerox Corporation Method for automatic wrapper repair
US7506342B2 (en) 2002-07-23 2009-03-17 Bea Systems, Inc. System and method for implementing J2EE connector architecture
US7418711B1 (en) * 2003-04-28 2008-08-26 Sprint Communications Company L.P. Messaging bridge that facilitates communication with a mainframe environment
US7831693B2 (en) 2003-08-18 2010-11-09 Oracle America, Inc. Structured methodology and design patterns for web services
US8266326B2 (en) * 2003-09-15 2012-09-11 Oracle America, Inc. Frameworks for integrating information systems
US20050210108A1 (en) 2004-03-19 2005-09-22 John Covert System and method for creating customized electronic messages
US20050267918A1 (en) 2004-05-28 2005-12-01 Gatev Andrei A System and method for bundling deployment descriptor files within an enterprise archive for fast reliable resource setup at deployment time
US9300523B2 (en) * 2004-06-04 2016-03-29 Sap Se System and method for performance management in a multi-tier computing environment
US7644184B2 (en) * 2004-12-08 2010-01-05 International Business Machines Corporation Universal adapter
US7693888B2 (en) 2005-05-10 2010-04-06 Siemens Communications, Inc. Data synchronizer with failover facility
US7739699B2 (en) * 2005-12-29 2010-06-15 Sap Ag Automated creation/deletion of messaging resources during deployment/un-deployment of proxies for the messaging resources
US7752484B2 (en) * 2006-10-24 2010-07-06 Sap Ag On-demand wrappers of application data with session failover recovery
US8656413B2 (en) * 2006-10-24 2014-02-18 Sap Ag On-demand wrappers of application data
US8695015B2 (en) * 2006-12-06 2014-04-08 International Business Machines Corporation Application message conversion using a feed adapter
EP1936907A1 (en) * 2006-12-12 2008-06-25 The Sporting Exchange Ltd. Transaction processing system
US20090265704A1 (en) 2008-04-17 2009-10-22 Branda Steven J Application Management for Reducing Energy Costs

Patent Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040205771A1 (en) * 2000-03-29 2004-10-14 Nextset Software Inc. System and method of generating and using proxy beans
US20020031230A1 (en) * 2000-08-15 2002-03-14 Sweet William B. Method and apparatus for a web-based application service model for security management
US20020144012A1 (en) * 2001-03-26 2002-10-03 Sun Microsystems, Inc. Dynamic interface aggregation on demand
US7003773B2 (en) * 2001-03-26 2006-02-21 Sun Microsystems, Inc. Dynamic interface aggregation on demand
US7017162B2 (en) * 2001-07-10 2006-03-21 Microsoft Corporation Application program interface for network software platform
US7013469B2 (en) * 2001-07-10 2006-03-14 Microsoft Corporation Application program interface for network software platform
US7555757B2 (en) * 2001-07-10 2009-06-30 Microsoft Corporation Application program interface for network software platform
US6922695B2 (en) * 2001-09-06 2005-07-26 Initiate Systems, Inc. System and method for dynamically securing dynamic-multi-sourced persisted EJBS
US7249131B2 (en) * 2001-09-06 2007-07-24 Initiate Systems, Inc. System and method for dynamically caching dynamic multi-sourced persisted EJBs
US6996565B2 (en) * 2001-09-06 2006-02-07 Initiate Systems, Inc. System and method for dynamically mapping dynamic multi-sourced persisted EJBs
US20040015974A1 (en) * 2002-03-21 2004-01-22 Sun Microsystems, Inc. Callback event listener mechanism for resource adapter work executions performed by an application server thread
US20040006765A1 (en) * 2002-04-16 2004-01-08 Goldman Kenneth J. Live software construction with dynamic classes
US20040019684A1 (en) * 2002-05-02 2004-01-29 Timothy Potter Systems and methods for application view transactions
US20040123048A1 (en) * 2002-07-22 2004-06-24 Ward Mullins Dynamic object-driven database manipulation and mapping system having a simple global interface and an optional multiple user need only caching system with disable and notify features
US20040098726A1 (en) * 2002-11-15 2004-05-20 International Business Machines Corporation JMS integration into an application server
US20040172639A1 (en) * 2003-02-28 2004-09-02 Bea Systems, Inc. Method for dynamically generating a wrapper
US7472401B2 (en) * 2003-02-28 2008-12-30 Bea Systems, Inc. Computer product for a dynamically generated wrapper class
US7472400B2 (en) * 2003-02-28 2008-12-30 Bea Systems, Inc. Method for dynamically generating a wrapper class
US7509429B2 (en) * 2004-05-28 2009-03-24 Sap Ag Message endpoint activation
US20050268276A1 (en) * 2004-06-01 2005-12-01 Tankov Nikolai D Program object to support connection generation
US7657658B2 (en) * 2004-06-07 2010-02-02 Sap Ag Resource adapter deployment
US20060161925A1 (en) * 2005-01-20 2006-07-20 International Business Machines Corporation Method, system, and program product for providing access to J2EE application servers from non-J2EE application clients
US20090094316A1 (en) * 2005-06-22 2009-04-09 Mark Lawrence Chen Distributed Virtual Machine Architecture
US20080249988A1 (en) * 2007-04-06 2008-10-09 International Business Machines Corporation Computer programming method and system for performing a reversal of selected structured query language operations within a database transaction
US20090307229A1 (en) * 2008-04-28 2009-12-10 Infosys Technologies Limted Method and system for rapidly processing and transporting large XML files
US20120102085A1 (en) * 2010-10-22 2012-04-26 Unisys Corp. Resource adapter for inbound and outbound communications in an application server

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111736913A (en) * 2019-03-25 2020-10-02 华为技术有限公司 Class loading method and device
US11755341B2 (en) 2019-03-25 2023-09-12 Huawei Technologies Co., Ltd. Class loading method and apparatus

Also Published As

Publication number Publication date
US10033790B2 (en) 2018-07-24
US11064005B2 (en) 2021-07-13
US9325768B2 (en) 2016-04-26
US20130290425A1 (en) 2013-10-31
US20130290524A1 (en) 2013-10-31
US9456017B2 (en) 2016-09-27
US20130290453A1 (en) 2013-10-31
US20130290983A1 (en) 2013-10-31

Similar Documents

Publication Publication Date Title
US20130290927A1 (en) Dynamic code generation to dynamically create and deploy messaging provider-specific wrappers for a resource adapter
CN102904959B (en) Network accelerating method and gateway
US20070260750A1 (en) Adaptable data connector
CN104703022A (en) Apparatus and method for screen sharing
EP3131303B1 (en) Method and device for transmitting data in intelligent terminal to television terminal
CN104184789A (en) File downloading method and device
US20120287224A1 (en) Video chat within a webpage and video instant messaging
CN109495433A (en) Data download method and device, storage medium and electronic device
CN108712320B (en) Message pushing method and device
JP2013543189A (en) Method and apparatus for controlling a remote device using SMS
CN105530277A (en) Method and device for cooperative work of devices
WO2014113715A1 (en) Streaming zip
CN105190530A (en) Transmitting hardware-rendered graphical data
KR20110065448A (en) Composing message processing pipelines
CN111901230A (en) Internet of things gateway and system supporting equipment access verification and equipment access verification method
CN101170442B (en) Software online upgrade method and system
US20090024739A1 (en) Endpoint discriminator in network transport protocol startup packets
US20190182304A1 (en) Universal messaging protocol for limited payload size
US9614900B1 (en) Multi-process architecture for a split browser
CN103401931A (en) Method and system for downloading file
CN102055623A (en) Method and system for automatically testing embedded type browser
CN105677688A (en) Page data loading method and system
US20140032726A1 (en) Method and apparatus for configuring social networking site sharing functions
CN102662652A (en) Method and equipment used for customizing personalized application
CN103634323A (en) Long connection based data processing implementation method, system and device

Legal Events

Date Code Title Description
AS Assignment

Owner name: ORACLE INTERNATIONAL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:STEIDL, JEFFREY;REEL/FRAME:030683/0853

Effective date: 20130427

Owner name: ORACLE INTERNATIONAL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MAGANTY, VIVEKANANDA;REEL/FRAME:030683/0897

Effective date: 20130427

STCV Information on status: appeal procedure

Free format text: ON APPEAL -- AWAITING DECISION BY THE BOARD OF APPEALS

STCV Information on status: appeal procedure

Free format text: BOARD OF APPEALS DECISION RENDERED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION