System and method for classloading in a multitenant application server environment

US10356161B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10356161-B2
Application numberUS-201514866042-A
CountryUS
Kind codeB2
Filing dateSep 25, 2015
Priority dateJan 21, 2014
Publication dateJul 16, 2019
Grant dateJul 16, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In accordance with an embodiment, described herein is a system and method for classloading in a multitenant application server environment. The system includes a domain with a plurality of partitions, and a resource group template including one or more applications, each configured with code shareable across the plurality of partitions. A class loader hierarchy can be created for each application instance in a partition, wherein the class loader hierarchy includes a class loader structure for that application instance, a partition class loader for the partition, and a shared application class loader for all instances of that application. At runtime, the class loader structure for an application instance can use the partition class loader as a parent class loader to load classes visible to the partition, and use the shared application class loader as an alternative parent class loader.

First claim

Opening claim text (preview).

What is claimed is: 1. A system for classloading in a multitenant application server environment, comprising: one or more computers, each including a microprocessor; an application server environment executing on the one or more computers, wherein the application server environment includes an application server instance, wherein the application server instance includes and operates according to a domain configuration that is used at runtime to define a domain of the application server instance; a first partition and a second partition defined within the domain of the application server instance, wherein the first partition represents a first runtime and administrative subdivision of the domain, and wherein the second partition represents a second runtime and administrative subdivision of the domain; an application deployed to the domain as a resource of the domain, wherein the application is configured with code that is shareable by the first partition and the second partition; a first instance of the application, and a second instance of the application, wherein the first instance of the application is deployed to the first partition and the second instance of the application is deployed to the second partition, and a class loader hierarchy that includes: a class loader structure that loads server classes of the application, a first partition class loader that loads a first instance of a first class such that the first instance of the first class is only visible to the first partition, a second partition class loader that loads a second instance of the first class such that the second instance of the first class is only visible to the second partition, and a shared application class loader that loads the shareable code of the application, wherein the loaded shareable code is accessible to the first instance of the application deployed to the first partition and the second instance of the application deployed to the second partition. 2. The system of claim 1 , wherein the shareable code in the application is configured using an application deployment descriptor. 3. The system of claim 1 , wherein the first partition class loader load classes for all application instances within the first partition. 4. The system of claim 1 , wherein the first partition class loader is created when the first instance of the application is being deployed to said first partition through a resource group template. 5. The system of claim 1 , wherein the first partition class loader is removed when said first partition is removed. 6. The system of claim 1 , wherein the shared application class loader loads classes to be shared by said first instance of the application deployed to said first partition and said second instance of the application deployed to said second partition. 7. The system of claim 1 , wherein the shared application class loader is created from a resource group template when the first instance of the application is being deployed to the first partition. 8. The system of claim 7 , wherein the shared application class loader is removed when the application is being removed from the resource group template and the application is being undeployed from a last partition. 9. The system of claim 1 , wherein the class loaders reside on a single application server instance. 10. A method for providing a partition classloader in a multitenant application server environment, comprising: providing an application server environment executing on one or more computers, wherein the application server environment includes an application server instance, wherein the application server instance includes and operates according to a domain configuration that is used at runtime to define a domain of the application server instance; providing a first partition and a second partition defined within the domain of the application server instance, wherein the first partition represents a runtime and administrative subdivision of the domain, and wherein the second partition represents a second runtime and administrative subdivision of the domain; deploying an application to the domain as a resource of the domain, wherein the application is configured with code that is shareable by the first partition and the second partition; deploying a first instance of the application to the first partition, and deploying a second instance of the application to the second partition, and providing a class loader hierarchy that includes: a class loader structure that loads server classes of the application, a first partition class loader that loads a first instance of a first class such that the first instance of the first class is only visible to the first partition, a second partition class loader that loads a second instance of the first class such that the second instance of the first class is only visible to the second partition, and a shared application class loader that loads the shareable code of the application, wherein the loaded shareable code is accessible to the first instance of the application deployed to the first partition and the second instance of the application deployed to the second partition. 11. The method of claim 10 , wherein the shareable code in the application is configured using an application deployment descriptor. 12. The method of claim 10 , wherein the first partition class loader load classes for all application instances within the first partition. 13. The method of claim 10 , wherein the first partition class loader is created when the first instance of the application is being deployed to said first partition through a resource group template. 14. The method of claim 10 , wherein the first partition class loader is removed when said first partition is removed. 15. The method of claim 10 , wherein the shared application class loader loads classes to be shared by said first instance of the application deployed to said first partition and said second instance of the application deployed to said second partition. 16. The method of claim 10 , wherein the shared application class loader is created from a resource group template when the first instance of the application is being deployed to the first partition. 17. The method of claim 16 , wherein the shared application class loader is removed when the application is being removed from the resource group template and the application is being undeployed from a last partition. 18. The method of claim 10 , wherein the class loaders reside on a single application server instance. 19. 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: providing an application server environment executing on one or more computers, wherein the application server environment includes an application server instance, wherein the application server instance includes and operates according to a domain configuration that is used at runtime to define a domain of the application server instance; providing a first partition and a second partition defined within the domain of the application server instance, wherein the first partition represents a runtime and administrative subdivision of the domain, and wherein the second partition represents a second runtime and administrative subdivision of the domain; deploying an application to the domain as a resource of the domain, wherein the application is configured with code that is shareable by the first partition and t

Assignees

Inventors

Classifications

  • involving the movement of software or configuration parameters  (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title

  • Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title

  • H04L67/10Primary

    in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10356161B2 cover?
In accordance with an embodiment, described herein is a system and method for classloading in a multitenant application server environment. The system includes a domain with a plurality of partitions, and a resource group template including one or more applications, each configured with code shareable across the plurality of partitions. A class loader hierarchy can be created for each applicati…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification H04L67/10. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jul 16 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).