IP Library Granted Patent US 9,684,733
Granted Patent B2
US 9,684,733 · App. 12/816,478 · Granted Jun 20, 2017

Abstract internationalization of web applications

Inventor: Veerendra Kumar Niddapu (Andhra Pradesh, IN)
Assignee: CA, Inc.
G06F17/30905
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,684,733
App. No.
12/816,478
Granted
Jun 20, 2017
Kind
B2
Abstract

According to one embodiment of the present invention, a method for abstract internationalization of web applications may be provided. In this method, a first set of object files may be generated according to a locale of a plurality of locales and one or more properties files. Each properties file may be associated with a web application of a plurality of web applications. A localization module operable to facilitate abstract internationalization of a web application may be stored. A request to use the web application may be received from a client. The request may indicate a locale of the client. A second set of one or more object files may be selected according to the web application and the locale of the client. A response comprising markup language that describes the web application, the second set of object files, and the localization module may be generated and transmitted to a client.

Claims (59)

1. A method, comprising:

storing, by a server, a first set of one or more object files, each object file generated according to a locale of a plurality of locales, each object file generated according to one or more properties files, each properties file associated with a web application of a plurality of web applications;

storing, by a server, a localization module configured to facilitate dynamic internationalization of a web application configured for static internationalization;

receiving, by a server and from a client, a request to use the web application, the request indicating a locale of the client;

determining, by the server, that static internationalization for the request has failed, wherein the web application was developed for static internationalization;

in response to determining that static internationalization has failed, identifying, by the server, one or more constants in a first one of the one or more object files, wherein the one or more object files are executed at the client to generate markup language describing the web application;

generating, using the localization module, a new object file according to the locale of the client, wherein the new object file comprises a localized string for each constant in the first object file, each localized string being generated based on the locale of the client;

generating, by the server, a response comprising the new object file, the first object file, and the localization module;

transmitting, by the server, the response to the client;

by the localization module and at the client, inserting each localized string from the new object file in place of each constant in the generated markup language; and

replacing a plurality of locale-independent keys of the first object file with a plurality of values that correspond to the locale of the client from the new object file.

2. The method of claim 1 , further comprising:

generating a third set of one or more object files, each object file in the third set being generated according to a locale of the plurality of locales, each object file comprising common localization information of a plurality of web applications.

3. The method of claim 1 , further comprising:

generating at least one additional object file according to at least one properties file to allow localization of the web application according to an additional locale.

4. The method of claim 1 , the web application developed using a GOOGLE WEB TOOLKIT (GWT).

5. The method of claim 1 , the localization module further comprising:

a class that overrides a GWT class to enable abstract internationalization of a format of one or more of a date, a time, a number, a constant, a label, and a message; and

an implementation of a GWT interface to enable dynamic internationalization of a format of one or more of a date, a time, a number, a constant, a label, and a message.

6. An apparatus comprising:

a memory operable to:

store a first set of one or more object files, each object file generated, by a server, according to a locale of a plurality of locales, each object file generated according to one or more properties files, each properties file associated with a web application of a plurality of web applications;

store a localization module configured to facilitate dynamic internationalization of a web application configured for static internationalization;

one or more processors associated with a server operable to:

receive, from a client, a request to use the web application, the request indicating a locale of the client;

determine that static internationalization for the request has failed;

in response to determining that static internationalization has failed, identifying one or more constants in a first one of the one or more object files, wherein the one or more object files are executed at the client to generate markup language describing the web application;

generate, using the localization module, a new object file according to the locale of the client, wherein the new object file comprises a localized string for each constant in the first object file, each localized string being generated based on the locale of the client;

generate a response comprising the new object file, the first object file, and the localization module; and

transmit the response to the client, wherein

the localization module, at the client, inserts each localized string from the new object file in place of each constant in the generated markup language; and

replace, at the client, a plurality of locale-independent keys of the first object file with a plurality of values that correspond to the locale of the client from the new object file.

7. The apparatus of claim 6 , the one or more processors further operable to:

generate a third set of one or more object files, each object file in the third set being generated according to a locale of the plurality of locales, each object file comprising common localization information of a plurality of web applications.

8. The apparatus of claim 6 , the one or more processors further operable to: generate at least one additional object file according to at least one properties file to allow localization of the web application according to an additional locale.

9. The apparatus of claim 6 , the web application developed using a GOOGLE WEB TOOLKIT (GWT).

10. The system apparatus of claim 6 , the localization module further comprising: a class that overrides a GWT class to enable abstract internationalization of a format of one or more of a date, a time, a number, a constant, a label, and a message; and

an implementation of a GWT interface to enable dynamic internationalization of a format of one or more of a date, a time, a number, a constant, a label, and a message.

11. A non-transitory computer-readable storage medium having computer-executable code, when executed by one or more processors operable to:

store, by a server, a first set of one or more object files, each object file generated according to a locale of a plurality of locales, each object file generated according to one or more properties files, each properties file associated with a web application of a plurality of web applications;

store, by the server, a localization module configured to facilitate dynamic internationalization of a web application configured for static internationalization;

receive, by the server and from a client, a request to use a web application, the request indicating a locale of the client;

determining, by the server, that static internationalization for the request has failed by determining that none of the object files have been generated according to the locale of the client;

in response to determining that static internationalization has failed, identifying, by the server, one or more constants in a first one of the one or more object files, wherein the one or more object files are executed at the client to generate markup language describing the web application;

generating, using the localization module, a new object file according to the locale of the client, wherein the new object file comprises a localized string for each constant in the first object file, each localized string being generated based on the locale of the client;

generate, by the server, a response comprising the new object file, the first object file, and the localization module; and

transmit the response to the client, wherein

the localization module, at the client, inserts each localized string from the new object file in place of each constant in the generated markup language; and

replace a plurality of locale-independent keys of the first object file with a plurality of values that correspond to the locale of the client from the new object file.

12. The medium of claim 11 , wherein the localization module:

replaces a plurality of locale-independent keys of the first object file with a plurality of values that correspond to the locale of the client from the new object file.

13. The medium of claim 11 , the medium further operable to:

generate a third set of one or more object files, each object file in the third set being generated according to a locale of the plurality of locales, each object file comprising common localization information of a plurality of web applications.

14. The medium of claim 11 , the medium further operable to:

generate at least one additional object file according to at least one properties file to allow localization of the web application according to an additional locale.

15. The medium of claim 11 , the web application developed using a GOOGLE WEB TOOLKIT (GWT).

16. The medium of claim 11 , the localization module further comprising:

a class that overrides a GWT class to enable abstract internationalization of a format of one or more of a date, a time, a number, a constant, a label, and a message; and

an implementation of a GWT interface to enable dynamic internationalization of a format of one or more of a date, a time, a number, a constant, a label, and a message.

Assignments (2)
MERGER Recorded Mar 17, 2017
From: COMPUTER ASSOCIATES THINK, INC.
To: CA, INC.
Reel/Frame 041606/0771 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2010
From: NIDDAPU, VEERENDRA KUMAR
To: COMPUTER ASSOCIATES THINK, INC.,
Reel/Frame 024542/0870 →
Continuity (1)
Related Publication 20110314081A1 · Dec 22, 2011