US20110239127A1 - Customizing system and method for converting desktop application into web application - Google Patents

Customizing system and method for converting desktop application into web application Download PDF

Info

Publication number
US20110239127A1
US20110239127A1 US13/012,419 US201113012419A US2011239127A1 US 20110239127 A1 US20110239127 A1 US 20110239127A1 US 201113012419 A US201113012419 A US 201113012419A US 2011239127 A1 US2011239127 A1 US 2011239127A1
Authority
US
United States
Prior art keywords
browser
operations
server
desktop application
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/012,419
Inventor
Xin Meng
Cailiang SONG
Jingwei Shi
Lian Wang
Huifeng Liu
Xiaowei Liu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC China Co Ltd
Original Assignee
NEC China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC China Co Ltd filed Critical NEC China Co Ltd
Assigned to NEC (CHINA) CO., LTD. reassignment NEC (CHINA) CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LIU, HUIFENG, LIU, XIAOWEI, MENG, XIN, SHI, JINGWEI, SONG, CAILIANG, WANG, LIAN
Publication of US20110239127A1 publication Critical patent/US20110239127A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Definitions

  • the present invention relates to a field of computer application mitigation, and particularly, relates to a customizing system and a customizing method for converting a desktop application into a web application.
  • desktop applications a stand-alone application or a client-server version of application
  • desktop applications require that a user must firstly install a client before corresponding operations may be performed, rather than providing services anytime and anywhere. If the existing system is discarded and a browser-server version of system which has the same set of functions is re-developed, the development costs are too high, and cause a waste of the original system. Therefore, a set of highly efficient desktop application migration schemes is desirable.
  • the meaning of the “desktop application migration” is that the existing desktop applications and resources thereof are used for completing their web applications with a little of development amount by means of migration. Interfaces and functions of the web applications are basically the same as those of the existing desktop applications.
  • the meaning of the “migration” is that the existing desktop applications are run and their interfaces are re-drawn to be presented to the user in a form of webpage or other forms which may present by other network clients; after the user performs an operation on the webpage, the operation is presented on the desktop application, so as to complete a corresponding function; then an updated interface is re-drawn and presented to the user.
  • developers may develop web applications in a short time without considering function implementation details, such as data access, logic flows and algorithm implementations, of the desktop applications.
  • the desktop application Since after migration, no matter using what kind of migration method, the desktop application still runs at the server side, the web application corresponding to the desktop application which does not support web functions can also only operate data at the server side. However, users usually have strong requirement to operate their local data at the browser side rather than the server data. For example:
  • the Chinese patent application CN 1289093A discloses a method and a system of dynamically adding new functions for a world-wide-web webpage.
  • the method mainly comprises steps of: receiving a webpage from a web server; adding a new URL in the webpage; sending the new webpage to a web browser; processing the server to realize corresponding new functions based on the URL sent from the web browser.
  • This application discloses a particular instance for adding a translation function to the webpage.
  • this application can only add a few simple functions to the webpage, since parameter descriptions of URL cannot contain complex information, e.g. file flows etc. Further, this application cannot implement functions at the browser side, e.g. creating file selecting box, uploading files etc. Therefore, the method cannot solve a problem of operating on remote data by the web application after migration.
  • the present invention provides a customizing system and a customizing method for converting a desktop application into a web application.
  • a required processing logic may be added by locating an interface element which is needed to be modified, and modifying a callback function of the interface element (interface description data), so as to implement user's operations on local data by a web application.
  • the added processing logic automatically converts the user's operation to a plurality of operations, so that the user may feel that he is operating on a local file at the browser side, rather than a remote file at a server side.
  • the present invention may implement complex webpage function customization, and thus may implement remote operations on local data.
  • this operation may be converted to an operation of popping up a window at the browser side so as to allow the user to select the local file at the browser side, uploading the selected file by the user to the server, and at the same time, transmitting to the server action description data indicating the desktop application at the server side to open the uploaded file at the server side, so that the user may feel that he is opening the local file at the browser side, rather than the remote file at the server side.
  • a server comprises a desktop application for being operated correspondingly based on a function to be customized, to return a corresponding output; an interface information dumping unit for dumping interface information for a window returned by the desktop application and organizing the interface information into interface description data; and a function customizing unit for locating an interface element to be modified in the interface description data, and modifying and/or adding a processing logic based on a desired function to achieve function customization.
  • the processing logic may be used for automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of a web application.
  • the processing logic may be an executable script.
  • a function customizing method for converting a desktop application into a web application may comprise: correspondingly operating the desktop application to return a corresponding output based on a function to be customized; dumping interface information for a window returned by the desktop application and organizing the interface information into interface description data; and locating an interface element to be modified in the interface description data, and modifying and/or adding a processing logic based on a desired function to achieve function customization.
  • the processing logic may be used for automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
  • the processing logic may be an executable script.
  • a browser may comprise: a web application for providing an operation page which includes at least one interface element operable by a user; and an operation converting unit for, when an interface element of the web application is operated, automatically converting an operation by the user at the browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
  • the operation converting unit may generate an operation request based on the remote operations, wherein the operation request may contain action description data.
  • the browser may further comprise a sending unit for sending the operation request to a server, and when a response returned by the server is received, the operation converting unit may process the response returned by the server based on the local operations.
  • the operation converting unit may firstly, based on the local operations, obtain essential information and/or parameters necessary for subsequent operations, before generating the operation request based on the remote operations.
  • a server comprises: a request parsing unit for parsing an operation request for a desktop application from a browser to obtain action description data; and an action replaying unit for driving the desktop application based on the action description data to replay operations for the desktop application, and sending an output returned by the desktop application to the browser as a response to the operation request.
  • a customizing method for a web application mitigated from a desktop application comprises: automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations when an interface element of the web application is operated, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
  • the customizing method for a web application mitigated from a desktop application may further comprises: generating an operation request based on the remote operations, wherein the operation request contains action description data; sending the operation request to a server; and when a response returned by the server is received, processing the response returned by the server based on the local operations.
  • the customizing method for a web application mitigated from a desktop application may further comprise, before the step of generating the operation request, obtaining essential information and/or parameters necessary for subsequent operations, based on the local operations.
  • the server may parse the operation request to obtain the action description data; drive the desktop application based on the action description data to replay operations for the desktop application; and send an output returned by the desktop application to the browser as a response to the operation request.
  • the advantages of the present invention at least comprise:
  • FIG. 1 shows an illustrative structure block diagram of a server 200 for implementing a function customization
  • FIG. 2 shows illustrative structure block diagrams of the server 200 and a browser 100 which implement a customized function
  • FIG. 3 shows an instance schematic view for illustrating a function customization process
  • FIG. 4 shows an operation flow between the browser 100 and the server 200 which implement a customized [OPEN] function
  • FIG. 5 shows an operation flow between the browser 100 and the server 200 which implement a customized [PRINT] function
  • FIG. 6 shows an operation flow between the browser 100 and the server 200 which implement a customized [SAVE] function
  • FIG. 7 shows an operation flow between the browser 100 and the server 200 which implement a customized [SAVE AS] function.
  • FIG. 1 shows an illustrative structure block diagram of a server 200 for implementing a function customization.
  • a required processing logic may be added by locating an interface element which is needed to be modified, and modifying a callback function of the interface element (interface description data), so as to implement the function customization.
  • the sever 200 may comprise a desktop application 230 , an interface information dumping unit 240 and a function customizing unit 250 which are installed at the server 200 side.
  • the desktop application 230 may be operated correspondingly based on a function to be customized, to enable the desktop application 230 to return a corresponding output such as a window, response information etc.
  • the interface information dumping unit 240 may dump interface information for each window returned from the desktop application 230 , and organize the interface information into interface description data.
  • the interface description data may use descriptive language formats such as XML, HTML, WML, etc. The present invention does not make any limitations on this point.
  • the function customizing unit 250 may locate an interface element to be modified in the interface description data, and modify and/or add a processing logic based on a desired function to achieve function customization.
  • the processing logic may be an executable script.
  • FIG. 2 shows illustrative structure block diagrams of the server 200 and a browser 100 which implement a customized function.
  • an operation converting unit 120 may automatically convert the use's operation to a plurality of operations, so that the user may feel that he is operating on a local file at the browser 100 side, rather than a remote file at a server 200 side. Actually, in most situations, the user still operates on the remote file at the server 200 side.
  • the browser 100 may comprise a web application 110 , the operation converting unit 120 and a sending unit 130 .
  • the web application 110 may provide an operation page for the user.
  • the user may operate on the interface element of the web application 110 presented on the browser 100 .
  • the operation converting unit 120 may be implemented by the processing logic added by the function customizing unit 250 . When the user operates on the modified interface element, the operation converting unit 120 may automatically convert the user's operation to a plurality of operations to form an operation request.
  • the operation request contains action description data which comprise information related to actions, e.g. which action is performed on which interface element, essential parameters for performing the action etc.
  • the operation converting unit 120 may further receive a response to the operation request from the server 200 , and drive the local operation at the browser 100 side, so as to enable the user to feel that he is operating on the local file at the browser 100 side, rather than a remote file at a server 200 side. Actually, in most situations, the user still operates on the remote file at the server 200 side.
  • the sending unit 130 may be used for sending the operation request from the operation converting unit 120 to the server 200 , i.e., a request parsing unit 210 .
  • the server 200 may comprise the request parsing unit 210 , an action replaying unit 220 and the desktop application 230 .
  • the request parsing unit 210 may parse the operation request from the browser 100 to obtain action description data contained in the operation request.
  • the action replaying unit 220 may convert the action description data parsed by the request parsing unit 210 to a command for the desktop application 230 , and drive the desktop application 230 to perform a same or similar operation which may reflect the user's operation on the browser 100 (remote).
  • the action replaying unit 220 may receive all of data returned from the desktop application 230 as the response to the operation request from the browser 100 , and transmit the response to the browser 100 , i.e., the operation converting unit 120 .
  • FIG. 3 shows an instance schematic view for illustrating a function customization process.
  • the interface of the desktop application 230 on the server 200 is illustrated on the right of FIG. 3 , which is in a main window currently.
  • the window on the left of FIG. 3 illustrates corresponding page to be displayed on the browser 100 .
  • the migration method from the desktop application to the web application may be implemented by referring to any of known methods.
  • a menu item “[OPEN]” is taken as an example.
  • the function customizing unit 250 locates the interface element to be modified, i.e. the menu item “[OPEN]”, in the interface description data which are obtained from the interface information dumping unit 240 .
  • the location may be performed by an Xpath element as follows:
  • the function customizing unit 250 may modify a callback function (interface description data) of the menu item “[OPEN]” to the processing logic which may implement flows as follows: popping up an open window at the browser side 100 when the user clicks the menu item “[OPEN]” on the web application 110 , so as to allow the user to select the local file at the browser 100 ; uploading the user selected file to the server 200 , and at the same time, sending to the server 200 the action description data indicating the desktop application at the server 200 side to open the uploaded file at the server 200 side; and returning to the web application 110 an open interface when the server 200 returns the file to the open interface, so as to present the file in a form of the web application 110 to the user.
  • a callback function interface description data
  • the function customizing unit 250 may perform interface description data modification operations on any other of functions to be customized, so as to implement the expected customization functions. For example, the menu items “[PRINT]”, “[SAVE]”, etc. as illustrated in FIG. 3 .
  • the function customizing unit 250 may also add corresponding interface elements and interface description data, so as to implement the expected customization functions. For example, the menu item “[SAVE AS]”, etc.
  • FIG. 4 shows an operation flow between the browser 100 and the server 200 which implement the customized [OPEN] function.
  • the web application 110 sends an “open” instruction to the operation converting unit 120 .
  • the operation converting unit 120 does not generate an operation request containing the “open” action description data immediately. Instead, the operation converting unit 120 pops up a file selection window on the page of the web application 110 , prompting the user to select a file to be open. The user operates on the file selection window, selects the file to be open, and returns to the operation converting unit 120 through the page of the web application 110 .
  • the operation converting unit 120 generates operation requests containing the action description data as follows: 1) uploading the selected file, 2) opening the file after the uploading is completed.
  • the above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210 .
  • the action replaying unit 220 After the action replaying unit 220 receives the above action description data, the action replaying unit 220 firstly receives the file uploaded at the browser 100 side, and saves the received file to a particular folder at the server 200 side (e.g. a temp folder), i.e. the above action description data 1) has been completed. Then, the action replaying unit 220 indicates the desktop application 230 installed at the server 200 side to complete the open operation. It should be noted that at this time, the desktop application 230 may be indicated to open the uploaded file which has been saved in the particular folder at the server 200 side, i.e., the above action description data 2) has been completed.
  • a particular folder at the server 200 side e.g. a temp folder
  • the action replaying unit 220 indicates the desktop application 230 installed at the server 200 side to complete the open operation. It should be noted that at this time, the desktop application 230 may be indicated to open the uploaded file which has been saved in the particular folder at the server 200 side, i.e., the
  • the desktop application 230 opens the uploaded file which has been saved in the particular folder at the server 200 side, and returns the open interface to the action replaying unit 220 .
  • the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side.
  • the action replaying unit 220 returns the open interface to the browser 100 , i.e., the operation converting unit 120 .
  • the operation converting unit 120 After the operation converting unit 120 receives the open interface returned from the receiver 200 , i.e. the action replaying unit 220 , the operation converting unit 120 returns the open interface to the web application 110 .
  • the open interface is presented to the user by the web application 110 .
  • the user may feel that he has opened the local file at the browser 100 side by the web application 110 .
  • FIG. 5 shows an operation flow between the browser 100 and the server 200 which implement the customized [PRINT] function.
  • the web application 110 sends a “print” instruction to the operation converting unit 120 .
  • the operation converting unit 120 does not generate an operation request containing the “print” action description data immediately. Instead, the operation converting unit 120 pops up a printer selection window on the page of the web application 110 , prompting the user to select a printer to be used. The user operates on the printer selection window, selects the printer to be used, and returns to the operation converting unit 120 through the page of the web application 110 .
  • the operation converting unit 120 obtains parameters of a local printer according to the selection of the user.
  • the operation converting unit 120 generates operation requests containing the action description data as follows: a printing request carrying the printer parameters.
  • the above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210 .
  • the action replaying unit 220 After the action replaying unit 220 receives the above action description data, the action replaying unit 220 sends out the printing command carrying the printer parameters of a remote printer at the browser 100 side to the desktop application 230 installed at the server 200 side.
  • the desktop application 230 generates printing data based on the printer parameters of the remote printer at the browser 100 side, and returns to the action replaying unit 220 .
  • the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side.
  • the action replaying unit 220 returns the printing data to the browser 100 , i.e., the operation converting unit 120 .
  • the operation converting unit 120 After the operation converting unit 120 receives the printing data returned from the receiver 200 , i.e. the action replaying unit 220 , the operation converting unit 120 drives the local printer to print. Thus, the user may feel that he has printed the local file at the browser 100 side on the local printer by the web application 110 .
  • a case where the file has not been opened yet may be regarded as integrated operations of “open” operation, “print” operation and “close” operation.
  • the “open” operation and the “print” operation may be performed in an order as described in FIGS. 4 and 5 .
  • the “close” operation is not required to be customized, and may still operate according to the prior art. Or, the “open” operation and the “print” operation may also be performed miscellaneously as described in FIGS. 4 and 5 .
  • the file selection window may be popped up firstly to prompt the user to select a file; then the printer selection window may be popped up to prompt the user to select a printer; after the printer parameters are obtained, the operation request is sent, which may contain the action description data as follows: 1) uploading the selected file, 2) opening the file after the uploading is completed, 3) the printing request carrying the printer parameters; after the server completes the above actions 1) ⁇ 3), the printing data may be returned; the printing may be performed on the local printer of the browser; finally, the “close” operation may be performed according to the prior art. Or, the “open” operation, “print” operation and “close” operation may also be performed miscellaneously.
  • the file selection window may be popped up firstly to prompt the user to select a file; then the printer selection window may be popped up to prompt the user to select a printer; after the printer parameters are obtained, the operation request is sent, which may contain the action description data as follows: 1) uploading the selected file, 2) opening the file after the uploading is completed, 3) the printing request carrying the printer parameters, and 4) closing the file; after the server completes the above actions 1) ⁇ 4), the printing data may be returned; the printing may be performed on the local printer of the browser;
  • FIG. 6 shows an operation flow between the browser 100 and the server 200 which implement the customized [SAVE] function.
  • the web application 110 sends a “save” instruction to the operation converting unit 120 .
  • the operation converting unit 120 generates operation requests containing the action description data as follows: 1) saving the current file, 2) downloading the file after the saving is completed.
  • the above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210 .
  • the action replaying unit 220 firstly instructs the desktop application 230 installed at the server 200 side to complete the save operation.
  • the desktop application 230 may be actually indicated to save the current file to a particular folder at the server 200 side, i.e., the above action description data 1) has been completed.
  • the desktop application 230 returns a response to save complete, the saved file is obtained from the particular folder at the server 200 side, i.e., the above action description data 2) has been completed.
  • the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side.
  • the action replaying unit 220 returns the open interface to the browser 100 , i.e., the operation converting unit 120 .
  • the operation converting unit 120 After the operation converting unit 120 receives the stored file returned from the receiver 200 , i.e. the action replaying unit 220 , the operation converting unit 120 saves the file from the server 200 to an original upload folder (which is a folder designated by the user when the [OPEN] operation is performed) to override the original file. Thus, the user may feel that he has saved the local file at the browser 100 side by the web application 110 .
  • an original upload folder which is a folder designated by the user when the [OPEN] operation is performed
  • FIG. 7 shows an operation flow between the browser 100 and the server 200 which implement the customized [SAVE AS] function.
  • the web application 110 sends a “save as” instruction to the operation converting unit 120 .
  • the desktop application 230 does not have a menu item “[SAVE AS]”, this customization function actually being a newly added function.
  • the operation converting unit 120 does not generate (actually also cannot generate) an operation request containing the “save as” action description data immediately. Instead, the operation converting unit 120 pops up a folder selection window on the page of the web application 110 , prompting the user to select a folder to save files.
  • the user operates on the folder selection window to select the folder to save files, and returns the selected folder to the operation converting unit 120 through the page of the web application 110 .
  • the operation converting unit 120 generates operation requests containing the action description data as follows: 1) saving the current file, 2) downloading the file after the saving is completed, which are actually the same as those for the operation requests of the menu item “[SAVE]”.
  • the above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210 .
  • the action replaying unit 220 After the action replaying unit 220 receives the above action description data, the action replaying unit 220 firstly instructs the desktop application 230 installed at the server 200 side to complete the save operation. It should be noted that at this time, the desktop application 230 may be actually indicated to save the current file to a particular folder at the server 200 side, i.e., the above action description data 1) has been completed. After the desktop application 230 returns a response to save complete, the saved file is obtained from the particular folder at the server 200 side, i.e., the above action description data 2) has been completed. At this time, the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side.
  • the action replaying unit 220 returns the open interface to the browser 100 , i.e., the operation converting unit 120 .
  • the above operations of the action replaying unit 220 are actually the same as those for the operation requests of the menu item “[SAVE]”.
  • the operation converting unit 120 After the operation converting unit 120 receives the stored file returned from the receiver 200 , i.e. the action replaying unit 220 , the operation converting unit 120 saves the file from the server 200 to the user selected folder. Thus, the user may feel that he has saved as the local file at the browser 100 side by the web application 110 .
  • the disclosed invention embodiment comprise software programs for the steps and operations which are first described briefly and then elaborated in the method embodiments.
  • the computer program product is an embodiment having computer-readable medium encoded thereon computer program logic, which provides relevant operations when running on a computing device. While being executed on at least one processor of a computing system, the computer program logic causes the processor to perform the operations (steps) of the embodiments.
  • Such configuration of the present invention is typically provided as software, code and/or other data structure provided or encoded on a computer-readable medium, such as optical medium (e.g., CD-ROM), flexible or hard disk, or other types of mediums, such as firmware or microcode on one or more ROM, RAM or PROM chips, or application specific integrated chip (ASIC), or downloadable software images, shared database in one or more modules.
  • a computer-readable medium such as optical medium (e.g., CD-ROM), flexible or hard disk, or other types of mediums, such as firmware or microcode on one or more ROM, RAM or PROM chips, or application specific integrated chip (ASIC), or downloadable software images, shared database in one or more modules.
  • Such configuration as software or firmware can be installed on the computing device so as to cause one or more processors in the computing device to implement the embodiments of the present invention.
  • Software processes operated with, for example, a group of data communication devices or computing devices in other entities can provide the system of the present invention.
  • the system of the present invention can
  • the embodiments of the present invention can be implemented in software program, software and hardware on a data communication device, or separate software and/or separate circuit.

Abstract

The present invention provides a customizing system and a customizing method for converting a desktop application into a web application. A required processing logic may be added by locating an interface element which is needed to be modified, and modifying a callback function of the interface element (interface description data), so as to implement user's operations on local data by a web application. When a user operates on the modified interface element at a browser side, the added processing logic automatically converts the user's operation to a plurality of operations, so that the user may feel that he is operating on a local file at the browser side, rather than a remote file at a server side. The present invention may implement complex webpage function customization, and thus may implement remote operations on local data.

Description

    FIELD OF INVENTION
  • The present invention relates to a field of computer application mitigation, and particularly, relates to a customizing system and a customizing method for converting a desktop application into a web application.
  • DESCRIPTION OF PRIOR ART
  • With the development of cloud computing and the Internet, people increasingly prefer to access services anytime and anywhere. However, a existing large number of desktop applications (a stand-alone application or a client-server version of application) require that a user must firstly install a client before corresponding operations may be performed, rather than providing services anytime and anywhere. If the existing system is discarded and a browser-server version of system which has the same set of functions is re-developed, the development costs are too high, and cause a waste of the original system. Therefore, a set of highly efficient desktop application migration schemes is desirable.
  • Here, the meaning of the “desktop application migration” is that the existing desktop applications and resources thereof are used for completing their web applications with a little of development amount by means of migration. Interfaces and functions of the web applications are basically the same as those of the existing desktop applications.
  • The meaning of the “migration” is that the existing desktop applications are run and their interfaces are re-drawn to be presented to the user in a form of webpage or other forms which may present by other network clients; after the user performs an operation on the webpage, the operation is presented on the desktop application, so as to complete a corresponding function; then an updated interface is re-drawn and presented to the user. Thus, developers may develop web applications in a short time without considering function implementation details, such as data access, logic flows and algorithm implementations, of the desktop applications.
  • Since after migration, no matter using what kind of migration method, the desktop application still runs at the server side, the web application corresponding to the desktop application which does not support web functions can also only operate data at the server side. However, users usually have strong requirement to operate their local data at the browser side rather than the server data. For example:
      • “Print” function:
        • Original function: Printing a file at the server side (by a printer connected to the desktop application at the server side)
        • Expected function: Printing a file in a computing device at the user side
      • “Open” function:
        • Original function: Opening the file at the server side (by the desktop application in the server)
        • Expected function: Opening the file in the computing device at the user side (by uploading the file to the server side and opening it by the desktop application)
      • “Save” function:
        • Original function: Saving at the server side
        • Expected function: Saving in the computing device at the user side
  • The Chinese patent application CN 1289093A discloses a method and a system of dynamically adding new functions for a world-wide-web webpage. The method mainly comprises steps of: receiving a webpage from a web server; adding a new URL in the webpage; sending the new webpage to a web browser; processing the server to realize corresponding new functions based on the URL sent from the web browser. This application discloses a particular instance for adding a translation function to the webpage. However, this application can only add a few simple functions to the webpage, since parameter descriptions of URL cannot contain complex information, e.g. file flows etc. Further, this application cannot implement functions at the browser side, e.g. creating file selecting box, uploading files etc. Therefore, the method cannot solve a problem of operating on remote data by the web application after migration.
  • In order to solve the above problem, we must find a system and a method for customizing the web application, which may customize functions of the web application and add functions to the web application.
  • SUMMARY OF THE INVENTION
  • In order to overcome the above disadvantages in the prior art, the present invention provides a customizing system and a customizing method for converting a desktop application into a web application. A required processing logic may be added by locating an interface element which is needed to be modified, and modifying a callback function of the interface element (interface description data), so as to implement user's operations on local data by a web application. When a user operates on the modified interface element at a browser side, the added processing logic automatically converts the user's operation to a plurality of operations, so that the user may feel that he is operating on a local file at the browser side, rather than a remote file at a server side. The present invention may implement complex webpage function customization, and thus may implement remote operations on local data. For example, when the user clicks to a [OPEN] button/menu item, this operation may be converted to an operation of popping up a window at the browser side so as to allow the user to select the local file at the browser side, uploading the selected file by the user to the server, and at the same time, transmitting to the server action description data indicating the desktop application at the server side to open the uploaded file at the server side, so that the user may feel that he is opening the local file at the browser side, rather than the remote file at the server side.
  • According to a first aspect of the present invention, a server is provided. The server comprises a desktop application for being operated correspondingly based on a function to be customized, to return a corresponding output; an interface information dumping unit for dumping interface information for a window returned by the desktop application and organizing the interface information into interface description data; and a function customizing unit for locating an interface element to be modified in the interface description data, and modifying and/or adding a processing logic based on a desired function to achieve function customization.
  • Preferably, the processing logic may be used for automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of a web application.
  • Preferably, the processing logic may be an executable script.
  • According to a second aspect of the present invention, a function customizing method for converting a desktop application into a web application is provided. The method may comprise: correspondingly operating the desktop application to return a corresponding output based on a function to be customized; dumping interface information for a window returned by the desktop application and organizing the interface information into interface description data; and locating an interface element to be modified in the interface description data, and modifying and/or adding a processing logic based on a desired function to achieve function customization.
  • Preferably, the processing logic may be used for automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
  • Preferably, the processing logic may be an executable script.
  • According to a third aspect of the present invention, a browser is provided. The browser may comprise: a web application for providing an operation page which includes at least one interface element operable by a user; and an operation converting unit for, when an interface element of the web application is operated, automatically converting an operation by the user at the browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
  • Preferably, the operation converting unit may generate an operation request based on the remote operations, wherein the operation request may contain action description data. The browser may further comprise a sending unit for sending the operation request to a server, and when a response returned by the server is received, the operation converting unit may process the response returned by the server based on the local operations.
  • More preferably, the operation converting unit may firstly, based on the local operations, obtain essential information and/or parameters necessary for subsequent operations, before generating the operation request based on the remote operations.
  • According to a fourth aspect of the present invention, a server is provided. The server comprises: a request parsing unit for parsing an operation request for a desktop application from a browser to obtain action description data; and an action replaying unit for driving the desktop application based on the action description data to replay operations for the desktop application, and sending an output returned by the desktop application to the browser as a response to the operation request.
  • According to a fifth aspect of the present invention, a customizing method for a web application mitigated from a desktop application is provided. The method comprises: automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations when an interface element of the web application is operated, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
  • Preferably, the customizing method for a web application mitigated from a desktop application according to claim 11 may further comprises: generating an operation request based on the remote operations, wherein the operation request contains action description data; sending the operation request to a server; and when a response returned by the server is received, processing the response returned by the server based on the local operations.
  • More Preferably, the customizing method for a web application mitigated from a desktop application may further comprise, before the step of generating the operation request, obtaining essential information and/or parameters necessary for subsequent operations, based on the local operations.
  • Preferably, when the operation request is received from the browser, the server may parse the operation request to obtain the action description data; drive the desktop application based on the action description data to replay operations for the desktop application; and send an output returned by the desktop application to the browser as a response to the operation request.
  • Compared to the most related prior art, the advantages of the present invention at least comprise:
      • the present invention may implement complex webpage function customization, and thus may implement remote operations on local data.
    BRIEF DESCRIPTION OF THE DRAWINGS
  • The above and other objects, features and advantages of the present invention will be more apparent by descriptions on embodiments of the present invention with reference to the drawings, in which:
  • FIG. 1 shows an illustrative structure block diagram of a server 200 for implementing a function customization;
  • FIG. 2 shows illustrative structure block diagrams of the server 200 and a browser 100 which implement a customized function;
  • FIG. 3 shows an instance schematic view for illustrating a function customization process;
  • FIG. 4 shows an operation flow between the browser 100 and the server 200 which implement a customized [OPEN] function;
  • FIG. 5 shows an operation flow between the browser 100 and the server 200 which implement a customized [PRINT] function;
  • FIG. 6 shows an operation flow between the browser 100 and the server 200 which implement a customized [SAVE] function; and
  • FIG. 7 shows an operation flow between the browser 100 and the server 200 which implement a customized [SAVE AS] function.
  • The same reference numbers in the drawings represent the related units, so as to show their relativities.
  • DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
  • Hereinafter, the present invention will be further described in detail by referring to the embodiments as shown in the drawings. However, it should be understood that the descriptions are only Illustrative but do not make any limitations on the scope of the present invention. Additionally, the following explanations omit descriptions on well-known structures and techniques so as to avoid obscuring concepts of the present invention unnecessarily.
  • FIG. 1 shows an illustrative structure block diagram of a server 200 for implementing a function customization. According to the present invention, a required processing logic may be added by locating an interface element which is needed to be modified, and modifying a callback function of the interface element (interface description data), so as to implement the function customization.
  • As shown in FIG. 1, the sever 200 may comprise a desktop application 230, an interface information dumping unit 240 and a function customizing unit 250 which are installed at the server 200 side.
  • The desktop application 230 may be operated correspondingly based on a function to be customized, to enable the desktop application 230 to return a corresponding output such as a window, response information etc.
  • The interface information dumping unit 240 may dump interface information for each window returned from the desktop application 230, and organize the interface information into interface description data. The interface description data may use descriptive language formats such as XML, HTML, WML, etc. The present invention does not make any limitations on this point.
  • The function customizing unit 250 may locate an interface element to be modified in the interface description data, and modify and/or add a processing logic based on a desired function to achieve function customization. Here, the processing logic may be an executable script.
  • FIG. 2 shows illustrative structure block diagrams of the server 200 and a browser 100 which implement a customized function. When the user operates on the modified interface element at the browser side 100, an operation converting unit 120 may automatically convert the use's operation to a plurality of operations, so that the user may feel that he is operating on a local file at the browser 100 side, rather than a remote file at a server 200 side. Actually, in most situations, the user still operates on the remote file at the server 200 side.
  • As shown in FIG. 2, the browser 100 may comprise a web application 110, the operation converting unit 120 and a sending unit 130.
  • The web application 110 may provide an operation page for the user. The user may operate on the interface element of the web application 110 presented on the browser 100.
  • The operation converting unit 120 may be implemented by the processing logic added by the function customizing unit 250. When the user operates on the modified interface element, the operation converting unit 120 may automatically convert the user's operation to a plurality of operations to form an operation request. The operation request contains action description data which comprise information related to actions, e.g. which action is performed on which interface element, essential parameters for performing the action etc.
  • The operation converting unit 120 may further receive a response to the operation request from the server 200, and drive the local operation at the browser 100 side, so as to enable the user to feel that he is operating on the local file at the browser 100 side, rather than a remote file at a server 200 side. Actually, in most situations, the user still operates on the remote file at the server 200 side.
  • The sending unit 130 may be used for sending the operation request from the operation converting unit 120 to the server 200, i.e., a request parsing unit 210.
  • The server 200 may comprise the request parsing unit 210, an action replaying unit 220 and the desktop application 230.
  • The request parsing unit 210 may parse the operation request from the browser 100 to obtain action description data contained in the operation request.
  • The action replaying unit 220 may convert the action description data parsed by the request parsing unit 210 to a command for the desktop application 230, and drive the desktop application 230 to perform a same or similar operation which may reflect the user's operation on the browser 100 (remote).
  • Furthermore, the action replaying unit 220 may receive all of data returned from the desktop application 230 as the response to the operation request from the browser 100, and transmit the response to the browser 100, i.e., the operation converting unit 120.
  • Hereinafter, the customizing system and method for converting the desktop application to the web application will be described in detail in connection with particular function customization instances.
  • FIG. 3 shows an instance schematic view for illustrating a function customization process.
  • As shown in FIG. 3, the interface of the desktop application 230 on the server 200 is illustrated on the right of FIG. 3, which is in a main window currently. The window on the left of FIG. 3 illustrates corresponding page to be displayed on the browser 100.
  • The migration method from the desktop application to the web application may be implemented by referring to any of known methods.
  • For the purpose of illustration, a menu item “[OPEN]” is taken as an example. Firstly, in step S301, the function customizing unit 250 locates the interface element to be modified, i.e. the menu item “[OPEN]”, in the interface description data which are obtained from the interface information dumping unit 240. For example, the location may be performed by an Xpath element as follows:
  • Form[@title=“DesktopAP”]/menuitem[@text=“File”]/menuitem[@text=“Open”].
  • Then, in step S302, the function customizing unit 250 may modify a callback function (interface description data) of the menu item “[OPEN]” to the processing logic which may implement flows as follows: popping up an open window at the browser side 100 when the user clicks the menu item “[OPEN]” on the web application 110, so as to allow the user to select the local file at the browser 100; uploading the user selected file to the server 200, and at the same time, sending to the server 200 the action description data indicating the desktop application at the server 200 side to open the uploaded file at the server 200 side; and returning to the web application 110 an open interface when the server 200 returns the file to the open interface, so as to present the file in a form of the web application 110 to the user.
  • Similarly, the function customizing unit 250 may perform interface description data modification operations on any other of functions to be customized, so as to implement the expected customization functions. For example, the menu items “[PRINT]”, “[SAVE]”, etc. as illustrated in FIG. 3.
  • On the other hand, when the user wants to add new functions to the web application 110, the function customizing unit 250 may also add corresponding interface elements and interface description data, so as to implement the expected customization functions. For example, the menu item “[SAVE AS]”, etc.
  • FIG. 4 shows an operation flow between the browser 100 and the server 200 which implement the customized [OPEN] function.
  • When the user clicks the menu item “[OPEN]” function on the page of the web application 110, the web application 110 sends an “open” instruction to the operation converting unit 120. Different from the prior art, the operation converting unit 120 does not generate an operation request containing the “open” action description data immediately. Instead, the operation converting unit 120 pops up a file selection window on the page of the web application 110, prompting the user to select a file to be open. The user operates on the file selection window, selects the file to be open, and returns to the operation converting unit 120 through the page of the web application 110. At this time, the operation converting unit 120 generates operation requests containing the action description data as follows: 1) uploading the selected file, 2) opening the file after the uploading is completed. The above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210.
  • Different from the prior art, after the action replaying unit 220 receives the above action description data, the action replaying unit 220 firstly receives the file uploaded at the browser 100 side, and saves the received file to a particular folder at the server 200 side (e.g. a temp folder), i.e. the above action description data 1) has been completed. Then, the action replaying unit 220 indicates the desktop application 230 installed at the server 200 side to complete the open operation. It should be noted that at this time, the desktop application 230 may be indicated to open the uploaded file which has been saved in the particular folder at the server 200 side, i.e., the above action description data 2) has been completed. The desktop application 230 opens the uploaded file which has been saved in the particular folder at the server 200 side, and returns the open interface to the action replaying unit 220. At this time, the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side. The action replaying unit 220 returns the open interface to the browser 100, i.e., the operation converting unit 120.
  • After the operation converting unit 120 receives the open interface returned from the receiver 200, i.e. the action replaying unit 220, the operation converting unit 120 returns the open interface to the web application 110. The open interface is presented to the user by the web application 110. Thus, the user may feel that he has opened the local file at the browser 100 side by the web application 110.
  • FIG. 5 shows an operation flow between the browser 100 and the server 200 which implement the customized [PRINT] function.
  • When the user clicks the menu item “[PRINT]” function on the page of the web application 110, the web application 110 sends a “print” instruction to the operation converting unit 120. Different from the prior art, the operation converting unit 120 does not generate an operation request containing the “print” action description data immediately. Instead, the operation converting unit 120 pops up a printer selection window on the page of the web application 110, prompting the user to select a printer to be used. The user operates on the printer selection window, selects the printer to be used, and returns to the operation converting unit 120 through the page of the web application 110. The operation converting unit 120 obtains parameters of a local printer according to the selection of the user. At this time, the operation converting unit 120 generates operation requests containing the action description data as follows: a printing request carrying the printer parameters. The above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210.
  • After the action replaying unit 220 receives the above action description data, the action replaying unit 220 sends out the printing command carrying the printer parameters of a remote printer at the browser 100 side to the desktop application 230 installed at the server 200 side. The desktop application 230 generates printing data based on the printer parameters of the remote printer at the browser 100 side, and returns to the action replaying unit 220. At this time, the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side. The action replaying unit 220 returns the printing data to the browser 100, i.e., the operation converting unit 120.
  • After the operation converting unit 120 receives the printing data returned from the receiver 200, i.e. the action replaying unit 220, the operation converting unit 120 drives the local printer to print. Thus, the user may feel that he has printed the local file at the browser 100 side on the local printer by the web application 110.
  • The above concerns the printing process in a case where the file has been opened, a case where the file has not been opened yet may be regarded as integrated operations of “open” operation, “print” operation and “close” operation. The “open” operation and the “print” operation may be performed in an order as described in FIGS. 4 and 5. The “close” operation is not required to be customized, and may still operate according to the prior art. Or, the “open” operation and the “print” operation may also be performed miscellaneously as described in FIGS. 4 and 5. For example, the file selection window may be popped up firstly to prompt the user to select a file; then the printer selection window may be popped up to prompt the user to select a printer; after the printer parameters are obtained, the operation request is sent, which may contain the action description data as follows: 1) uploading the selected file, 2) opening the file after the uploading is completed, 3) the printing request carrying the printer parameters; after the server completes the above actions 1)˜3), the printing data may be returned; the printing may be performed on the local printer of the browser; finally, the “close” operation may be performed according to the prior art. Or, the “open” operation, “print” operation and “close” operation may also be performed miscellaneously. For example, the file selection window may be popped up firstly to prompt the user to select a file; then the printer selection window may be popped up to prompt the user to select a printer; after the printer parameters are obtained, the operation request is sent, which may contain the action description data as follows: 1) uploading the selected file, 2) opening the file after the uploading is completed, 3) the printing request carrying the printer parameters, and 4) closing the file; after the server completes the above actions 1)˜4), the printing data may be returned; the printing may be performed on the local printer of the browser;
  • Similarly, various customization functions as described in the description may be performed serially or miscellaneously one another, and may also be performed serially or miscellaneously with various implemented functions in the prior art. The skilled in the art may complete these functions on demand. These serial or miscellaneous operations do not depart from the spirit and scope of the present invention.
  • FIG. 6 shows an operation flow between the browser 100 and the server 200 which implement the customized [SAVE] function.
  • When the user clicks the menu item “[SAVE]” function on the page of the web application 110, the web application 110 sends a “save” instruction to the operation converting unit 120. Different from the prior art, the operation converting unit 120 generates operation requests containing the action description data as follows: 1) saving the current file, 2) downloading the file after the saving is completed. The above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210.
  • Different from the prior art, after the action replaying unit 220 receives the above action description data, the action replaying unit 220 firstly instructs the desktop application 230 installed at the server 200 side to complete the save operation. It should be noted that at this time, the desktop application 230 may be actually indicated to save the current file to a particular folder at the server 200 side, i.e., the above action description data 1) has been completed. After the desktop application 230 returns a response to save complete, the saved file is obtained from the particular folder at the server 200 side, i.e., the above action description data 2) has been completed. At this time, the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side. The action replaying unit 220 returns the open interface to the browser 100, i.e., the operation converting unit 120.
  • After the operation converting unit 120 receives the stored file returned from the receiver 200, i.e. the action replaying unit 220, the operation converting unit 120 saves the file from the server 200 to an original upload folder (which is a folder designated by the user when the [OPEN] operation is performed) to override the original file. Thus, the user may feel that he has saved the local file at the browser 100 side by the web application 110.
  • FIG. 7 shows an operation flow between the browser 100 and the server 200 which implement the customized [SAVE AS] function.
  • When the user clicks the menu item “[SAVE AS]” function on the page of the web application 110, the web application 110 sends a “save as” instruction to the operation converting unit 120. As shown in FIG. 3, the desktop application 230 does not have a menu item “[SAVE AS]”, this customization function actually being a newly added function. The operation converting unit 120 does not generate (actually also cannot generate) an operation request containing the “save as” action description data immediately. Instead, the operation converting unit 120 pops up a folder selection window on the page of the web application 110, prompting the user to select a folder to save files. The user operates on the folder selection window to select the folder to save files, and returns the selected folder to the operation converting unit 120 through the page of the web application 110. At this time, the operation converting unit 120 generates operation requests containing the action description data as follows: 1) saving the current file, 2) downloading the file after the saving is completed, which are actually the same as those for the operation requests of the menu item “[SAVE]”. The above action description data may be sent to the action replaying unit 220 through the sending unit 130 and the request parsing unit 210.
  • After the action replaying unit 220 receives the above action description data, the action replaying unit 220 firstly instructs the desktop application 230 installed at the server 200 side to complete the save operation. It should be noted that at this time, the desktop application 230 may be actually indicated to save the current file to a particular folder at the server 200 side, i.e., the above action description data 1) has been completed. After the desktop application 230 returns a response to save complete, the saved file is obtained from the particular folder at the server 200 side, i.e., the above action description data 2) has been completed. At this time, the action replaying unit 220 has already replayed the operation similar with the user's operation at the browser 100 side. The action replaying unit 220 returns the open interface to the browser 100, i.e., the operation converting unit 120. Actually, the above operations of the action replaying unit 220 are actually the same as those for the operation requests of the menu item “[SAVE]”.
  • After the operation converting unit 120 receives the stored file returned from the receiver 200, i.e. the action replaying unit 220, the operation converting unit 120 saves the file from the server 200 to the user selected folder. Thus, the user may feel that he has saved as the local file at the browser 100 side by the web application 110.
  • Further configurations of the disclosed invention embodiment comprise software programs for the steps and operations which are first described briefly and then elaborated in the method embodiments. More particularly, the computer program product is an embodiment having computer-readable medium encoded thereon computer program logic, which provides relevant operations when running on a computing device. While being executed on at least one processor of a computing system, the computer program logic causes the processor to perform the operations (steps) of the embodiments. Such configuration of the present invention is typically provided as software, code and/or other data structure provided or encoded on a computer-readable medium, such as optical medium (e.g., CD-ROM), flexible or hard disk, or other types of mediums, such as firmware or microcode on one or more ROM, RAM or PROM chips, or application specific integrated chip (ASIC), or downloadable software images, shared database in one or more modules. Such configuration as software or firmware can be installed on the computing device so as to cause one or more processors in the computing device to implement the embodiments of the present invention. Software processes operated with, for example, a group of data communication devices or computing devices in other entities can provide the system of the present invention. The system of the present invention can also be several software processes distributed over a number of data communication devices, or all software processes running on a group of a miniature dedicated computers, or all software processes running on a single computer.
  • It is noted that, strictly speaking, the embodiments of the present invention can be implemented in software program, software and hardware on a data communication device, or separate software and/or separate circuit.
  • The present invention has been described above with reference to the preferred embodiments thereof. It should be understood that various modifications, alternations and additions can be made by those who skilled in the art without departing from the spirits and scope of the present invention. Therefore, the scope of the present invention is not limited to the above particular embodiments but only defined by the claims as attached.

Claims (13)

1. A server, comprising:
a desktop application for being operated correspondingly based on a function to be customized, to return a corresponding output;
an interface information dumping unit for dumping interface information for a window returned by the desktop application and organizing the interface information into interface description data; and
a function customizing unit for locating an interface element to be modified in the interface description data, and modifying and/or adding a processing logic based on a desired function to achieve function customization.
2. The server according to claim 1, wherein
the processing logic is for automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of a web application.
3. The server according to claim 1, wherein
the processing logic is an executable script.
4. The server according to claim 2, wherein
the processing logic is an executable script.
5. The server according to claim 1, further comprising:
a request parsing unit for parsing an operation request for a desktop application from a browser to obtain action description data; and
an action replaying unit for driving the desktop application based on the action description data to replay operations for the desktop application, and sending an output returned by the desktop application to the browser as a response to the operation request.
6. A browser, comprising:
a web application for providing an operation page which includes at least one interface element operable by a user; and
an operation converting unit for, when an interface element of the web application is operated, automatically converting an operation by the user at the browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
7. The browser according to claim 6, wherein
the operation converting unit generates an operation request based on the remote operations, wherein the operation request contains action description data,
the browser further comprises a sending unit for sending the operation request to a server, and
when a response returned by the server is received, the operation converting unit processes the response returned by the server based on the local operations.
8. The browser according to claim 6, wherein
before generating the operation request based on the remote operations, the operation converting unit firstly, based on the local operations, obtains essential information and/or parameters necessary for subsequent operations.
9. A customizing method for a web application mitigated from a desktop application, comprising:
when an interface element of the web application is operated, automatically converting an operation by a user at a browser side into a series of operations consisting of local operations and/or remote operations, so that the user is able to access and/or operate a local file at the browser side by means of the web application.
10. The customizing method for a web application mitigated from a desktop application according to claim 9, further comprising:
generating an operation request based on the remote operations, wherein the operation request contains action description data;
sending the operation request to a server; and
when a response returned by the server is received, processing the response returned by the server based on the local operations.
11. The customizing method for a web application mitigated from a desktop application according to claim 10, before the step of generating the operation request, further comprising:
based on the local operations, obtaining essential information and/or parameters necessary for subsequent operations.
12. The customizing method for a web application mitigated from a desktop application according to claim 10, wherein
when the operation request is received from the browser; the server
parsing the operation request to obtain the action description data;
driving the desktop application based on the action description data to replay operations for the desktop application; and
sending an output returned by the desktop application to the browser as a response to the operation request.
13. The customizing method for a web application mitigated from a desktop application according to claim 11, wherein
when the operation request is received from the browser, the server
parsing the operation request to obtain the action description data;
driving the desktop application based on the action description data to replay operations for the desktop application; and
sending an output returned by the desktop application to the browser as a response to the operation request.
US13/012,419 2010-03-23 2011-01-24 Customizing system and method for converting desktop application into web application Abandoned US20110239127A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201010132466.9A CN102200976B (en) 2010-03-23 2010-03-23 Customizing system and method for converting desktop application into network application
CN201010132466.9 2010-03-23

Publications (1)

Publication Number Publication Date
US20110239127A1 true US20110239127A1 (en) 2011-09-29

Family

ID=44657784

Family Applications (1)

Application Number Title Priority Date Filing Date
US13/012,419 Abandoned US20110239127A1 (en) 2010-03-23 2011-01-24 Customizing system and method for converting desktop application into web application

Country Status (3)

Country Link
US (1) US20110239127A1 (en)
JP (1) JP5274589B2 (en)
CN (1) CN102200976B (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100269039A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Custom pointer features for touch-screen on remote client devices
US20100269048A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Method and system of specifying application user interface of a remote client device
US20100269046A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Sever-side computing from a remote client device
US20100268813A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for handling remote drawing commands
US20100268762A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for scrolling a remote application
US20130110986A1 (en) * 2011-10-31 2013-05-02 AAJO Systems, Inc. Mobile wireless communication system
US20160103815A1 (en) * 2014-10-10 2016-04-14 Dicky Suryadi Generating mobile web browser views for applications
WO2016057502A1 (en) * 2014-10-10 2016-04-14 Aktiebolaget Skf Generating web browser views for applications
CN105808673A (en) * 2016-03-01 2016-07-27 万达信息股份有限公司 Method for migrating from Windows desktop environment to safe and reliable desktop environment
US9553953B2 (en) 2009-04-15 2017-01-24 Dell Products L.P. Method and apparatus for extending capabilities of a virtualization domain to support features available in a normal desktop application
US9578113B2 (en) 2009-04-15 2017-02-21 Wyse Technology L.L.C. Method and apparatus for transferring remote session data
US10353700B1 (en) 2018-05-21 2019-07-16 Microsoft Technology Licensing, Llc Code base sharing between standalone and web-based versions of an application via an emulated network communication channel
CN116450383A (en) * 2023-06-19 2023-07-18 合肥景云软件工程有限责任公司 Method for calling operating system through webpage

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023972B (en) * 2012-11-16 2015-11-25 北京奇虎科技有限公司 A kind of method and apparatus that file is managed
CN103067456B (en) * 2012-12-14 2017-07-07 上海市信息网络有限公司 The system of remote processing application
CN105187562A (en) * 2015-09-30 2015-12-23 易士软件(上海)有限公司 System and method for operating remote file
CN105354073B (en) * 2015-10-27 2018-11-06 中通服公众信息产业股份有限公司 A kind of stand-alone application networking method based on android system and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070033588A1 (en) * 2005-08-02 2007-02-08 Landsman Richard A Generic download and upload functionality in a client/server web application architecture
US20080238929A1 (en) * 2007-03-30 2008-10-02 Nadim Abdo Local Themeing Of Remote Applications
US20090182803A1 (en) * 2008-01-14 2009-07-16 International Business Machines Corporation Browser-based proxy server for customization and distribution of existing applications
US20110231784A1 (en) * 2010-03-17 2011-09-22 Nec (China) Co., Ltd. System and method for desktop application migration

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5002165B2 (en) * 2006-02-16 2012-08-15 株式会社日立製作所 Remote desktop system
JP2008282297A (en) * 2007-05-14 2008-11-20 Ize:Kk Client/server system, program for web os and execution method for web os
CN101436148B (en) * 2007-11-14 2011-11-02 华为技术有限公司 Integrated client end and method for performing interaction of desktop application and network WEB application

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070033588A1 (en) * 2005-08-02 2007-02-08 Landsman Richard A Generic download and upload functionality in a client/server web application architecture
US20080238929A1 (en) * 2007-03-30 2008-10-02 Nadim Abdo Local Themeing Of Remote Applications
US20090182803A1 (en) * 2008-01-14 2009-07-16 International Business Machines Corporation Browser-based proxy server for customization and distribution of existing applications
US20110231784A1 (en) * 2010-03-17 2011-09-22 Nec (China) Co., Ltd. System and method for desktop application migration

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9185171B2 (en) 2009-04-15 2015-11-10 Wyse Technology L.L.C. Method and system of specifying application user interface of a remote client device
US9413831B2 (en) 2009-04-15 2016-08-09 Wyse Technology L.L.C. Method and apparatus for authentication of a remote session
US20100269152A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Method and system for rendering composite view of an application
US20100269039A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Custom pointer features for touch-screen on remote client devices
US20100269046A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Sever-side computing from a remote client device
US20100268941A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Remote-session-to-go method and apparatus
US20100268939A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Method and apparatus for authentication of a remote session
US20100268828A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Method and apparatus for transferring remote session data
US20100269057A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for communicating events at a server to a remote device
US20100268813A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for handling remote drawing commands
US20100268940A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Method and apparatus for portability of a remote session
US20100268762A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for scrolling a remote application
US9189124B2 (en) 2009-04-15 2015-11-17 Wyse Technology L.L.C. Custom pointer features for touch-screen on remote client devices
US8676926B2 (en) 2009-04-15 2014-03-18 Wyse Technology L.L.C. System and method for handling remote drawing commands
US8863237B2 (en) 2009-04-15 2014-10-14 Wyse Technology L.L.C. Remote-session-to-go method and apparatus
US8869239B2 (en) 2009-04-15 2014-10-21 Wyse Technology L.L.C. Method and system for rendering composite view of an application
US9106696B2 (en) 2009-04-15 2015-08-11 Wyse Technology L.L.C. Method and apparatus for portability of a remote session
US9185172B2 (en) 2009-04-15 2015-11-10 Wyse Technology L.L.C. System and method for rendering a remote view at a client device
US20100269047A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for rendering a composite view at a client device
US10244056B2 (en) 2009-04-15 2019-03-26 Wyse Technology L.L.C. Method and apparatus for transferring remote session data
US9191448B2 (en) 2009-04-15 2015-11-17 Wyse Technology L.L.C. System and method for rendering a composite view at a client device
US9191449B2 (en) 2009-04-15 2015-11-17 Wyse Technology L.L.C. System and method for communicating events at a server to a remote device
US9578113B2 (en) 2009-04-15 2017-02-21 Wyse Technology L.L.C. Method and apparatus for transferring remote session data
US9553953B2 (en) 2009-04-15 2017-01-24 Dell Products L.P. Method and apparatus for extending capabilities of a virtualization domain to support features available in a normal desktop application
US9448815B2 (en) 2009-04-15 2016-09-20 Wyse Technology L.L.C. Server-side computing from a remote client device
US9374426B2 (en) 2009-04-15 2016-06-21 Wyse Technology L.L.C. Remote-session-to-go method and apparatus
US9384526B2 (en) 2009-04-15 2016-07-05 Wyse Technology L.L.C. System and method for handling remote drawing commands
US9444894B2 (en) * 2009-04-15 2016-09-13 Wyse Technology Llc System and method for communicating events at a server to a remote device
US20100269048A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. Method and system of specifying application user interface of a remote client device
US20130110986A1 (en) * 2011-10-31 2013-05-02 AAJO Systems, Inc. Mobile wireless communication system
US20160103814A1 (en) * 2014-10-10 2016-04-14 Dicky Suryadi Generating web browser views for applications
WO2016057502A1 (en) * 2014-10-10 2016-04-14 Aktiebolaget Skf Generating web browser views for applications
US20160103815A1 (en) * 2014-10-10 2016-04-14 Dicky Suryadi Generating mobile web browser views for applications
US10185706B2 (en) * 2014-10-10 2019-01-22 Aktiebolaget Skf Generating web browser views for applications
CN105808673A (en) * 2016-03-01 2016-07-27 万达信息股份有限公司 Method for migrating from Windows desktop environment to safe and reliable desktop environment
US10353700B1 (en) 2018-05-21 2019-07-16 Microsoft Technology Licensing, Llc Code base sharing between standalone and web-based versions of an application via an emulated network communication channel
CN116450383A (en) * 2023-06-19 2023-07-18 合肥景云软件工程有限责任公司 Method for calling operating system through webpage

Also Published As

Publication number Publication date
CN102200976A (en) 2011-09-28
JP5274589B2 (en) 2013-08-28
JP2011198355A (en) 2011-10-06
CN102200976B (en) 2014-11-05

Similar Documents

Publication Publication Date Title
US20110239127A1 (en) Customizing system and method for converting desktop application into web application
US11256491B2 (en) System and methods for integration of an application runtime environment into a user computing environment
EP2220571B1 (en) Method and apparatus for providing api service and making api mash-up, and computer readable recording medium thereof
US10277702B2 (en) Method and apparatus for accessing an enterprise resource planning system via a mobile device
US8527260B2 (en) User-configurable translations for electronic documents
US7133895B1 (en) System and method of integrating collaboration systems with browser based application systems
US7865544B2 (en) Method and system for providing XML-based asynchronous and interactive feeds for web applications
US7949706B2 (en) Automatic electronic publishing
JP5225399B2 (en) Systems and methods for desktop application migration
US7703013B1 (en) Methods and apparatus to reformat and distribute content
EP3829196A2 (en) Method, apparatus, electronic device, storage medium and program for broadcasting voice
US20120110093A1 (en) Service oriented architecture version and dependency control
US20110145694A1 (en) Method and System for Transforming an Integrated Webpage
US9426202B2 (en) Transforming application cached template using personalized content
US20100229081A1 (en) Method for Providing a Navigation Element in an Application
KR20220141891A (en) Interface and mode selection for digital action execution
US6253229B1 (en) Hotspots only interfaces to links in hypertext document pages in network display stations
US20030163516A1 (en) Session coordination
US8855615B2 (en) Short messaging service for extending customer service delivery channels
JP2005517255A (en) Upload style sheets to handle device diversity well
WO2023025322A1 (en) Processing method and apparatus for url in session, and system and storage medium
CN110162686A (en) Service search method, apparatus, server, equipment and medium
KR20190033381A (en) Mass webpage document transforming method, and system thereof
US8533588B2 (en) Overriding images in user interfaces
CN113890861A (en) Method, device, equipment and medium for sending instant communication message

Legal Events

Date Code Title Description
AS Assignment

Owner name: NEC (CHINA) CO., LTD., CHINA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MENG, XIN;SONG, CAILIANG;SHI, JINGWEI;AND OTHERS;REEL/FRAME:025689/0855

Effective date: 20110116

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION