WO2010001871A1 - アプリケーション拡張システム、拡張方法、拡張プログラム - Google Patents
アプリケーション拡張システム、拡張方法、拡張プログラム Download PDFInfo
- Publication number
- WO2010001871A1 WO2010001871A1 PCT/JP2009/061891 JP2009061891W WO2010001871A1 WO 2010001871 A1 WO2010001871 A1 WO 2010001871A1 JP 2009061891 W JP2009061891 W JP 2009061891W WO 2010001871 A1 WO2010001871 A1 WO 2010001871A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- definition
- data
- browser
- application
- automatic execution
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 238000004891 communication Methods 0.000 claims abstract description 92
- 230000008569 process Effects 0.000 claims abstract description 69
- 238000006243 chemical reaction Methods 0.000 claims description 99
- 238000012545 processing Methods 0.000 claims description 81
- 238000013523 data management Methods 0.000 claims description 44
- 238000000605 extraction Methods 0.000 claims description 43
- 238000007726 management method Methods 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 28
- 239000000284 extract Substances 0.000 claims description 17
- 238000003860 storage Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 18
- 230000007704 transition Effects 0.000 description 14
- 230000008859 change Effects 0.000 description 10
- 230000014509 gene expression Effects 0.000 description 10
- 238000011156 evaluation Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000003825 pressing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 235000014510 cooky Nutrition 0.000 description 2
- 238000013075 data extraction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
Definitions
- the present invention relates to an application extension system that is customized mainly to meet the requirements of users of existing Web systems, and more particularly, to an application extension system, an extension method, and an extension program that customize the behavior of an application composed of a plurality of Web pages. .
- GUI Graphic User Interface
- HTML Hyper Text Markup Language
- script language is interpreted, executed, and displayed on a general-purpose Web browser on the client terminal using a protocol such as HTTP (HyperText Transport Protocol).
- HTTP HyperText Transport Protocol
- the Web system currently used is not necessarily made suitable for the user's request and is often a system that is difficult for the user to use. This is because it is generally difficult to accurately and comprehensively grasp the requirements for the system when constructing an information system, and even if a system suitable for the request is constructed once, the user's request itself is time consuming. It can be caused by various causes, such as the fact that multiple users sometimes have conflicting requirements and it is difficult to build an information system that satisfies all users' requirements at the same time. It is. In order to adapt the system to the user's requirements in such a case, there is simply a means of modifying or rebuilding the system itself.
- the system itself has a customization function that allows the user to change the behavior.
- the customization function that allows the user to change the behavior.
- not all systems have a customization function, and even if there is a customization function, it is often insufficient to satisfy a user's request.
- Patent Document 1 discloses a technique for inserting a script for changing a page into a Web page as an HTTP proxy, and executing the script on the Web browser to change the GUI.
- Patent Document 2 additional information is given to Web content by a device on a terminal instead of a general-purpose Web browser.
- Patent Document 3 facilitates the process of converting a Web screen for a mobile terminal by analyzing the meaning of the page.
- Patent Document 4 by automatically executing a Web page operation on a server, a system that outputs only HTML for human use can be operated by e-mail.
- Patent Document 5 automatic operation of a Web system is performed in order to link a client / server system and a Web system on a client terminal.
- Japanese Patent No. 3396177 Japanese Patent No. 3594231 JP 2002-116983 A JP 2002-342152 A JP 2001-101132 A
- the first problem is that it is difficult to customize across a plurality of pages in a Web system configured by screen transitions of a plurality of Web pages.
- customization across multiple pages means changing the content of customization of another page or changing the screen transition relationship between pages depending on the content of a certain page.
- the contents of the automatic execution and the determination of the start timing are performed on the client terminal by the user and other devices on the terminal. It cannot be controlled to automatically execute multiple users in the same form, and cannot be used to realize customization across multiple pages.
- the second problem is that it is difficult to change the customization method according to the content of the Web page.
- the conversion content is fixedly determined by the URL of the target Web page, or the content is simply changed according to the user's preference or role displayed on the Web page.
- the customization contents cannot be changed depending on the contents of the Web page to be performed. Therefore, for example, when a Web system in which display content is determined by the session state and different content is displayed with the same URL, or when the Web system itself changes content according to the viewer or situation, appropriate customization is performed. I can't.
- the present invention has been made in view of the problem, and an application that enables customization across a plurality of pages of a Web system configured by screen transitions of a plurality of Web pages and allows a customization method to be changed according to the content of the Web page.
- An object is to provide an expansion system, an expansion method, and an expansion program.
- the present invention provides, as a first aspect, an interface for receiving registration of a process determination definition including an automatic execution start condition and an automatic execution definition indicating the contents of the process performed as automatic execution, A communication interface for receiving a communication message from the application, and upon receiving the communication message from the browser or application, determines whether to execute the registered automatic execution definition according to the registered process determination definition, and
- the present invention provides an application expansion system characterized in that at least one GUI operation instruction is sent to a browser in accordance with an automatic execution definition determined to be transmitted to an application or browser as a destination.
- this invention is a process which receives registration with the automatic execution definition which shows the content of the process determination definition containing the starting conditions of automatic execution, and the said automatic execution as a 2nd aspect.
- Receiving a communication message from a browser or an application, determining whether to execute the registered automatic execution definition according to the registered processing determination definition, and receiving the received communication message at a destination A method for extending an application, comprising: transmitting to a certain application or the browser; and sending at least one GUI operation instruction to the browser according to the automatic execution definition determined to be executed. is there.
- the present invention provides, as a third aspect, an application expansion program that causes a computer to execute the application expansion method according to the second aspect.
- an application extension system, an extension method, and an extension program that enable customization across a plurality of pages of a Web system configured by screen transitions of a plurality of Web pages and can change the customization method according to the contents of the Web page. Can provide.
- the application extension system 1 includes an interface 11 that receives registration of a process determination definition 13 that includes a start condition for automatic execution and an automatic execution definition 14 that indicates the contents of the process to be performed as automatic execution.
- the communication interface 12 that receives a communication message from the browser 20 or the application 30, and the control unit 15 is registered according to the registered processing decision definition 13 when receiving the communication message from the browser 20 or the application 30.
- the GUI operation instruction is an instruction related to an arbitrary operation on the GUI such as inputting a value in a GUI input field displayed on the browser 20 or pressing a button on the GUI.
- the type of the interface 11 is arbitrary.
- it may be an interface for receiving the processing decision definition 13 and the automatic execution definition 14 from an external device (not shown), or an interface for accepting an input operation for registering these definitions (a user such as a keyboard). Interface).
- the function of the control unit 15 can be realized by software processing by a computer.
- FIG. 2 shows the configuration of the application extension system according to this embodiment.
- the application extension system 101 includes a proxy unit 110, a browser control unit 120, an extension definition management unit 130, and a data management unit 140.
- the proxy unit 110 includes a communication processing unit 111, a message storage unit 112, an information extraction unit 113, a process determination unit 114, and a conversion execution unit 115. Note that some of the functions of the communication interface 12 and the control unit 15 in FIG. 1 correspond to the communication processing unit 111. A part of the function of the control unit 15 in FIG. 1 corresponds to the information extraction unit 113. A part of the function of the control unit 15 in FIG. A part of the function of the control unit 15 in FIG. 1 corresponds to the conversion execution unit 115.
- the extended definition management unit 130 includes an information extraction definition 131, a process determination definition 132, a conversion definition 133, and an automatic execution definition 134.
- the browser control unit 120 is installed on the terminal device 104 with the web browser 103 and is connected to the web browser 103. A part of the function of the control unit 15 in FIG. 1 corresponds to the browser control unit 120. Although the configuration corresponding to the interface 11 in FIG. 1 is not shown, the communication relay apparatus 102 may be provided with a user interface, or the process decision definition 132 or automatic execution via any external apparatus including the terminal apparatus 104 The definition 134 may be registered.
- the proxy unit 110, the browser control unit 120, the extended definition management unit 130, and the data management unit 140 are installed on the communication relay device 102. Further, the communication processing unit 111 is connected to the external web browser 103 and the web application 105. There may be a plurality of Web browsers 103 and Web applications 105.
- the proxy unit 110 the communication processing unit 111, the information extraction unit 113, and the processing determination unit 114 can realize functions by software processing by a computer. Further, the browser control unit 120 can also realize the function by software processing by a computer.
- FIG. 3 shows the structure of the information extraction definition 131.
- the information extraction definition 131 is defined by an extraction formula and a storage destination. There are various methods for describing the extraction formula. Preferred examples include an HTTP protocol specific header name, an XPath description formula for the internal structure of HTML, and a calculation formula for performing numerical value and character string operations.
- the storage destination is the data name of the data management unit 140.
- FIG. 4 shows the structure of the processing decision definition 132.
- the processing decision definition 132 is defined as a list of operations and evaluation expressions for the data name and its value, and a definition name of the conversion definition 133 or the automatic execution definition 134 that is executed when the evaluation expression is satisfied.
- the process determination definition 13 in FIG. 1 corresponds to the process determination definition 132.
- FIG. 5 shows the structure of the conversion definition 133.
- the conversion definition 133 is defined as a list of definition names (conversion definition names) and conversion programs (conversion contents) for processing HTTP protocol headers and message data.
- FIG. 6 shows the structure of the automatic execution definition 134.
- the automatic execution definition 134 is defined by a list of definition names (automatic execution definition names) and process descriptions as definition contents. Note that the automatic execution definition 14 in FIG. 1 corresponds to the automatic execution definition 134.
- FIG. 7 shows the data structure of the data management unit 140.
- the data management unit 140 can have a plurality of data blocks 601, and each data block 601 is defined as a list of data names and data values.
- a well-known technique can be applied to a description method such as an extraction formula, an operation, an evaluation formula, a conversion program, or a macro description, and is not limited to a specific description method.
- the communication processing unit 111 receives a request message from the Web browser 103 to the Web application 105 or a response message from the Web application 105 to the Web browser 103, records the message in the message storage unit 112, and calls the information extraction unit 113.
- the information extraction unit 113 extracts necessary information from the request or response message in the message storage unit 112 in accordance with the information extraction definition 131 of the extended definition management unit 130, stores the information in the data management unit 140, and calls the processing determination unit 114.
- the process determination unit 114 refers to the data of the data management unit 140 according to the process determination definition 132 of the extended definition management unit 130, determines the conversion or automatic execution process to be applied, and executes the conversion execution unit 115 or the browser control unit 120. Instruct.
- the conversion execution unit 115 Upon receiving the execution instruction, the conversion execution unit 115 executes the conversion definition 133 specified by the extended definition management unit 130, changes the request or response message in the message storage unit 112, and sends a transmission instruction to the communication processing unit 111.
- the communication processing unit 111 Upon receiving the transmission instruction, the communication processing unit 111 transmits the changed message recorded in the message storage unit 112 to the Web browser 103 or the Web application 105.
- the browser control unit 120 Upon receiving the execution instruction, the browser control unit 120 executes the designated automatic execution definition 134 of the extended definition management unit 130 and sends a control event corresponding to the user's GUI to the Web browser 103.
- FIG. 8 shows a flow of operations of the application extension system 101 according to the present embodiment.
- the application extension system 101 first waits for reception of a communication message (step S701).
- the communication processing unit 111 receives a message
- the communication processing unit 111 records the message in the message storage unit 112 (step S702).
- the information extraction unit 113 extracts the information extraction definition 131 from the extended definition management unit 130 (step S703), extracts information from the message according to the information extraction definition 131 (step S704), and extracts the extracted information from the data management unit 140. (Step S705).
- the process determination unit 114 extracts the process determination definition 132 from the extended definition management unit 130 (step S706), and determines a process to be applied by referring to the data of the data management unit 140 according to the process determination definition 132 (step S706). If the conversion processing has been determined (step S708 / Yes), the conversion definition 133 designated is extracted from the extended definition management unit 130 (step S709), the conversion definition 133 is executed, and data management is performed as necessary. The message recorded in the message storage unit 112 is changed with reference to the data of the unit 140 (step S710). If there is no conversion process to be applied (step S708 / No), no conversion definition is executed.
- step S711 if the automatic execution process is determined (step S711 / Yes), the browser control unit 120 is instructed to execute the determined automatic execution definition 134 (step S712).
- the communication processing unit 111 transmits the message recorded in the message storage unit 112 to the web browser 103 or the web application 105 (step S713). Thereafter, the process returns to step S701.
- FIG. 9 shows an operation flow of the browser control unit 120.
- the browser control unit 120 receives the execution instruction (step S801), the browser control unit 120 retrieves the automatic execution definition 134 designated from the extended definition management unit 130 (step S802). Then, the browser control unit 120 extracts a process description to be executed next from the automatic execution definition 134 (step S803). If the process description is data processing of the data management unit 140 (step S804 / Yes), the browser control unit 120 calls the data management unit 140 to refer to and store data (step S805). If the process description is browser control (steps S804 / No, S806 / Yes), the browser control unit 120 generates a control event corresponding to a designated user GUI operation such as data input or button click on the web browser 103. Send (step S807). If there is a further process description to be executed (step S808 / Yes), the process returns to step S803 to repeat the execution.
- Automatic execution by the browser control unit 120 and message processing by the proxy unit 110 are performed in parallel, and when the next message is sent to the proxy unit 110 in the course of automatic execution by the browser control unit 120, Also, the processing after step S701 is applied.
- the application extension system 1 includes a proxy unit 110 that controls HTTP communication, a browser control unit 120 that automatically performs a GUI operation of the Web application 105 by the Web browser 103, and between different pages. And a data management unit 140 that manages data shared between applications, and the proxy unit 110 extracts necessary information from the request or response message, stores it in the data management unit 140, and executes it from the contents of the data management unit 140 Decide what to do.
- the content of the process is the conversion of the request or response message and the start of automatic execution.
- the contents of a page can be used to convert other pages in a Web page configured by screen transitions of multiple Web pages, or the user's operation procedure can be changed across multiple screens. It is possible to change the customization method depending on the customization over a plurality of pages and the content of the Web page.
- the proxy unit 110 first extracts information from the Web page and stores it in the data management unit 140, and the processing determination unit 132 uses information extracted from the same or different page stored in the data management unit 140.
- the customization method is determined, the determined content is instructed to the conversion execution unit 115 or the browser control unit 120, and the conversion execution unit 115 performs conversion processing using information included in the same or different pages stored in the data management unit 140.
- the browser control unit 120 can start automatic execution on the Web browser 103 used by the user in accordance with an instruction from the proxy unit 110 and shift the screen to another page.
- the application extension system changes the behavior of an application across multiple pages, realizes customization without changing an existing application, or responds to different requests depending on users with one application. Applicable to usage.
- the data management unit 140 simply stores the instructed data. However, in the present embodiment, this data is managed by the Web browser 103, the communication relay device 102, and the Web application 105. Manage by associating with some session managed between.
- the session here is a mechanism for handling a plurality of HTTP requests and responses generated by a series of operations as a lump, which is widely used in the Web system in general.
- There may be various units such as the proxy unit 110 is provided with a login process and the login is valid.
- There are various methods for realizing a session but the method is not limited to a specific method.
- a preferred example of session management is to record a session ID using an HTTP cookie and attach this ID to the message.
- the communication processing unit 111 identifies a session when receiving a message
- the message is recorded in the message storage unit 112 together with a session ID that uniquely identifies the session in the communication relay apparatus 102, and the data management unit 140 Data to be saved is saved separately for each session ID.
- the information extraction unit 113, the process determination unit 114, and the browser control unit 120 operate as a process for receiving a certain message, only data that matches the session ID of the received message is operated (reading or rewriting).
- the data management unit 140 may discard the data of the session.
- data used for process determination, conversion, automatic execution, and the like can be handled as temporary data that is valid only during a specific series of processes of a specific user.
- the data management unit 140 treats all data as temporary data associated with the session. However, in the present embodiment, the data management unit 140 uses the temporary data depending on the data or does not depend on the session. Allows selection of data. Further, in the case of permanent data, the sharing range may be set. The sharing range may be various forms such as sharing in all communications, sharing between all sessions of the same user, and sharing between users having a specific user attribute.
- the communication processing unit 111 has information on the management unit such as a user management function and an authentication function, and can acquire information on the management unit such as a user to which the message belongs. There is a need.
- FIG. 10 shows the structure of data managed by the data management unit 140 of this embodiment.
- the data management unit 140 has a shared range item for each data block. If this is temporary, the data management unit 140 manages the data in association with the session as in the second embodiment, and the shared range is permanent. In a typical case, all sessions operate on the same data. When a shared range such as between users is set at the time of permanent, data is managed separately for each shared range.
- the browser control unit 120 is provided in advance on the terminal device 104.
- the browser control unit 120 is implemented as a script executed on the Web browser 103.
- the conversion executing unit 115 inserts the browser control unit 120 into the response message.
- the name and contents of the automatic execution definition 134 to be started are inserted at the same time, or acquired by communicating with the communication relay apparatus 102 after the browser control unit 120 starts executing on the Web browser 103.
- FIG. 11 shows an operation flow of the application extension system according to the present embodiment.
- the operation corresponding to step S712 is different from the flowchart shown in FIG.
- the process determination unit 114 determines automatic execution (step S711 / Yes)
- the conversion execution unit 115 is instructed to execute automatically, and the conversion execution unit 115 receives an automatic execution instruction in addition to execution.
- Processing for inserting the script of the browser control unit 120 into the response message is performed (step S1001).
- the other operations are the same as those shown in FIG.
- FIG. 12 shows an operation flow of the browser control unit 120 according to the present embodiment.
- the script of the browser control unit 120 first generates a window different from the window displaying the GUI of the Web application 105, executes the script in the generated window, and operates as the browser control unit 120. This is performed (step S1101).
- the subsequent processing is the same as that after step S802 in FIG.
- the terminal device 104 can realize an application expansion system without preparation if there is only a general-purpose browser.
- the script normally executed in the Web browser stops when the screen transition occurs. However, by generating another window and causing the browser control unit 120 to execute it, the original Web application 105 is executed. Even if the window displaying the GUI changes, the function as the browser control unit 120 can be continued.
- the browser control unit 120 is arranged on the terminal device 104.
- the browser control unit is arranged in the communication relay device 102, and a control event from the browser control unit to the web browser 103 is sent. You may make it transmit using communication.
- Various communication methods can be considered, and a preferred example is a remote processing call by a remote procedure call.
- FIG. 13 shows the configuration of the application extension system according to this embodiment.
- the browser control unit 1201 is different from the first embodiment in that the browser control unit 1201 is arranged on the communication relay device 102. Whether or not such remote control of the Web browser 103 is possible depends on the creation of the OS of the Web browser 103 and the terminal device 104, but the remote control of the function itself is a widely used general technique. If this is an environment that can be used, the configuration of this embodiment is applied, and if only the general-purpose Web browser 103 is provided on the terminal device 104 side, an application expansion system can be realized without preparation.
- the conversion execution unit 115 is arranged on the communication relay device 102. However, the conversion execution unit is arranged on the terminal device 104, and the screen is rewritten after the Web browser 103 displays the page. You may do it.
- FIG. 14 shows the configuration of the application extension system according to the present embodiment.
- a conversion execution unit 1301 is arranged on the terminal device 104, and the conversion processing is performed on a screen obtained as a result of interpretation and execution by the Web browser 103, not a communication message including HTML or the like.
- the content of the screen to be converted may not be included in the response message as HTML.
- screen conversion of such a Web application can also be realized.
- a seventh embodiment in which the present invention is preferably implemented will be described.
- the information extraction definition 131 all definitions of the information extraction definition 131 are always evaluated.
- the information extraction definition includes a start condition using an HTTP header, data of the data management unit 140, or the like. And only the extraction formulas that satisfy the activation conditions are evaluated.
- FIG. 15 shows the configuration of the information extraction definition 131 of the application extension system according to this embodiment.
- Information extraction from request message post data and response message HTML data is largely dependent on the presence or content of HTML in the post data depending on the message. May cause different data to be extracted.
- a proxy unit 110, a data management unit 140, and an extended definition management unit 130 are installed on the communication relay device 102, and the browser control unit 120 connected to the Web browser 103 is connected to the terminal device 104. Is installed.
- the communication processing unit 111 of the proxy unit 110 is connected to the Web browser 103 and the Web application 1501.
- FIG. 17 is a diagram illustrating the operation of the Web application 1501.
- the web application 1501 is an application for inputting information a1, a2, b1, b2, c1, c2 across three pages, page A, page B, and page C, and pressing the “Next” button after inputting data. In order to move to the next page.
- the “Register” button is pressed on the C page, the input data is saved in the application.
- the Web application 1501 is customized such that some input fields are omitted so that the user's input work can be simplified as a user request.
- FIG. 18 shows the operation of the Web application 1501 that has been customized by the user.
- a2, b1, and b2 are always the same fixed value, input is omitted, and only a1, c1, and c2 are input, and c1 is not a completely fixed value but is often the same value, so a default value is set and necessary. Only be able to change.
- FIG. 19 shows the information extraction definition 131 registered in the extended definition management unit 130.
- An XPath expression “// table / tr [1] / td [1]” for extracting the item name (character string a1, b1, c1, etc.) in the first input field in the page is specified as the extraction expression.
- the contents are stored in the “item name” of the data P as a storage destination.
- FIG. 20 shows the process decision definition 132 registered in the extended definition management unit 130. Whether the page content is page A, B, or C is determined based on the value of “item name” of data P. If page A or page C, conversion definition A or C is converted. Definition B and automatic execution definition B are executed.
- FIG. 21 shows a conversion definition 133 registered in the extended definition management unit 130.
- the conversion definition A the value of the data name “a2” of the data X is inserted in the input field of a2, and conversion is performed so as to hide the display of the character string of the a2 and the input field.
- conversion definition B conversion is performed so as to hide the display of the character strings b1 and b2 and the input field.
- conversion definition C conversion is performed so that the value of the data name “c1” of the data X is inserted into the input field of c1.
- the display is hidden, it is not displayed on the Web browser 103, but it can be operated from the Web browser control unit 120 and the input data is transmitted to the server.
- FIG. 22 shows an automatic execution definition 134 registered in the extended definition management unit 130.
- the automatic execution definition B is composed of five processing descriptions, that is, data fetching and setting in the input field two by two and button depression.
- FIG. 23 shows data managed by the data management unit 140. There is temporary data data P possessed by data of “item name” and permanent data data X having data of “a2”, “b1”, “b2”, and “c1”.
- FIG. 24 shows an example of the operation of the application extension system.
- the communication processing unit 111 records the request message in the message storage unit 112, and the information extraction unit 113 tries to extract information.
- the extraction formula is applied only to the HTML document of the response message, the value of the item name of the data P is an empty string in the case of the request message.
- the processing determination unit 114 evaluates the three evaluation formulas of the processing determination definition 132, but since there is no corresponding formula here, it is determined that no processing is performed, and the communication processing unit 111 receives the received request. A message is transmitted to the Web application 1501.
- the Web application 1501 when receiving the request message, the Web application 1501 returns the HTML of page A as a response message because it is the first communication, and this is sent to the communication processing unit 111 (2302).
- the communication processing unit 111 records the response message in the message storage unit 112, the information extraction unit 113 tries to extract information, extracts the character string “a1” as the item name of the first input field in the page, and the data P Store in the data value of “Item name”.
- the process determining unit 114 evaluates the three evaluation expressions of the process determination definition 132, and determines that the conversion definition A is executed from the processing contents because the expression on the first line satisfies the condition. 115 is instructed to execute conversion definition A.
- the conversion execution unit 115 extracts the conversion definition A from the extended definition management unit 130, executes the definition content, extracts the value “value 1” of the data name a2 of the data X, and sets it as the initial value of the input field of a2.
- the HTML of the response message in the message storage unit 112 is changed so that the display of a2 and the input field cannot be seen.
- the communication processing unit 111 transmits the changed response message to the web browser 103 (2302 ').
- the Web browser 103 displays the received page A, but the input field a2 is not displayed here.
- the communication processing unit 111 records the response message in the message storage unit 112, the information extraction unit 113 attempts to extract information, extracts the character string “b1” as the item name of the first input field in the page, and the data P Stored in the item name value of.
- the process determining unit 114 evaluates the three evaluation expressions of the process determination definition 132, and the expression on the second line satisfies the condition, so that the conversion definition B and the automatic execution definition B are executed from the process contents.
- the conversion execution unit 115 is instructed to execute conversion definition B
- the browser control unit 120 is instructed to execute automatic execution definition B.
- the conversion execution unit 115 extracts the conversion definition B from the extended definition management unit 130, changes the HTML of the response message in the message storage unit 112 so as to hide the display and input fields of b1 and b2, and the communication processing unit 111. Transmits the changed response message to the Web browser 103 (2304 ′).
- the browser control unit 120 retrieves the definition contents of the automatic execution definition B from the extended definition management unit 130, sequentially executes the process descriptions, and performs data X.x as data processing on the first and third lines. b1 and data X.
- a value is extracted from b2, and an input and a control event for pressing the “next” button are sent to the browser in the input fields b1 and b2 on lines 2, 4, and 5 (2305, 2306, and 2307).
- the next request message is sent to the Web application 1501.
- the “Next” button is displayed on the Web browser 103, and it appears that the page B automatically and automatically shifts to the next screen.
- the third request message is sent to the Web application 1501 in the same way as the first and second (2308), and the contents of page C are returned as a response message (2309).
- the communication processing unit 111 records the response message in the message storage unit 112, the information extraction unit 113 attempts to extract information, extracts the character string “c1” as the item name of the first input field in the page, and the data P Stored in the item name value of.
- the process determining unit 114 evaluates the three evaluation expressions of the process determination definition 132, and the expression on the third line satisfies the condition, so that the conversion definition C is determined to be executed from the processing contents, and the conversion executing unit 115 Is instructed to execute the conversion definition C, and the conversion execution unit 115 retrieves and executes the conversion definition C.
- c1 is extracted, an initial value is set in the input field of c1, and it is transmitted to the Web browser 103 (2309 ').
- the user can use the Web application 1501 as if a partial page transition as shown in FIG. 18 is omitted.
- the execution state inside the Web application 1501 and the execution state of the Web browser 103 such as the generation of cookies and windows are the same as when directly used without using the application extension system. Even if there are a plurality of pages other than B and C and the operation depends on these execution states, it is possible to continue using other pages as they are even after customization.
- the sharing range of data X which is permanent data
- the sharing range of this permanent data is set for each department to which the user belongs, the fixed value automatically entered for each department is changed. Can be easily done.
- FIG. 25 shows the configuration of the application extension system. This embodiment is the same as the first embodiment except that the connected Web application is different from the registered extended definition. Web applications are connected to Web applications 2402, 2403, and 2404.
- FIG. 26 shows the operation of the Web application 2402.
- the Web application 2402 inputs information across three pages, page A, page B, and page C, but the input items are only a1, b1, and c1.
- FIG. 27 shows the operation of the Web application 2403.
- the web application 2403 includes page D and page E.
- the input value of b1 of the web application 2402 is input to page D, the related information of the input value is displayed on page E.
- FIG. 28 shows the operation of the Web application 2404.
- the Web application 2404 includes a page F and a page G.
- the value of b1 of the Web application 2402 is input to the page F, the related information of the input value is displayed on the page G.
- the input content of a1 is the customer's industry name
- the Web application 2403 manages manufacturing industry information
- the Web application 2404 manages information of other industries.
- FIG. 29 is a diagram illustrating the operation of the Web application 2402 that has been customized by the user.
- Page A remains the same, but the contents entered on the previous page are added to pages B and C, and the result obtained by searching the related information of the input value to b1 in Web application 2403 or 2404 is additionally displayed on page C. .
- FIG. 30 shows the information extraction definition 131 registered in the extended definition management unit 130.
- the request is an HTTP POST command.
- the values of the data to be POSTed are a1 and b1, respectively, and values are stored in a1 and b1 of data Y, respectively.
- FIG. 31 shows the processing decision definition z definition 132 registered in the extended definition management unit 130. Based on the value of the “item name” of the data P, it is determined whether the page content is page B or page C. If page B, conversion definition B is executed. Further, in the case of page C, the value of a1 in data Y is referred to. If a1 is “manufacturing”, conversion definition C1 and automatic execution definition C1 are converted. If a1 is not “manufacturing”, conversion definition C2 and automatic execution definition C2 are displayed. Execute.
- FIG. 32 shows a conversion definition 133 registered in the extended definition management unit 130.
- the conversion definition B display of a1 and its value is added.
- the embedded display of the Web application 2403 is added in addition to the display of the values of a1 and b1.
- the embedded display of the Web application 2404 is added in addition to the display of the values of a1 and b1.
- the embedded display can be described in an HTML IF frame or the like.
- FIG. 33 shows an automatic execution definition 134 registered in the extended definition management unit 130.
- the automatic execution definition C1 is composed of three process descriptions, that is, data extraction, setting in an input field, and pressing of a search button.
- the automatic execution definition C2 is composed of three process descriptions: data extraction, setting in an input field, and pressing of a submit button.
- FIG. 34 shows data managed by the data management unit 140. There is data P of temporary data having data of “item name” and data Y of temporary data having data of “a1” and “b1”.
- FIG. 35 shows the operation of the application extension system. Note that the operation of the communication processing unit 111 receiving a message, recording the message in the message storage unit 112, and transmitting the last recorded message is the same as that in the first embodiment, and thus description thereof is omitted. Further, the item name of the first input column in the page is stored in the data P, and the part used for the determination of pages B and C is the same as that in the first embodiment, so that the description is omitted.
- the information extraction unit 113 extracts the values of a1 and b1 input from the request message sent when the “Next” button on page A and page B is pressed, and stores them in the data Y. .
- conversion definition B is selected and executed by the conversion execution unit 115.
- the input value a1 included in the previous request message is extracted from the data Y and embedded in the HTML of page B.
- the input value of a1 included in the previous request message is extracted from the data Y and evaluated, and the value is Whether the conversion definition C1 and the automatic execution definition C1, or the conversion definition C2 and the automatic execution definition C2 are to be performed is determined depending on whether or not it is “manufacturing”.
- the conversion execution unit 115 executes the conversion definition C1, and the input values of a1 and b1 in the previous page are extracted from the data Y and the display is added. In addition, an embedded display of the Web application 2403 is added.
- the automatic execution definition C1 is executed by the browser control unit 120, the b1 input value of the data Y is extracted, inserted into the b1 input field of the embedded Web application 2403, and the search button is pressed.
- the page E of the Web application 2403 is embedded and displayed in the related information portion of the page C.
- the conversion definition C2 is executed by the conversion execution unit 115, the input values of a1 and b1 in the previous page are extracted from the data Y, and the display is added. In addition, an embedded display of the Web application 2404 is added.
- the automatic execution definition C2 is executed by the browser control unit 120, the b1 input value of the data Y is taken out, inserted into the b1 input field of the embedded Web application 2404, and the submit button is pressed.
- the page G of the Web application 2404 is embedded in the related information portion of the page C.
- a Web system constituted by HTTP and HTML is taken as an example.
- the message delivery protocol is not limited to HTTP, and the message content is also limited to HTML. is not.
- the present invention is applicable to a system in which a browser on a general-purpose terminal acquires, interprets, and displays data describing the contents of a GUI from an application through communication, and the user operates the GUI displayed on the browser. Is applicable. As described above, the present invention can be variously modified.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
上記特許文献では、対象とするWebページのURLによって固定的に変換内容を決定するか、又はWebページに表示しているユーザの嗜好や役割に応じて内容を変更するだけであり、表示しようとするWebページの内容によってカスタマイズ内容を変更させることができない。よって、例えば表示内容がセッション状態によって決定され異なるコンテンツが同一URLで表示されるようなWebシステムや、Webシステム自体が閲覧者や状況に応じてコンテンツを変更させる場合に、適切なカスタマイズを行うことができない。さらに、あるページの内容によってその後に表示する別のページの内容のカスタマイズ方法を変更することができない。
本発明を好適に実施した第1の実施形態について説明する。図2に、本実施形態に係るアプリケーション拡張システムの構成を示す。アプリケーション拡張システム101は、プロキシ部110、ブラウザ制御部120、拡張定義管理部130、及びデータ管理部140を有する。
拡張定義管理部130は、情報抽出定義131、処理決定定義132、変換定義133及び自動実行定義134を有する。
ブラウザ制御部120は、Webブラウザ103のある端末装置104上に設置され、Webブラウザ103に接続される。なお、図1における制御部15の機能の一部がブラウザ制御部120に相当する。図1におけるインタフェース11に相当する構成は不図示であるが、通信中継装置102がユーザインタフェースを備えていても良いし、端末装置104を含む任意の外部装置を介して処理決定定義132や自動実行定義134が登録される構成であっても良い。
通信処理部111はWebブラウザ103からWebアプリケーション105への要求メッセージ、又はWebアプリケーション105からWebブラウザ103への応答メッセージを受信し、メッセージをメッセージ記憶部112に記録し、情報抽出部113を呼び出す。
アプリケーション拡張システム101は、まず通信メッセージの受信を待ち(ステップS701)、通信処理部111がメッセージを受信すると、通信処理部111はメッセージをメッセージ記憶部112に記録する(ステップS702)。
ブラウザ制御部120は、実行指示を受けると(ステップS801)、拡張定義管理部130から指定された自動実行定義134を取り出す(ステップS802)。そして、ブラウザ制御部120は、自動実行定義134から次に実行すべき処理記述を取り出す(ステップS803)。処理記述がデータ管理部140のデータ処理であれば(ステップS804/Yes)、ブラウザ制御部120は、データ管理部140を呼び出してデータの参照や蓄積を行う(ステップS805)。処理記述がブラウザ制御であれば(ステップS804/No、S806/Yes)、ブラウザ制御部120は、Webブラウザ103にデータの入力やボタンのクリックなどの指定されたユーザGUI操作に相当する制御イベントを送る(ステップS807)。さらに実行すべき処理記述があれば(ステップS808/Yes)、ステップS803に戻って実行を繰り返す。
元のWebアプリケーションに対するカスタマイズの内容として、異なるページへの遷移や、ユーザの操作のエミュレーションが必要な場合は、ブラウザ制御部120に自動実行を指示する。
また、元のWebブラウザに対するカスタマイズの内容として、ページ内の書き換えが必要な場合は変換処理を指示する。
処理内容の決定や、変換処理、自動実行処理で別ページに含まれる情報を利用する場合は、データ管理部140から取得することで、複数ページにまたがる情報を用いた拡張を行う。
本発明を好適に実施した第2の実施形態について説明する。
上記第1の実施形態においては、データ管理部140は単純に指示されたデータを保存していたが、本実施形態においては、このデータの管理をWebブラウザ103と通信中継装置102やWebアプリケーション105間で管理される何らかのセッションに関連付けて管理する。ここでいうセッションとは、一般にWebシステムで広く用いられている、一連の操作によって発生する複数のHTTP要求や応答を一塊として扱うための仕組みであり、塊として扱う単位は端末装置ごと、利用ユーザごと、プロキシ部110にログイン処理を設けてログインが有効な間、など様々な単位がありうる。セッションを実現する方法は様々なものがあるが、特定の方法には限定されない。セッション管理の好適な例は、HTTPのクッキーを用いてセッションIDを記録し、このIDをメッセージに付与するものである。
データ管理部140のデータをセッションに関連付けて管理することで、処理の決定や変換、自動実行などで用いるデータを特定ユーザの特定の一連処理中でのみ有効な一時的データとして扱うことができる。
本発明を好適に実施した第3の実施形態について説明する。
上記第2の実施形態においては、データ管理部140は全てのデータをセッションに関連付けられた一時的データとして扱っていたが、本実施形態においては、データによって一時的データかセッションに依存しない永続的データかを選択できるようにする。さらに永続的データの場合その共有範囲などを設定できるようにしても良い。共有範囲は、全ての通信で共有、同じユーザの全てのセッション間で共有、ある特定のユーザ属性を持つユーザ間で共有などの様々形態が考えられる。
本発明を好適に実施した第4の実施形態について説明する。
上記第1の実施形態においては、ブラウザ制御部120は端末装置104上に事前に配備されていたが、本実施形態においては、ブラウザ制御部120をWebブラウザ103上で実行されるスクリプトとして実装し、処理決定部114が自動実行を決定した時に、変換実行部115が応答メッセージの中にブラウザ制御部120を挿入するようにする。開始すべき自動実行定義134の名前や内容は同時に挿入するか、又はWebブラウザ103上でブラウザ制御部120が実行を開始した後に通信中継装置102と通信して取得する。
本発明を好適に実施した第5の実施形態について説明する。
上記第1の実施形態においては、ブラウザ制御部120は端末装置104上に配備されていたが、ブラウザ制御部を通信中継装置102内に配置し、ブラウザ制御部からWebブラウザ103への制御イベントを通信を用いて送信するようにしても良い。通信方式は様々なものが考えられるが、好適な例はリモートプロシジャーコール(Remote Procedure Call)による遠隔処理呼び出しである。
このようなWebブラウザ103の遠隔制御が可能か否かは、Webブラウザ103や端末装置104のOSなどの作りに依存するが、機能の遠隔制御自体は広く使用されている一般的な技術であり、これが利用できる環境であれば、本実施形態の構成を適用し、端末装置104側は汎用のWebブラウザ103のみがあれば事前準備なしにアプリケーション拡張システムを実現できる。
本発明を好適に実施した第6の実施形態について説明する。
上記第1の実施形態では、変換実行部115は通信中継装置102上に配備されていたが、変換実行部を端末装置104上に配置し、Webブラウザ103がページを表示した後で画面を書き換えるようにしても良い。
本発明を好適に実施した第7の実施形態について説明する。
上記第1の実施形態では、情報抽出定義131は常に全ての定義が評価されていたが、本実施形態においては、情報抽出定義がHTTPヘッダやデータ管理部140のデータなどを用いた起動条件を持つようにし、起動条件を満たした抽出式のみを評価するようにする。
要求メッセージのポストデータや応答メッセージのHTMLデータからの情報抽出は、メッセージによってポストデータはHTMLの有無や内容が大きく変化するため、抽出式の対象となるデータが存在しない場合や、本来の意図とは異なるデータが抽出されてしまう可能性がある。本実施形態のように、起動条件を指定することで意図したメッセージにのみ抽出式を適用することが可能となる。
図16に示すように、通信中継装置102上にプロキシ部110、データ管理部140、拡張定義管理部130が設置されており、また端末装置104にはWebブラウザ103に接続されたブラウザ制御部120が設置されている。
プロキシ部110の通信処理部111は、Webブラウザ103とWebアプリケーション1501とに接続されている。
Webアプリケーション1501は、ページA、ページB、ページCの3ページにまたがり情報a1、a2、b1、b2、c1、c2を入力するアプリケーションであり、データを入力後「次へ」ボタンを押下することで次のページに遷移するようになっている。また、Cページで「登録」ボタンを押下すると入力データがアプリケーションに保存される。
a2、b1、b2は常に同じ固定値なので入力を省略し、a1、c1、c2のみを入力し、またc1は完全に固定値ではないが多くの場合同じ値なので既定値を設定し必要な時のみ変更できるようにする。
変換定義Aでは、a2の入力欄にデータXのデータ名“a2”の値を挿入し、かつa2の文字列及び入力欄の表示を隠すように変換する。
変換定義Bでは、b1、b2の文字列及び入力欄の表示を隠すように変換する。
変換定義Cでは、c1の入力欄にデータXのデータ名“c1”の値を挿入するように変換する。
なお、表示を隠す場合、Webブラウザ103上には表示はされないが、Webブラウザ制御部120からは操作可能で入力されたデータはサーバへ送信される状態である。
アプリケーション拡張システムの動作について説明する。図24にアプリケーション拡張システムの動作の一例を示す。ユーザがWebブラウザ103からアプリケーション拡張システム101の通信処理部111を介してWebアプリケーション1501にアクセス要求を送ると(2301)、通信処理部111は要求メッセージをメッセージ記憶部112に記録し、情報抽出部113が情報抽出を試みる。ここでは抽出式は応答メッセージのHTML文書にのみ適用されるため、要求メッセージの場合データPの項目名の値は空文字列となる。
同時にブラウザ制御部120は、拡張定義管理部130から自動実行定義Bの定義内容を取り出し、処理記述を順次実行し、1行目と3行目とでデータ処理としてデータX.b1とデータX.b2から値を取り出し、2、4、5行目でブラウザにb1とb2との入力欄に入力と「次へ」ボタンの押下という制御イベントとを送る(2305、2306、2307)。
この自動実行により、Webアプリケーション1501に次の要求メッセージが送られることとなる。
この結果、Webブラウザ103にページBは「次へ」ボタンのみ表示されて、かつすぐに自動で次の画面に遷移してしまうように見える。
図25に、アプリケーション拡張システムの構成を示す。接続されるWebアプリケーションと、登録される拡張定義が異なる以外は、実施例1と同様である。Webアプリケーションとしては、Webアプリケーション2402、2403、2404に接続されている。
変換定義Bでは、a1とその値の表示を追加する。
変換定義C1では、a1及びb1のそれぞれの値の表示に加え、Webアプリケーション2403の埋め込み表示を追加する。
変換定義C2では、a1及びb1のそれぞれの値の表示に加え、Webアプリケーション2404の埋め込み表示を追加する。
なお、埋め込み表示はHTMLのIFrameなどで記述できる。
自動実行定義C1は、データの取り出しと、入力欄への設定と、検索ボタンの押下との三つの処理記述からなる。一方、自動実行定義C2は、データの取り出しと、入力欄への設定と、submitボタンの押下との三つの処理記述からなる。
“項目名”のデータを持つ一時的データのデータPと、“a1”、“b1”のデータを持つ一時的データのデータYとがある。
図35に、アプリケーション拡張システムの動作を示す。なお、通信処理部111がメッセージを受信してメッセージ記憶部112に記録し、最後に記録されたメッセージを送信する動作は第1の実施例と同様であるため、説明は省略する。
また、ページ内の一つ目の入力欄の項目名をデータPに格納し、ページB、Cの判定に用いる部分も第1の実施例と同じであるため、説明は省略する。
このように、本発明は様々な変形が可能である。
11 インタフェース
12 通信インタフェース
13、132 処理決定定義
14、134 自動実行定義
15 制御部
20 ブラウザ
30 アプリケーション
102 通信中継装置
103 Webブラウザ
104 端末装置
105、1501、2402、2403、2404 Webアプリケーション
110 プロキシ部
111 通信処理部
112 メッセージ記憶部
113 情報抽出部
114 処理決定部
115、1301 変換実行部
120、1201 ブラウザ制御部
130 拡張定義管理部
131 情報抽出定義
133 変換定義
140 データ管理部
Claims (16)
- 自動実行の起動条件を含む処理決定定義と前記自動実行として行う処理の内容を示す自動実行定義との登録を受けるインタフェースと、
ブラウザ又はアプリケーションからの通信メッセージを受信する通信インタフェースとを備え、
前記ブラウザ又はアプリケーションからの通信メッセージ受信時に、
登録されている前記処理決定定義に従って、登録済みの前記自動実行定義を実行するかを決定し、
前記通信メッセージを、送り先である前記アプリケーション又は前記ブラウザへ送信し、
実行すると決定した前記自動実行定義に従って、前記ブラウザに少なくとも一つのGUI操作指示を送ることを特徴とするアプリケーション拡張システム。 - 前記ブラウザと前記アプリケーションとの間の通信メッセージを制御するプロキシ部と、
前記ブラウザの少なくとも一つのGUI操作を前記自動実行定義に従って自動実行するブラウザ制御部と、
前記処理決定定義及び前記自動実行定義を格納する拡張定義管理部とを有し、
前記プロキシ部が通信メッセージ受信時に前記処理決定定義に従って自動実行の開始を決定して前記ブラウザ制御部に自動実行の開始を指示し、
自動実行の開始指示を受けた前記ブラウザ制御部が、前記自動実行定義に従ってGUI操作を行うことを特徴とする請求項1記載のアプリケーション拡張システム。 - 前記拡張定義管理部は、通信メッセージを変換するための変換定義をさらに格納し、
前記プロキシ部は、処理決定時にさらに変換処理を行うか否かを決定し、
変換処理を行う場合には、前記変換定義に従って通信メッセージを変換することを特徴とする請求項2記載のアプリケーション拡張システム。 - 前記通信メッセージから抽出されたデータを保持するデータ管理部を備え、
前記拡張定義管理部は、通信メッセージから情報を抽出するための情報抽出定義をさらに格納し、
前記プロキシ部は、通信メッセージ受信時に前記情報抽出定義に従って前記通信メッセージから情報を抽出し、取得したデータを前記データ管理部へ保存する情報抽出手段と、前記処理決定の際に前記データ管理部のデータを参照して処理を決定する処理決定手段と、変換処理の際に前記データ管理部のデータを参照して変換処理を行う変換実行手段とを有し、
前記ブラウザ制御部は前記データ管理部のデータを参照して自動実行処理を行うことを特徴とする請求項3記載のアプリケーション拡張システム。 - 前記プロキシ部が、通信メッセージ受信時に前記ブラウザと前記アプリケーションとの間のセッション情報を認識し、
前記データ管理部は、保持するデータを前記セッション情報ごとに管理し、
前記プロキシ部の情報抽出処理手段、処理決定手段、及び変換実行手段と、前記ブラウザ制御部とは、処理する通信メッセージのセッションに関連した前記データ管理部から読み出して、各々における処理に用いることを特徴とする請求項4記載のアプリケーション拡張システム。 - 前記データ管理部は、前記セッションごとに管理されるデータに加え、異なるセッション間で共有されるデータを保持し、前記プロキシ部及び前記ブラウザ制御部は、両種類のデータを各々における処理に用いることを特徴とする請求項5記載のアプリケーション拡張システム。
- 端末装置と通信中継装置とで構成され、
前記ブラウザ制御部が前記端末装置上に、前記プロキシ部が前記通信中継装置上にそれぞれ配置されたことを特徴とする請求項2から6のいずれか1項記載のアプリケーション拡張システム。 - 端末装置と通信中継装置とで構成され、
前記ブラウザ制御部と前記プロキシ部とが、前記通信中継装置上に配置されたことを特徴とする請求項2から6のいずれか1項記載のアプリケーション拡張システム。 - 前記プロキシ部が、自動実行の開始を決定した時に、前記ブラウザが応答メッセージ受信時に自動起動するように前記ブラウザ制御部を通信の応答メッセージ内に挿入し、前記ブラウザ制御部が前記ブラウザによって起動されると自動実行を開始することを特徴とする請求項2から6のいずれか1項記載のアプリケーション拡張システム。
- 端末装置と通信中継装置とで構成され、
前記端末装置上に配置される変換実行部をさらに有し、前記プロキシ部が変換処理の実行を決定した時に、前記変換実行部に変換処理の実行を指示し、前記ブラウザが応答メッセージを解析して処理した結果の表示画面を前記変換実行部が変換することを特徴とする請求項3から6のいずれか1項記載のアプリケーション拡張システム。 - 自動実行の起動条件を含む処理決定定義と前記自動実行として行う処理の内容を示す自動実行定義との登録を受け付ける工程と、
ブラウザ又はアプリケーションからの通信メッセージを受信する工程と、
登録されている前記処理決定定義に従って、登録済みの前記自動実行定義を実行するかを決定する工程と、
前記受信した通信メッセージを、送り先である前記アプリケーション又は前記ブラウザへ送信する工程と、
実行すると決定した前記自動実行定義に従って、前記ブラウザに少なくとも一つのGUI操作指示を送る工程とを有することを特徴とするアプリケーション拡張方法。 - 通信メッセージを変換するための変換定義の登録をさらに受け付け、
自動実行定義を実行するかを決定する際に、変換処理を行うか否かをさらに決定し、
変換処理を行う場合には、前記変換定義に従って通信メッセージの変換を行うことを特徴とする請求項11記載のアプリケーション拡張方法。 - 前記通信メッセージから情報を抽出するための情報抽出定義の登録をさらに受け付け、
通信メッセージ受信時に前記情報抽出定義に従って前記通信メッセージから抽出したデータを保存し、
自動実行定義を実行するか否かの決定、変換処理、自動実行処理の際には、前記保存したデータを用いることを特徴とする請求項12記載のアプリケーション拡張方法。 - 前記通信メッセージ受信時に前記ブラウザと前記アプリケーションとの間のセッション情報を認識し、
前記通信メッセージから抽出して保存したデータを前記セッション情報ごとに管理し、
前記保存したデータのうち、処理する通信メッセージのセッションに関連するデータを読み出して、前記通信メッセージからのデータの抽出、自動実行定義を実行するか否かの決定、変換処理、及び自動実行処理に用いることを特徴とする請求項13記載のアプリケーション拡張方法。 - 前記セッションごとに管理されるデータに加え、異なるセッション間で共有されるデータも保持し、両種類のデータを前記通信メッセージからのデータの抽出、自動実行定義を実行するか否かの決定、変換処理、及び自動実行処理に用いることを特徴とする請求項14記載のアプリケーション拡張方法。
- 請求項11から15のいずれか1項記載のアプリケーション拡張方法をコンピュータに実行させるアプリケーション拡張プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010519068A JP5321586B2 (ja) | 2008-06-30 | 2009-06-29 | アプリケーション拡張システム、拡張方法、拡張プログラム |
US12/999,962 US20110093801A1 (en) | 2008-06-30 | 2009-06-29 | Application extension system, extension method, extension program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008170297 | 2008-06-30 | ||
JP2008-170297 | 2008-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010001871A1 true WO2010001871A1 (ja) | 2010-01-07 |
Family
ID=41465966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/061891 WO2010001871A1 (ja) | 2008-06-30 | 2009-06-29 | アプリケーション拡張システム、拡張方法、拡張プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20110093801A1 (ja) |
JP (1) | JP5321586B2 (ja) |
WO (1) | WO2010001871A1 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011145918A (ja) * | 2010-01-15 | 2011-07-28 | Hitachi Solutions Ltd | Webアプリケーション表示制御システム |
JP2011203800A (ja) * | 2010-03-24 | 2011-10-13 | Nomura Research Institute Ltd | 企業Webページ管理システム |
JP2013531295A (ja) * | 2010-06-10 | 2013-08-01 | アリババ・グループ・ホールディング・リミテッド | オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 |
JP2013186886A (ja) * | 2012-12-05 | 2013-09-19 | Murakumo Corp | 情報処理装置、方法およびプログラム |
WO2013168235A1 (ja) * | 2012-05-08 | 2013-11-14 | 株式会社富士通ビー・エス・シー | プログラム、情報処理装置およびデータ提供方法 |
JP2015148916A (ja) * | 2014-02-06 | 2015-08-20 | コニカミノルタ株式会社 | 操作処理装置、情報機器の制御方法およびコンピュータープログラム |
JP2021140587A (ja) * | 2020-03-06 | 2021-09-16 | 株式会社C−Rise | 情報処理方法、コンピュータプログラム及び情報処理装置 |
WO2021199278A1 (ja) * | 2020-03-31 | 2021-10-07 | 株式会社Peco | 動物患者用電子カルテの提供方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8959425B2 (en) | 2011-12-09 | 2015-02-17 | Microsoft Corporation | Inference-based extension activation |
US9679163B2 (en) * | 2012-01-17 | 2017-06-13 | Microsoft Technology Licensing, Llc | Installation and management of client extensions |
US8843822B2 (en) | 2012-01-30 | 2014-09-23 | Microsoft Corporation | Intelligent prioritization of activated extensions |
US9449112B2 (en) | 2012-01-30 | 2016-09-20 | Microsoft Technology Licensing, Llc | Extension activation for related documents |
US9256445B2 (en) | 2012-01-30 | 2016-02-09 | Microsoft Technology Licensing, Llc | Dynamic extension view with multiple levels of expansion |
US11782876B2 (en) * | 2019-10-04 | 2023-10-10 | Canon Kabushiki Kaisha | Information processing apparatus, method of controlling the same, and storage medium |
US20230236712A1 (en) * | 2022-01-24 | 2023-07-27 | UiPath Inc. | Browser-Based Robotic Process Automation (RPA) Robot Design Interface |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5918013A (en) * | 1996-06-03 | 1999-06-29 | Webtv Networks, Inc. | Method of transcoding documents in a network environment using a proxy server |
US5968119A (en) * | 1996-12-09 | 1999-10-19 | Wall Data Incorporated | Method of accessing information of an SNA host computer from a client computer using a specific terminal emulation |
JP3396177B2 (ja) * | 1999-01-26 | 2003-04-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ウェブページカスタマイズシステム |
US6742043B1 (en) * | 2000-01-14 | 2004-05-25 | Webtv Networks, Inc. | Reformatting with modular proxy server |
US7210100B2 (en) * | 2000-09-27 | 2007-04-24 | Eizel Technologies, Inc. | Configurable transformation of electronic documents |
US7823070B2 (en) * | 2003-12-19 | 2010-10-26 | Fuji Xerox Co., Ltd. | Methods and systems for extending existing user interfaces |
US7509374B2 (en) * | 2005-09-09 | 2009-03-24 | Alchemic Solutions Group, Inc. | Systems and methods for creating customized applications |
US7664862B2 (en) * | 2008-01-14 | 2010-02-16 | International Business Machines Corporation | Browser-based proxy server for customization and distribution of existing applications |
-
2009
- 2009-06-29 WO PCT/JP2009/061891 patent/WO2010001871A1/ja active Application Filing
- 2009-06-29 JP JP2010519068A patent/JP5321586B2/ja not_active Expired - Fee Related
- 2009-06-29 US US12/999,962 patent/US20110093801A1/en not_active Abandoned
Non-Patent Citations (3)
Title |
---|
DAISUKE IMAMURA ET AL.: "Web Application Frame Work Staveware", TOSHIBA REVIEW, vol. 59, no. 11, 1 November 2004 (2004-11-01), pages 47 - 50 * |
KAZUYA KOYAMA ET AL.: "Web Service Network no Kanri Gijutsu", IEICE TECHNICAL REPORT, vol. 105, no. 526, 12 January 2006 (2006-01-12), pages 31 - 36 * |
KEN'ICHI TAKAHASHI ET AL.: "2 So Kozo ni yoru Web Application no Web Service Henkan", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 49, no. 1, 15 January 2008 (2008-01-15), pages 393 - 401 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011145918A (ja) * | 2010-01-15 | 2011-07-28 | Hitachi Solutions Ltd | Webアプリケーション表示制御システム |
JP2011203800A (ja) * | 2010-03-24 | 2011-10-13 | Nomura Research Institute Ltd | 企業Webページ管理システム |
JP2013531295A (ja) * | 2010-06-10 | 2013-08-01 | アリババ・グループ・ホールディング・リミテッド | オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 |
US9146786B2 (en) | 2010-06-10 | 2015-09-29 | Alibaba Group Holding Limited | Online business method, system and apparatus based on open application programming interface |
US9699257B2 (en) | 2010-06-10 | 2017-07-04 | Alibaba Group Holding Limited | Online business method, system and apparatus based on open application programming interface |
WO2013168235A1 (ja) * | 2012-05-08 | 2013-11-14 | 株式会社富士通ビー・エス・シー | プログラム、情報処理装置およびデータ提供方法 |
JP2013186886A (ja) * | 2012-12-05 | 2013-09-19 | Murakumo Corp | 情報処理装置、方法およびプログラム |
JP2015148916A (ja) * | 2014-02-06 | 2015-08-20 | コニカミノルタ株式会社 | 操作処理装置、情報機器の制御方法およびコンピュータープログラム |
JP2021140587A (ja) * | 2020-03-06 | 2021-09-16 | 株式会社C−Rise | 情報処理方法、コンピュータプログラム及び情報処理装置 |
WO2021199278A1 (ja) * | 2020-03-31 | 2021-10-07 | 株式会社Peco | 動物患者用電子カルテの提供方法 |
JP7005085B1 (ja) * | 2020-03-31 | 2022-01-21 | 株式会社Peco | 方法、プログラム、カルテ情報提供システム |
Also Published As
Publication number | Publication date |
---|---|
JPWO2010001871A1 (ja) | 2011-12-22 |
US20110093801A1 (en) | 2011-04-21 |
JP5321586B2 (ja) | 2013-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5321586B2 (ja) | アプリケーション拡張システム、拡張方法、拡張プログラム | |
US10545749B2 (en) | System for cloud computing using web components | |
KR101507629B1 (ko) | 기존 애플리케이션들의 커스터마이징 및 분산을 위한 브라우저-기반 프록시 서버 | |
US7761601B2 (en) | Strategies for transforming markup content to code-bearing content for consumption by a receiving device | |
US8838808B2 (en) | Asynchronous communication in web applications | |
US8782127B2 (en) | Notification based web applications | |
US20100058118A1 (en) | Storage medium recording information reacquisition procedure generation program and information reacquisition procedure generation apparatus | |
MXPA05002276A (es) | Sistema y metodo para construir aplicaciones inalambricas con asignacion inteligente entre interfaz de usuario y componentes de datos. | |
KR20080041634A (ko) | 클라이언트-서버 통신 개선 방법, 클라이언트-서버아키텍처 내의 서버, 클라이언트-서버 아키텍처 시스템 및컴퓨터 판독가능한 저장 매체 | |
US20110145695A1 (en) | Web page conversion system | |
US20040167749A1 (en) | Interface and method for testing a website | |
US20130198333A1 (en) | Method and device for recording and reproducing web operation | |
JP4846832B2 (ja) | Webページの表示方法、計算機システム及びプログラム | |
JP5151696B2 (ja) | ユニフォームリソースロケータ情報を書き換えるプログラム | |
JPH11167584A (ja) | ページ遷移方法及びその実施装置並びにその処理プログラムとデータを記録した媒体 | |
JP4302057B2 (ja) | シームレス・ユビキタスシステム及び記録媒体並びにコンピュータの処理継続方法 | |
US20050198568A1 (en) | Table display switching method, text data conversion program, and tag program | |
CN102804177B (zh) | 提供自适应上下文模型框架的方法、装置 | |
JP5393242B2 (ja) | データ提供方法および中間サーバ装置 | |
US20100287292A1 (en) | Method, apparatus and computer program product for generating a content website in a data communications network | |
US20070073902A1 (en) | Information processor, information processing method and program | |
KR100798147B1 (ko) | 표준 항목 리포지터리 기반의 화면간 자동 데이터 전송시스템 및 그 방법 | |
JP2007272443A (ja) | 開発支援装置、開発支援方法および開発支援プログラム | |
KR20050086185A (ko) | 가전기기 네트워크 시스템 및 그 동작방법 | |
CN109117283A (zh) | 一种网络环境下遥控wps软件的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09773449 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12999962 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010519068 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09773449 Country of ref document: EP Kind code of ref document: A1 |