8645928

Localizing a Java Gui Application Without Source Code Modification and Rebuilding

PublishedFebruary 4, 2014
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
17 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A computer-implemented method, comprising: while a software application is executing to generate a source language user interface, extracting source language GUI component text of a GUI component that is embodied in a bytecode of said software application, said extracting including: identifying that a localizable method in said bytecode of said software application matches a method found in a class-method map; in response to the identifying, adding instructions associated with the localizable method to said bytecode; and extracting source language GUI component text from an input parameter of the localizable method; forming a localization pack file that includes said extracted source language GUI component text, wherein said localization pack file contains a plurality of key-value pairs, and wherein each key-value pair includes a value containing at least a portion of said extracted source language GUI component text and a key indicating a location of the localizable method in said bytecode of said software application from which the portion of extracted source language GUI component text was extracted; translating said source language GUI component text of said localization pack file to a target language; in response to said software application executing again, reading said translated GUI component text from said localization pack file; forming a GUI component that includes said translated GUI component text; and displaying said GUI component that includes said translated GUI component text.

2

2. The method of claim 1 , wherein said extracting further comprises: reading a GUI component from said bytecode, wherein the class of said GUI component is not a recognized GUI component class; finding a parent GUI component class of said unrecognized GUI component class, wherein the parent GUI component class is recognized; searching said parent GUI component class for a to-be-localized method call; and associating said parent GUI component class with said unrecognized GUI component class when said parent GUI component class has a to-be-localized method call.

3

3. The method of claim 1 wherein said reading comprises: while said software application is executing, encountering one or more instrumentation instructions, wherein said one or more instrumentation instructions cause said localization pack file to be read; and determining whether said source language GUI component text of said GUI component to be displayed is in said localization pack file, wherein said translated GUI component text is read in response to determining that said source language GUI component text of said GUI component to be displayed is in said localization pack file.

4

4. The method of claim 3 further comprising: in response to determining that said GUI component to be displayed is not in said localization pack file, displaying said source language GUI component, and storing said source language GUI component text in said localization pack file.

5

5. The method of claim 1 further comprising: in response to encountering said GUI component, wherein said GUI component comprises a dynamic string, defining a partition policy for said dynamic string for use in partitioning said dynamic string into dynamic and static parts, translating any static parts of said dynamic string, determining a translation of said dynamic string in accordance with said partition policy in response to encountering a variation of said dynamic string, and displaying said translation of said dynamic string.

6

6. The method of claim 1 further comprising: defining an event handler for a particular GUI component, wherein said event handler is triggered by a user; in response to the triggering of the event handler, prompting said user to input a translation of particular GUI component text associated with said GUI component; and displaying said translation of said particular GUI component text.

7

7. The method of claim 6 further comprising: storing said translation of said particular GUI component text.

8

8. A computer system to localize a source language user interface of a software application to a target language user interface, comprising: a processor; and memory coupled to said processor, said memory storing: one or more instructions that extract source language GUI component text of one or more GUI components from bytecode of said software application while said software application is executing to generate said source language user interface, said instructions including: one or more instructions that identify that a localizable method in said bytecode of said software application matches a method found in a class-method map; one or more instructions that add instructions associated with the localizable method to said bytecode in response to the identifying; and one or more instructions that extract source language GUI component text from an input parameter of the localizable method; one or more instructions that form a localization pack file that includes said extracted source language GUI component text and a translation of said source language GUI component text to said target language, wherein said localization pack file contains a plurality of key-value pairs, and wherein each key-value pair includes a value containing at least a portion of said extracted source language GUI component text and a key indicating a location of the localizable method in said bytecode of said software application from which the portion of extracted source language GUI component text was extracted; one or more instructions that translate said source language GUI component text of said localization pack file to a target language; one or more instructions that, in response to said software application executing again, read said translated GUI component text; one or more instructions that form one or more GUI components that include said translated GUI component text; and one or more instructions that display said GUI components that include said translated GUI component text.

9

9. The computer system of claim 8 wherein said one or more instructions that extract further comprise: one or more instructions that read a GUI component from said bytecode, wherein the class of said GUI component is not a recognized GUI component class; one or more instructions that find a parent GUI component class of said unrecognized GUI component class, wherein said parent GUI component class is recognized; one or more instructions that search said parent GUI component class for a to-be-localized method call; and one or more instructions that associate said parent GUI component class with said unrecognized GUI component class when said parent GUI component class has a to-be-localized method call.

10

10. The computer system of claim 8 wherein said one or more instructions that read comprise: one or more instructions that, while said software application is being executed, read said localization pack file in response to encountering instrumentation instructions, wherein said localization pack file is stored in said computer system, and one or more instructions that determine whether said GUI component is in said localization pack file, wherein said translated GUI component text is read in response to said GUI component being in said localization pack file.

11

11. The computer system of claim 10 wherein said one or more instructions further comprise: one or more instructions that display said source language GUI component text, and one or more instructions that store said source language GUI component text in said localization pack file in response to said GUI component not being in said localization pack file.

12

12. The computer system of claim 8 , said memory further comprising: one or more instructions that, in response to encountering said GUI component, wherein said GUI component comprises a dynamic string, partition a dynamic string of said source language GUI component text into dynamic and static parts in accordance with a predefined partition policy; one or more instructions that store a translation of any of said static parts of said dynamic string; one or more instructions that determine a translation of said dynamic string in accordance with said predefined partition policy; and one or more instructions that display said translation of said dynamic string.

13

13. The computer system of claim 12 further comprising one or more instructions that, when said computer system stores a translation of said dynamic string, display said translation of said dynamic string.

14

14. The computer system of claim 8 , said memory further comprising: one or more instructions that define an event handler for a particular GUI component, wherein said event handler is triggered by a user;, and one or more instructions that, in response to the triggering of the event handler, prompt said user to input a translation of said particular GUI component text associated with said particular GUI component.

15

15. The computer system of claim 8 wherein said software application is a Java Rich Application comprising at least one of: Abstract Window Toolkit, Swing and Eclipse Standard Widget Toolkit.

16

16. A computer program product comprising a non-transitory computer usable storage medium having a computer readable program, wherein the computer readable program when executed on a computer causes the computer to: while a software application is executing to generate a source language user interface, extracting source language GUI component text of a GUI component that is embodied in a bytecode of said software application, said extracting including: identifying that a localizable method in said bytecode of said software application matches a method found in a class-method map; in response to the identifying, adding instructions associated with the localizable method to said bytecode; and extracting source language GUI component text from an input parameter of the localizable method; form a localization pack file that includes said extracted source language GUI component text, wherein said localization pack file contains a plurality of key-value pairs, and wherein each key-value pair includes a value containing at least a portion of said extracted source language GUI component text and a key indicating a location of the localizable method in said bytecode of said software application from which the portion of extracted source language GUI component text was extracted; translate said source language GUI component text of said localization pack file to a target language; in response to said software application executing again, read said translated GUI component text from said localization pack file; form a GUI component that includes said translated GUI component text; and display said GUI component that includes said translated GUI component text.

17

17. The computer program product of claim 16 , wherein the computer readable program is executed on the computer, said read causes the computer to: read the localization pack file in response to encountering one or more instrumentation instructions, wherein said one or more instrumentation instructions cause said localization pack file to be read; and determine whether source language GUI component text of said GUI component to be displayed is in said localization pack file, wherein said translated GUI component text is read in response to a determination that said source language GUI component text of said GUI component to be displayed is in said localization pack file.

Patent Metadata

Filing Date

Unknown

Publication Date

February 4, 2014

Inventors

Heng Chu
Ling Zhang

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “LOCALIZING A JAVA GUI APPLICATION WITHOUT SOURCE CODE MODIFICATION AND REBUILDING” (8645928). https://patentable.app/patents/8645928

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

LOCALIZING A JAVA GUI APPLICATION WITHOUT SOURCE CODE MODIFICATION AND REBUILDING — Heng Chu | Patentable