IP Library Granted Patent US 9,967,324
Granted Patent B2
US 9,967,324 · App. 14/857,451 · Granted May 8, 2018

System and method for providing data sources for use in a multitenant application server environment

Inventors: Alexander Somogyi (Basking Ridge, NJ); Stephen Felts (Denville, NJ)
Assignee: ORACLE INTERNATIONAL CORPORATION
H04L67/10G06F9/5077
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,967,324
App. No.
14/857,451
Granted
May 8, 2018
Kind
B2
Abstract

In accordance with an embodiment, an application server environment can include a plurality of partitions and a resource group template, which can be referenced by a resource group in one or more of the plurality of partitions. A data source configuration can be defined as part of the resource group template. The data source configuration can be overridden with attributes specific to a particular referencing partition. A data source subsystem can create a data source object in accordance with the overridden data source configuration, for use in creating connections to a database associated with the particular referencing partition, monitoring and diagnosing the data source object.

Claims (46)

1. A system for supporting data sources in a multitenant application server environment, comprising:

a computer that includes a microprocessor;

an application server environment, executing on the computer, that includes an application server domain defined at runtime by a configuration file,

wherein the application server domain includes

a plurality of partitions, wherein each of the plurality of partitions represents a subdivision of the domain, wherein the subdivision provides a runtime for use by a tenant of the multitenant application server environment, and

a resource group template referenced by one or more of the plurality of partitions, wherein each of the one or more referencing partitions defines attributes specific to the referencing partition;

a data source configuration, defined as part of the resource group template that provides a template for creating data source objects;

a management bean, in the application server environment, that operates to override the data source configuration with attributes specific to a particular referencing partition; and

a data source subsystem that uses the overridden data source configuration to create a data source object, for use in creating connections to a database associated with the particular referencing partition.

2. The system of claim 1 , further comprising

a runtime bean component that generates statistics specific to the data source object for use in monitoring the data source object.

3. The system of claim 1 , wherein the data source subsystem implements a partition-aware interface, and upon receiving a callback function with a name of the particular referencing partition, write a state of a connection pool created using the data source object to a specified output stream.

4. The system of claim 1 , wherein the data source configuration is copied to a resource group in the particular referencing partition.

5. The system of claim 1 , wherein the attributes specific to the particular referencing partition include database connectivity attributes and attributes for use in turning the connections.

6. The system of claim 1 , wherein the data source object is configured to be accessed by resources in a different partition.

7. The system of claim 6 , wherein a cross-partition property on the data source object is used to bind the data source object to a Java Naming and Directory Interface (JNDI) tree for the data source to be visible in the different partition.

8. A method for supporting data sources in a multitenant application server environment, comprising:

configuring an application server environment executing on a computer including a microprocessor, wherein the application server environment includes an application server domain defined at runtime by a configuration file,

wherein the application server domain includes

a plurality of partitions, wherein each of the plurality of partitions represents a subdivision of the domain, wherein the subdivision provides a runtime for use by a tenant of the multitenant application server environment, and

a resource group template referenced by one or more of the plurality of partitions, wherein each of the one or more referencing partitions defines attributes specific to the referencing partition;

defining a data source configuration as part of the resource group template, wherein the data source configuration provides a template for creating data source objects;

overriding, using a management bean in the application server environment, the data source configuration with attributes specific to a particular referencing partition; and

creating, by a data source subsystem, a data source object using the overridden data source configuration, wherein the data source object is used to create connections to a database associated with the particular referencing partition.

9. The method of claim 8 , further comprising

providing a runtime bean component that generates statistics specific to the data source object for use in monitoring the data source object.

10. The method of claim 8 , wherein the data source subsystem implements a partition-aware interface, and upon receiving a callback function with a name of the particular referencing partition, write a state of a connection pool created using the data source object to a specified output stream.

11. The method of claim 8 , wherein the data source configuration is copied to a resource group in the particular referencing partition.

12. The method of claim 8 , wherein the attributes specific to the particular referencing partition include database connectivity attributes and attributes for use in turning the connections.

13. The method of claim 8 , wherein the data source object is configured to be accessed by resources in a different partition.

14. The method of claim 13 , wherein a cross-partition property on the data source object is used to bind the data source object to a Java Naming and Directory Interface (JNDI) tree for the data source to be visible in the different partition.

15. A non-transitory computer readable storage medium, including instructions stored thereon which when read and executed by one or more computers cause the one or more computers to perform the steps comprising:

configuring an application server environment executing on a computer including a microprocessor, wherein the application server environment includes an application server domain defined at runtime by a configuration file,

wherein the application server domain includes

a plurality of partitions, wherein each of the plurality of partitions represents a subdivision of the domain, wherein the subdivision provides a runtime for use by a tenant of the multitenant application server environment, and

a resource group template referenced by one or more of the plurality of partitions,

wherein each of the one or more referencing partitions defines attributes specific to the referencing partition;

defining a data source configuration as part of the resource group template, wherein the data source configuration provides a template for creating data source objects;

overriding, using a management bean in the application server environment, the data source configuration with attributes specific to a particular referencing partition; and

creating, by a data source subsystem, a data source object using the overridden data source configuration, wherein the data source object is used to create connections to a database associated with the particular referencing partition.

16. The non-transitory computer readable storage medium of claim 15 , further comprising

providing a runtime bean component that generates statistics specific to the data source object for use in monitoring the data source object.

17. The non-transitory computer readable storage medium of claim 15 , wherein the data source subsystem implements a partition-aware interface, and upon receiving a callback function with a name of the particular referencing partition, write a state of a connection pool created using the data source object to a specified output stream.

18. The non-transitory computer readable storage medium of claim 15 , wherein the data source configuration is copied to a resource group in the particular referencing partition.

19. The non-transitory computer readable storage medium of claim 15 , wherein the attributes specific to the particular referencing partition include database connectivity attributes and attributes for use in turning the connections.

20. The non-transitory computer readable storage medium of claim 15 , wherein the data source object is configured to be accessed by resources in a different partition.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2015
From: SOMOGYI, ALEXANDER; FELTS, STEPHEN
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 036602/0255 →
Continuity (2)
Provisional Application 62055853 · Sep 26, 2014
Related Publication 20160094403A1 · Mar 31, 2016