1. Technical Field
The invention relates generally to portal pages, and more particularly to a solution for generating a portal page based on a data item.
2. Background Art
The use of portal pages and portlets have greatly enhanced a user's ability to customize content that is provided over computer networks such as the Internet. As known, a “portal page” is generated at a web “portal” server by portal server software (e.g., WebSphere Portal Server, which is commercially available from International Business Machines Corp. of Armonk, N.Y.). A portal page typically includes one or more sections or visual “portlets” that each contain certain content formatted according to a user's preferences. For example, a user could establish his/her own portal page that has portlets for news, weather and sports. When the portal page is requested by the user, the portal server obtains the desired content from the content provider associated with each portlet. Once obtained, the content is aggregated and uniform resource indicator (URI) references to advertisements and other supplemental content can be inserted into the markup language for display in the appropriate sections as a portal web page. This portal technology has lead to the explosion of personalized “home” pages for individual web users.
To date, the generation of a portal page requires extensive user interaction. For example, the user generally selects one or more desired portlets from a list of available portlets, manually places, sizes, and formats each selected portlet on a portal page, provides any data that may be necessary to obtain desired data for the portlet (e.g., a geographic area for weather information), etc. As a result, the content of a portal page is generally static and cannot be readily created and/or modified on the fly.
Many applications could benefit from the dynamic generation of a web page such as a portal page. For example, a user may monitor the health of a computer network. If a problem occurs on the network, the user may desire additional information such as information on the maintenance history of a problematic hardware item, a schematic of the network configuration, contact information for one or more individuals that can address the problem, etc. However, to date, portal pages have not been able to be readily used in these situations.
As a result, a need exists for an improved solution for generating a portal page. In particular, a need exists for a method, system and program product that select one or more portlets, and generate a portal page that includes the selected portlets based on a data item with no or a reduced amount of required user interaction.
The invention provides a method, system and program product for generating a portal page. Specifically, under the present invention, a user can select a data item (e.g., a problem network component) that is used to select one or more portlets. The portlets can then be used to generate a portal page, which can be displayed to the user. The portlets can be selected and/or the portal page can be generated automatically, without requiring any interaction from the user. Various additional factors can also be used to generate the portal page. For example, one or more attributes of the user and/or a user device can be used to select a portlet, prioritize portlets, and/or format the portal page. The data item can also be provided to a content provider for one or more of the selected portlets so that the content of the display area allocated to the corresponding portlet can be generated.
A first aspect of the invention provides a computerized method of generating a portal page, the method comprising: obtaining a data item; selecting at least one portlet based on the data item; and automatically generating the portal page, wherein the portal page includes the at least one portlet.
A second aspect of the invention provides a system for generating a portal page, the system comprising: a data system for obtaining a data item; a selection system for automatically selecting at least one portlet based on the data item; and a generation system for automatically generating the portal page, wherein the portal page includes the at least one portlet.
A third aspect of the invention provides a program product stored on a recordable medium for generating a portal page, which when executed comprises: program code for obtaining a data item; program code for selecting at least one portlet based on the data item; and program code for generating the portal page, wherein the portal page includes the at least one portlet.
A fourth aspect of the invention provides a system for deploying an application for generating a portal page, the system comprising: a computer infrastructure being operable to: obtain a data item; select at least one portlet based on the data item; and automatically generate the portal page, wherein the portal page includes the at least one portlet.
A fifth aspect of the invention provides computer software embodied in a propagated signal for generating a portal page, the computer software comprising instructions to cause a computer system to perform the following functions: obtain a data item; automatically select at least one portlet based on the data item; and generate the portal page, wherein the portal page includes the at least one portlet.
The illustrative aspects of the present invention are designed to solve the problems herein described and other problems not discussed, which are discoverable by a skilled artisan.
These and other features of this invention will be more readily understood from the following detailed description of the various aspects of the invention taken in conjunction with the accompanying drawings that depict various embodiments of the invention, in which:
It is noted that the drawings of the invention are not to scale. The drawings are intended to depict only typical aspects of the invention, and therefore should not be considered as limiting the scope of the invention. In the drawings, like numbering represents like elements between the drawings.
As indicated above, the invention provides a method, system and program product for generating a portal page. Specifically, under the present invention, a user can select a data item (e.g., a problem network component) that is used to select one or more portlets. The portlets can then be used to generate a portal page, which can be displayed to the user. The portlets can be selected and/or the portal page can be generated automatically, without requiring any interaction from the user. Various additional factors can also be used to generate the portal page. For example, one or more attributes of the user and/or a user device can be used to select a portlet, prioritize portlets, and/or format the portal page. The data item can also be provided to a content provider for one or more of the selected portlets so that the content of the display area allocated to the corresponding portlet can be generated.
Turning to the drawings,
Communications between user device 26, server 12, and/or content provider 40 can occur over one or more networks 25. To this extent, network 25 can comprise any type of communications link. For example, network 25 can comprise an addressable connection in a client-server (or server-server) environment that may utilize any combination of wireline and/or wireless transmission methods. In this instance, user device 26, server 12, and/or content provider 40 may utilize conventional network connectivity, such as Token Ring, Ethernet, WiFi or other conventional communications standards. Further, network 25 can comprise any type of network or combination of network types, including the Internet, a wide area network (WAN), a local area network (LAN), a virtual private network (VPN), etc. Where user device 26 communicates with server 12 via the Internet, connectivity could be provided by conventional TCP/IP sockets-based protocol, and user device 26 could utilize an Internet service provider to establish connectivity to server 12.
As shown, server 12 generally includes a processor 14, a memory 16, an input/output (I/O) interface 18, a bus 20, external I/O devices/resources 22, and a storage unit 24. Processor 14 may comprise a single processing unit, or be distributed across one or more processing units in one or more locations, e.g., on a client and server. Memory 16 may comprise any known type of data storage and/or transmission media, including magnetic media, optical media, random access memory (RAM), read-only memory (ROM), a data cache, a data object, etc. Storage unit 24 may comprise any type of data storage for providing storage for information necessary to carry out the invention as described below. As such, storage unit 24 may include one or more storage devices, such as a magnetic disk drive or an optical disk drive. Moreover, similar to processor 14, memory 16 and/or storage unit 24 may reside at a single physical location, comprising one or more types of data storage, or be distributed across a plurality of physical systems in various forms. Further, memory 16 and/or storage unit 24 can include data distributed across, for example, a LAN, WAN or a storage area network (SAN) (not shown).
I/O interface 18 may comprise any system for exchanging information to/from one or more external I/O devices 22. I/O devices 22 may comprise any known type of external I/O device for interacting with one or more computing devices and/or one or more individuals. Bus 20 provides a communication link between each of the components in server 12 and likewise may comprise any known type of transmission link, including electrical, optical, wireless, etc. In addition, although not shown, additional components, such as system software, may be incorporated into server 12.
Further, it is understood that server 12 comprises any type of computing device capable of communicating with one or more other computing devices (e.g., user device 26). Similarly, user device 26 and/or content provider 40 can comprise any type of computing device, such as a server, a desktop computer, a laptop, a handheld device, a mobile phone, a pager, a personal data assistant, etc. To this extent, user device 26 and/or content provider 40 will typically include the same elements as shown in server 12 (e.g., processor, memory, I/O interface, etc.). These have not been separately shown and discussed for brevity. It is understood, however, that if, for example, user device 26 is a handheld device or the like, a display could be contained within user device 26, and not as an external I/O device 22 as shown for server 12.
Server 12 is shown including various systems implemented as a computer program product and stored in memory 16. In general, data system 30 can obtain a data item, and selection system 32 can select one or more portlets 48 from set of available portlets 46 based on the data item. Generation system 34 can generate portal page 44 based on the selected portlets 48 and the data item. User system 36 can obtain user information based on user 28 and/or device information based on user device 26 that can be used in selecting portlets 48 and/or generating portal page 44. Presentation system 38 can provide the generated portal page 44 to user device 26. It is understood that some of the various systems shown in
In any event, as discussed above, the invention generates portal page 44 based on one or more data items. A data item can comprise any type of data, and in particular, data that can be displayed in a tabular form. For example, the data item could comprise data pertaining to an event that occurred, one or more properties of an object, etc. It is understood that data items can comprise a wide range of types and formats. In one embodiment described further below, each data item comprises data pertaining to an event that occurred on a computer network. It is understood that this example is only illustrative of the numerous applications and types of data for which the present invention can be applied and the invention is not limited to this particular application.
As previously noted, the one or more data items can be obtained by data system 30. The data item(s) can be provided by another computer system (e.g., user device 26), generated by a computer program, etc. In one embodiment, the data item(s) are selected by user 28 using a display interface that is displayed by user device 26. For example, the display interface can comprise a table of data.
When displayed by user device 26 (
Returning to
It is understood that the one or more attributes of data item 50A that are used to select portlet(s) from available portlets 46 can be combined in any logical manner. For example, selection system 32 could select each available portlet 46 having attributes of “resource=server and priority=critical” or attributes of “resource=server or priority=critical.” Further, the comparison and attributes can be formatted in any appropriate language. For example, when network 25 (
A portlet can be selected from set of available portlets 46 using additional information other than attributes of data item 50A (
Selection system 32 can provide selected portlets 48 to generation system 34, which can generate portal page 44 that includes one or more selected portlets 48.
In one embodiment, selection system 32 (
Once portal page 44 has been generated, generation system 34 (
In one embodiment of the invention, the selected portlet(s) 48 and portal page 44 are generated automatically, without any interaction from user 28 or another user. However, it is understood that some user interaction could be included when generating portal page 44. For example, selection system 32 could present user 28 with the set of selected portlets 48, and user 28 could add/remove portlets before portal page 44 is generated. Further, generation system 34 could allow user 28 to select a location and/or size of selected portlets 48 within portal page 44. To this extent, user 28 can be allowed to add, remove, and/or resize selected portlets 48 after portal page 44 has been automatically generated and provided to user device 26.
Still yet, it should be appreciated that the teachings of the present invention could be offered as a business method on a subscription or fee basis. For example, server 12 could be created, maintained, supported, and/or deployed by a service provider that offers the functions described herein for customers. That is, a service provider could offer to generate portal pages for a customer as described above. It is understood that the present invention can be realized in hardware, software, a propagated signal, or any combination thereof. Any kind of computer/server system(s)—or other apparatus adapted for carrying out the methods described herein—is suited. A typical combination of hardware and software could be a general purpose computer system with a computer program that, when loaded and executed, carries out the respective methods described herein. Alternatively, a specific use computer, containing specialized hardware for carrying out one or more of the functional tasks of the invention, could be utilized. The present invention can also be embedded in a computer program product or a propagated signal, which comprises all the respective features enabling the implementation of the methods described herein, and which—when loaded in a computer system—is able to carry out these methods. Computer program, propagated signal, software program, program, or software, in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
The foregoing description of various aspects of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and obviously, many modifications and variations are possible. Such modifications and variations that may be apparent to a person skilled in the art are intended to be included within the scope of the invention as defined by the accompanying claims.