^ ^ ^ ^ I ^ ^ ^ ^ II ^ II ^ ^ ^ ^ ^ ^ ^ ^ ^ II ^ ^ ^ ^ ^ I ^ � European Patent Office Office europeen des brevets EP 0 950 953 A2

(12) EUROPEAN PATENT APPLICATION

(43) Date of publication: (51) |nt CI.6: G06F 9/46 20.10.1999 Bulletin 1999/42

(21) Application number: 99400947.0

(22) Date of filing: 19.04.1999

(84) Designated Contracting States: (72) Inventor: Tharakan, George AT BE CH CY DE DK ES Fl FR GB GR IE IT LI LU Sunnyvale, CA 94087 (US) MC NL PT SE Designated Extension States: (74) Representative: Chameroy, Claude et al AL LT LV MK RO SI c/o Cabinet Malemont 42, avenue du President Wilson (30) Priority: 17.04.1998 US 61803 75116 Paris (FR)

(71) Applicant: , INC. Palo Alto, California 94303 (US)

(54) Methods and apparatus for a property editing mechanism for a network computer environment

(57) A system allows an administrator to edit, from information, the client passes it to a configuration portion a client, property files that reside on a server. The client of the application program, where the property informa- issues a request to the server for property information tion is edited by the administrator. The client receives for an application program. After receiving the property the edited property information and sends it to the serv- er, where it is stored.

FIG. 2

Java Interface 220

Configuration Administrative a RMI Server Application t \ Property Class Applet v Program >i » Files

210 230 240 190

CM < T CO 110 180 lO O) o LO O) o a. LU

Printed by Jouve, 75001 PARIS (FR) 1 EP 0 950 953 A2 2

Description cation programs to take advantage of the different levels of property configuration possible in a network computer BACKGROUND OF THE INVENTION system. In such a system, property files can be organ- ized by user, by groups of users, or by network compu- A. Field of the Invention 5 ter. User properties are those that are specific to a par- ticular user, regardless of the network computer on [0001] This invention generally relates to distributed which that user is logged in. Group properties are those computer systems and, more particularly, to methods that are common to one or more users. Host properties and apparatus for remotely editing property information. are those that are specific to a network computer, re- 10 gardless of which user is logged into that computer. Sys- B. Description of the Related Art tem administrators should be able to configure these property files in a manner that is transparent to applica- [0002] Early computer systems and application pro- tion programs. grams provided their users with simple, text interfaces [0007] There have been some attempts made to ad- for entering and displaying information. Such interfaces 15 dress these problems, the Netra™ product from Sun Mi- were normally predefined, and there was little need or crosystems Computer Corporation allows system ad- capability for a user to customize the interface. Since ministrators to remotely edit property files by using Com- then, user interfaces- and application programs have mon Gateway Interface (CGI) scripts in conjunction with become increasingly robust and correspondingly com- HyperText Markup Language (HTML) forms.1 Although plex. For example, many modern computer systems 20 this approach works reasonably well for simple, static employ graphic user interfaces that contain numerous configurations, it is cumbersome in situations involving windows and panels. Also, modem application pro- dependencies between property fields. Moreover, this grams provide a wealth of capabilities, only a fraction of product does not allow system administrators to config- which are used by any one user. ure the different levels of property files in a manner that [0003] These complex systems and application pro- 25 is transparent to application programs. grams become cumbersome unless users can config- [0008] The Java Server product from JavaSoft also ure them to suit their needs best. For example, users allows system administrators to remotely edit property may wish to customize the color of the graphical desktop files that reside on a server. This is accomplished by us- or the commands that appear on the toolbar of a word ing an applet that interfaces with a servlet using the Hy- processing application program. This configuration is 30 perText Transfer Protocol (HTTP). An applet is a class generally accomplished by using property files that are created by using the Java™ programming language. stored at each user's computer. When a computer is The concept of an applet, and the Java programming turned on, or when an application program is launched, language, are described in a text entitled "The Java™ configuration information is read from the appropriate Tutorial" by Mary Campione and Kathy Walrath, Addi- file(s) to configure the system properly. Although these 35 son-Wesley, 1996, the contents ofwhich are hereby in- property files make matters easier for system users, corporated by reference. A servlet is similar to an applet, managing them makes matters more complicated for but it executes at a server. Although the Java Server system administrators. product is less cumbersome than the Netra product, it [0004] Much of the burden on administrators stems also does not allow configuration of different levels of from the fact that they must configure and maintain prop- 40 property files in a manner that is transparent to applica- erty files at each of the numerous users' computers. Ac- tion programs. cordingly, one approach for reducing the burden on sys- [0009] There exists, therefore, a need for a solution tem administrators is to employ the concept of network that allows system administrators to remotely and dy- computers. In a network computer system, all neces- namically edit property files in a network computer en- sary files, including property files, are stored centrally 45 vironment. Moreover, there is a similar need for a solu- on a server and are transferred to the network comput- tion that allows system administrators to configure prop- ers as needed for execution. As a result, the system ad- erty files in a manner that is transparent to application ministrator need only configure and maintain property programs. files at one location, namely the server. [0005] One problem associated with network compu- so SUMMARY OF THE INVENTION ter systems arises because network computers typically have neither the capability nor the authorization to alter [0010] To meet these needs, apparatus and methods files at the server, for security reasons. As a result, a consistent with the present invention allow a system ad- system administrator cannot remotely edit property files ministrator to remotely configure different levels of prop- from network Instead, the 55 on a server a computer. sys- 1 tem administrator must directly log into the server and Sun, Sun Microsystems, Sun Microsystems Computer Corporation, JavaSoft, the Sun Logo, Netra, Java Server, Java, and HotJava Views make changes there. are trademarks or registered trademarks of Sun Microsystems, Inc. in [0006] Another problem relates to configuring appli- the United States and other countries.

2 3 EP 0 950 953 A2 4 erty files in a manner that is transparent to application property information and presents it in a manner that can programs. More specifically, a method for allowing a be readily understood and edited by a system adminis- system administrator to remotely edit property files in a trator. distributed system comprises receiving, at a client, prop- [0015] When the system administrator is finished ed- erty values from a system administrator. Next, an object s iting the property information, the configuration class containing the property values is created at the client. passes the edited information to the administrative ap- That object is transmitted to a server, which creates and plet. The administrative applet, in turn, sends the edited stores a property file based on the object. values to the server, which stores them in the application program's property file that corresponds to the selected BRIEF DESCRIPTION OF THE DRAWINGS 10 group. A similar approach may be used to edit user or network computer property files. [0011] The accompanying drawings, which are incor- [0016] Importantly, throughout this process, the con- porated in and constitute a part ofthis specification, il- figuration class need not be aware of whether the prop- lustrate an embodiment of the invention and, together erty information corresponds to that of a user, a network with the description, explain the advantages and princi- 15 computer, or a group. Instead, the configuration class pies ofthe invention. In the drawings, merely knows that it has been given some property in- formation to be edited. FIG. 1 is a block diagram of a computer system con- sistent with the present invention; B. Architecture FIG. 2 is a block diagram of the interaction between 20 functional components of a system consistent with [0017] Fig. 1 is a block diagram ofa computer system the present invention; in which the present invention may be implemented. FIG. 3 is a block diagram depicting the organization System 100 consists of a network computer 110 con- of property files at a server consistent with the nected to a server 180 via a network 170. System 100 present invention; 25 is suitable for use in the HotJava™ Views™ user envi- FIG. 4 is a representative screen display that shows ronment, although one of skill in the art will recognize an application program's configuration interface that methods and apparatus consistent with the present within an administrative applet's window; and invention may be applied to other suitable user environ- FIG. 5 is a flow diagram of steps performed to edit ments HotJava Views is an application developed by an application program's properties for a selected 30 Sun Microsystems, Inc. for network computers. It is de- group, consistent with the present invention. scribed, for example, in a document entitled Designing the HotJava Views™ User Environment For a Network DETAILED DESCRIPTION Computer, Sun Microsystems, Inc. (1998), the contents of which are hereby incorporated by reference and at- [0012] Reference will now be made in detail to meth- 35 tached as an appendix. HotJava Views is written using, ods and apparatus consistent with the present invention and manipulates the user interface via, the Java pro- as illustrated in the accompanying drawings. Wherever gramming language. possible, the same reference numbers will be used [0018] Network computer 110 consists of several throughout the drawings and the following description components that are all interconnected via a system bus to refer to the same or like parts. 40 1 20. Specifically, network computer 1 1 0 contains a proc- essor 1 1 5 connected to a memory 1 25. The user inputs A. Overview information to network computer 1 1 0 via a keyboard 1 30 and a pointing device, such as a mouse 135. In return, [0013] Methods and apparatus consistent with the information is conveyed to the user via display screen present invention allow system administrators to re- 45 140. Network computer 110 communicates with other motely and dynamically edit property files in a network computers on network 170 via a network interface 145, computer environment. These methods and apparatus examples of which include Ethernet or dial-up telephone also allow system administrators to configure user, connections. group, and network computer property files in a manner [0019] The operating system, applications, and data that is transparent to application programs. so (including property files 190) required by network com- [001 4] After logging into a network computer, the sys- puter 110 are centrally stored at server 180, and are tem administrator executes an administrative applet and loaded over network 170 as needed. When network selects an application program and a group of users. In computer 110 is first turned on, server 180 provides it response, the administrative applet retrieves the appli- with a boot image that includes an operating system, cation program's property information for that group 55 such as JavaOS 1.0, developed by Sun Microsystems, from the server. The administrative applet passes this Inc. This operating system and application environment property information to a configuration class of the ap- include a graphic user interface that supports multiple plication program. The configuration class interprets the application programs, such as: electronic mail, electron-

3 5 EP 0 950 953 A2 6

ic calendaring, a directory of people in the organization, mation set 305. Similarly, the configuration classes for and a for viewing documents on a network Application Programs 2 and X are identified in informa- (for example, an intranet or on the ). tion sets 310 and 315, respectively. [0020] In object-oriented programming, each applica- [0025] Server 180 also contains a series of property tion program consists ofa group of classes. As is well 5 files 330 that correspond to groups of users. Each group known in the art, a class is a collection of data and the has its own directory that contains property files for ap- methods that operate on that data. One of these class- plication programs for users within that group. For ex- es, hereinafter called the "configuration class," is typi- ample, Group 1 has a directory 332 that contains prop- cally designed to facilitate property information editing. erty files 335, 340, and 344, for Application Programs 1 , More generally, the "configuration portion" of an appli- 10 2, and X, respectively. Similarly, Group 2 has a directory cation program is that portion that is designed to facili- 346, and Group X has a directory 348. These group tate property information editing. The configuration property files allow a system administrator to configure, class interprets abstract, numerical property information simultaneously, an application program's property infor- and presents it in the form of labels, descriptions, and mation for an entire group of users. For example, a sys- values that can be easily understood by a user, such as 15 tern administrator could configure property file 335 for a system administrator. For example, a configuration Application Program 1 and store it in directory 332. class may interpret a value of"2" from the property file Thereafter, Application Program 1 would be configured of a calendaring application as meaning that the dis- accordingly for any user belonging to Group 1 . played week should begin on Tuesday. Methods and ap- [0026] Server 180 also contains a series of property paratus consistent with the present invention take ad- 20 files 350 that correspond to specific users. Each user vantage of these configuration classes, as described has a separate directory that contains the property files below in reference to Fig. 5. for that user. For example, User 1 has a directory 352 [0021] Fig. 2 is a block diagram of the interaction be- that contains property files 355, 360, and 364, for Appli- tween functional components of a system consistent cation Programs 1 , 2, and X, respectively. Similarly, Us- with the present invention. These components include 25 er 2 has a separate directory 366, and User X has a a configuration class 210 and an administrative applet separate directory 368. These user-specific property 230 that are executing on network computer 110. Con- files allow individual users to maintain the same config- figuration class 210 communicates with applet 230 via uration regardless of the network computer on which a standard Java Interface 220. they are logged in. [0022] Applet 230 communicates with a server appli- 30 [0027] Server 180 also contains a series of property cation program 240 that executes on server 180. Both files 370 that correspond to specific network computer applet 230 and server application program 240 are pref- machines. Each network computer machine has a sep- erably written using the Java programming language. arate directory that contains the property files for that The communication between applet 230 and server ap- machine. For example, Network Computer 1 has a di- plication program 240 is accomplished using the remote ss rectory 372 that contains property files 375, 380, and method invocation (RMI) capability of Java Server ap- 384 for Application Programs 1 , 2, and X, respectively. plication program 240, in turn, interfaces with property Similarly, Network Computer 2 has a directory 386, and files 1 90 using the Java API, as described, for example, Network Computer X has a directory 388. These prop- in a text entitled "The Java Language Specification" by erty files allow a system administrator to configure a net- James Gosling, Bill Joy, and Guy Steele, Addison-Wes- 40 work computer machine to operate in a defined manner ley, 1996. regardless of which user is logged into that machine. [0023] Fig. 3 is a block diagram depicting the organi- [0028] Fig. 4 is a representative screen display that zation of property files 1 90 at server 1 80. In a preferred shows an application program's configuration interface embodiment, the specified location ofproperty informa- within an administrative applet's window. When applet tion is one or more files in one or more directories locat- 45 230 is executed, it generates a window 400 on display ed at server 180. Those of skill in the art will recognize, screen 140. Window 400 contains a title bar 410, and however, that property information may be stored at oth- buttons 420, 422, and 424, each of which are controlled er specified locations. For example, the property infor- by applet 230. Window 400 also contains a space 450 mation may be organized and stored in random access within which configuration class 210 operates. memory (RAM), or in one common file or directory. so [0029] The example shown in Fig. 4 relates to a cal- [0024] Server 1 80 contains a file 300 that has general endaring application. The configuration class for this ap- information for each application program. Such informa- plication interprets and displays property values that tion may include, for example, the directory path used correspond to the first day of the week (Tuesday), the to access the application program. File 300 also con- last day ofthe week (Friday), the beginning hour of each tains an identification ofthe configuration class within 55 day (9 am), and the ending hour of each day (5 pm). The each application program that is used to interpret and actual property values corresponding to this display edit property information. For example, the configura- might be, for example: 2 (Tuesday), 5 (Friday), 9, 0 (am), tion class for Application Program 1 is identified in infor- 5, and 1 (pm).

4 7 EP 0 950 953 A2 8

C. Architectural Operation program 240 (via RMI) to ensure that the properties are retrieved and stored for the proper group (or user or net- [0030] Fig. 5 is a flow diagram of steps performed to work computer). edit an application program's properties for a selected group in a manner consistent with the present invention. 5 D. Conclusion The procedure starts when system 1 00 receives a com- mand from the administrator to begin execution of applet [0036] As described in detail above, methods and ap- 230 (step 500). In response, network computer 110 dis- paratus consistent with the present invention allow sys- plays on screen 140 a list of available groups. After re- tem administrators to remotely and dynamically edit ceiving a command from the system administrator se- 10 property files in anetwork computer environment. These lecting one ofthese groups (step 505), network compu- methods and apparatus also allow system administra- ter 110 displays on screen 140 a list of available appli- tors to configure user, group, and network computer cation programs. System 1 00 receives a command from property files in a manner that is transparent to applica- the administrator selecting one of these application pro- tion programs. The foregoing description of an imple- grams (step 51 0), in response to which applet 230 reads 15 mentation of the invention has been presented for pur- file 300 to determine the configuration class 21 0 for the poses of illustration and description. For example, the selected application (step 515). described implementation includes but the [0031] Next, applet 230 retrieves the desired property present invention may be implemented as a combina- information from server 180 (step 520). Specifically, ap- tion of hardware and software or in hardware alone. plet 230 uses RMI to request the application program's 20 Modifications and variations are possible in light of the properties for the selected group. In response, server above teachings or may be acquired from practicing the application program 240 reads the application's proper- invention. ty file from the selected group's directory and embeds [0037] Although systems and methods consistent that information in a property object. This property object with the present invention are described as operating in is transmitted to applet 230 using RMI. 25 the exemplary distributed system and the Java pro- [0032] After receiving this property object from server gramming environment, one skilled in the art will appre- 180, applet 230 creates a display window 400, and in- ciate that the present invention can be practiced in other stantiates therein configuration class 210 (step 525), An systems and programming environments. Additionally, example of such a screen display is described above in although aspects of the present invention are described reference to Fig. 4. Using interface 220, applet 230 30 as being stored in memory, one skilled in the art will ap- passes to configuration class 210 the property object re- preciate that these aspects can also be stored on other trieved from server 180 (step 530). types of computer-readable media, such as secondary [0033] Configuration class 210 interprets the property storage devices, like hard disks, floppy disks, or CD- information contained in the property object and dis- ROM; a carrier wave from the Internet; or other forms of plays it in the form of labels, descriptions, and values 35 RAM or ROM. The scope ofthe invention is defined by that can be easily understood and manipulated by the the claims and their equivalents. system administrator. The system administrator edits the property values as desired by using a user interface (shown in space 450) implemented by configuration Claims class 210 (step 535). When the system administrator is finished editing, applet 230 receives from configuration 1. In a system having an application program and as- class 210, across interface 220, a property object con- sociated property information residing at a specified taining the edited property information. location, a method for interfacing the application [0034] Applet 230 receives the edited property object program to the property information such that the from configuration class 210 (step 540), and employs 45 location of the property information is transparent RMI to save the contained property information. This to the application program, comprising the steps of: causes the edited property object to be transmitted to server application program 240 (step 545), which ex- executing an administrative applet at a client; tracts the property information from the edited property receiving, at the administrative applet, a com- object and saves it to the application program's property 50 mand that selects the application program; file in the selected group's directory (step 550). receiving, at the administrative applet, a com- [0035] Throughout the procedure described in refer- mand that selects a client, user, or group of us- ence to Fig. 5, the application program (i.e., its config- ers; uration class) need not be aware of the group (or user determining a configuration class for the appli- or network computer) to which the properties belong. cation program; The application program simply receives a property ob- creating an instance of the determined config- ject, allows it to be edited, and returns the edited prop- uration class inside a window; erty object. Applet 230 interfaces with server application sending a request, from the administrative ap-

5 9 EP 0 950 953 A2 10

plet to a server application program executing located in a directory that corresponds to a group at a server, for property information from a of users. specified location that corresponds to the application program and the 7. The method of claim 2, wherein the step of sending selected client, user, or group of users; s a request to the server comprises the step of send- receiving the requested property information at ing a request to the server for property information the administrative applet from the server appli- located in a directory that corresponds to a user. cation program; passing the received property information from 8. The method of claim 2, wherein the step of sending the administrative applet to the instance of the 10 a request to the server comprises the step of send- configuration class; ing a request to the server for property information receiving edited property information from the located in a directory that corresponds to a client. instance of the configuration class; and sending the edited property information to the 9. In a system having an application program and as- server application program for 15 sociated property information residing at a specified location, a method for interfacing the application storage at the specified location. program to the property information such that the location of the property information is transparent 2. In a system having an application program and as- to the application program, comprising the steps of: sociated property information residing at a specified 20 location, a method for interfacing the application executing, at a client, a first application pro- program to the property information such that the gram; location of the property information is transparent receiving at least one command at the first ap- to the application program, comprising the steps of: plication program selecting a second applica- 25 tion program; sending a request to a server for property infor- sending from the client a request to a server for mation from a specified location; property information for the selected second receiving the requested property information application program; from the server at a client; receiving at the first application program prop- passing the property information to a configu- 30 erty information for the selected second appli- ration portion ofthe application program; cation program; receiving edited property information from a passing the received property information to configuration portion of the application pro- the selected second application program; and gram; and receiving at the first application program edited sending the edited property information to the 35 property information from the selected second server for storage at the specified location. application program.

3. The method of claim 2, wherein the step of receiving 10. The method of claim 9, wherein the first application property information from the server comprises the program is an applet. substeps of: 40 11. In a distributed system, a method for providing prop- receiving, at the client, an object containing the erty information from a server to a client, compris- requested property information; and ing: extracting the property information from the ob- ject. 45 receiving, from the client, an object containing an identification of an application program and 4. The method of claim 2, wherein the step of sending an identification of a specified location; the edited property information further comprises reading property information for the identified the step of tansmitting the property information us- application program from the specified loca- ing remote method invocation. so50 tion; creating an object containing the read property 5. The method of claim 2, further comprising the step information; and of storing the edited property information at the transmitting the object to the client. server at the specified location. 55 12. The method of claim 11 , wherein the receiving step 6. The method of claim 2, wherein the step of sending comprises receiving from the client an object con- a request to the server comprises the step of send- taining an identification of an application program ing a request to the server for property information and an identification of a specified directory.

6 11 EP 0 950 953 A2 12

13. In a distributed system including a client and a serv- 20. The computer-readable medium of claim 1 4, where- er, a method for storing property information provid- in the step of sending a request to the server for ed to a server from a client, comprising: property information from a directory that corre- sponds to a user. receiving, from the client, an object containing s an identification of an application program, an 21 . The computer-readable medium of claim 1 4, where- identification of a directory, and property infor- in the step of sending a request to the server for mation; property infonnation from a directory that corre- extracting the property information from the ob- sponds to a client. ject; and 10 storing the property information at the identified 22. A computer-readable medium containing instruc- directory. tions for editing property information from a client, by: 14. A computer-readable medium containing instruc- tions for editing from a client property information is executing, at the client, a first application pro- located at a server, by: gram; receiving at least one command at the first ap- sending a request to the server for property in- plication program, from the system administra- formation from a specified location for an appli- tor, selecting a second application program; cation program; 20 determining a configuration class for the select- receiving the requested property information ed second application program; from the server at the client; and creating an instance of the determined config- passing the property information to a configu- uration class inside a window; and ration portion ofthe application program. receiving property information for the selected 25 second application program at the instance of 15. The computer-readable medium of claim 14, where- the determined configuration class. in the instructions for the receiving step comprises the substeps: 23. The computer-readable medium of claim 22, where- in the first application program is an applet. receiving, at the client, an object containing the 30 requested property information; and 24. A computer-readable medium containing instruc- extracting the property information from the ob- tions for providing property information from a serv- ject. er to a client, by:

16. The computer-readable medium of claim 14, further 35 receiving, from the client, an identification of an comprising: application program and a specified location; reading property information for the identified receiving edited property information from a application program from the specified location; configuration portion of an application program; and and 40 transmitting the property information to the cli- sending the edited property information to the ent. server for storage at the specified location. 25. A computer-readable medium containing instruc- 17. The computer-readable medium of claim 16, where- tions for providing property information from a serv- in the instructions for the step of sending the edited 45 er to a client, by: property information further comprise the step of transmitting the property information using remote receiving, from the client, an object containing method invocation. an identification of an application program and an identification of a specified location; 18. The computer-readable medium of claim 16, further so reading property infonnation for the identified comprising storing the edited property information application program from the specified loca- at the server at the specified location. tion; creating an object containing the read property 19. The computer-readable medium of claim 14, where- information; and in the instructions for the sending step comprise the 55 transmitting the object to the client. step of sending a request to the server for property information from a directory that corresponds to a 26. A computer-readable medium containing instruc- group of users. tions for storing property information provided to a

7 13 EP 0 950 953 A2 14

server from a client, by: tion of the property information is transparent to the application program, comprising the steps of: receiving, from the client, an object containing an identification of an application program, an determining a location for the property informa- identification of a location, and property infor- 5 tion; mation; retrieving the property information from the lo- extracting the property information from the ob- cation; and ject; and providing the property information to the appli- storing the property information at the identified cation program. location. 10 31. The method of claim 30, further comprising the 27. An apparatus for allowing a system administrator to steps of: edit, at a client, property information located at a server, comprising: receiving modified property information from is the application program; and means for sending a request to the server for storing the modified property information in the property infonnation from a specified location location. for an application program; means for receiving the requested property in- 32. The method of claim 31, wherein the storing step formation from the server at the client; and 20 comprises the step of storing the modified property means for passing the property information to information in the determined location using a re- a configuration portion of the application pro- mote method invocation. gram. 33. The method of claim 30, wherein the determining 28. A system for allowing a system administrator to edit, 25 step comprises the step of identifying a location for from a client, property information located at a serv- property information associated with the application er, comprising: program and corresponding to a group of users.

a memory having program instructions, and 34. The method of claim 30, wherein the determining a processor configured to use the program in- 30 step comprises the step of identifying a location for structions to: property information associated with the application program and corresponding to a user. send a request to the server for property information from a specified location for an 35. The method of claim 30, wherein the determining application program; 35 step comprises the step of identifying a location for receive the requested property information property information associated with the application from the server at the client; and program and corresponding to a host. pass the property information to a configu- ration portion of the application program. 36. The method of claim 30, wherein the retrieving step 40 comprises obtaining the property information from 29. A system for allowing a system administrator to edit, the location using a remote method invocation. from a client, property information located at a serv- er, comprising;

a memory having program instructions, and a processor configured to use the program in- structions to: receive, from the client, an identification of an application program and a specified location; read property information for the identified ap- 50 plication program from the specified location; and transmit the property information to the client.

30. In a system having an application program and as- sociated property information residing at a specified location, a method of interfacing the application pro- gram to the property information such that the loca-

8 I )

IISO Si

■71 I I ! 1 1 co 1 s

o I CO I -^5- — i ■ s r

CM X "5 "3 a ol § ■•• i o o -£ £ o o

COC3

s 0.

I

o V CO

EP 0 950 953 A2

Q Start J

Receive command to begin executing applet 500

I

Receive command selecting a group 505

Receive command selecting an application 510 program

Obtain name of 515 configuration class

Retrieve stored 520 properties from server

Instantiate 525 configuration class

Send properties to 530 configuration class

Edit properties "535

Retrieve edited properties from ■540 configuration class

Send edited properties 545 to server

Store properties to file '550

( " )

13