Abstract:
A method for implementing autonomic detection and repair of broken links in Web environments includes receiving a request for additional Web content in a server in response to a link present in an originating Web content held on a host server; determining the present state of the received link; wherein the server performs in response to the received link: returns the requested additional Web content to a user; returns a Web content not found notification to a user; returns a Web content has moved notification with a valid link; wherein the notifications are digitally signed by the server; wherein in response to the returned notifications, the user&#39;s browser sends the notifications to the host server; and wherein in response to the reception of the notifications the host server notifies a content manager of the link state, stores the notification in a database, and repairs the link.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates generally to computing networks, and more particularly, to a method for autonomic detection and repair of broken links in Web environments. 
     2. Description of the Related Art 
     The widespread introduction of the Internet or Web has made vast amounts of information available to people all over the world. The amount of information available over the Internet continues to grow at near exponential rates. Information on the Internet is presented to users as page views. The Internet pages are linked among each other from one site to another site to create a network. The network may be formed in a stationary manner, where the links are hard coded into the Web page, or the Web pages may be linked dynamically using several technologies, including general purpose scripting languages like PHP and Java. 
     SUMMARY OF THE INVENTION 
     A method for implementing autonomic detection and repair of broken links in Web environments, the method includes: receiving a request for additional Web content in a server in response to a link present in an originating Web content held on a host server; determining the present state of the received link; wherein the server performs at least one of the following in response to the received link: returning the requested additional Web content to a user; returning a Web content not found notification to a user; returning a Web content has moved notification with a valid link to a user; wherein the Web content not found notification and the Web content has moved notification are digitally signed by the server; wherein in response to the returned Web content not found or Web moved notifications, the user&#39;s browser sends the notifications to the host server; and wherein in response to the reception of the notifications the host server performs one or more of the following: notifies a content manager of the present state of the link, stores the notification in a database, and repairs the link. 
     Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention. For a better understanding of the invention with advantages and features, refer to the description and to the drawings. 
     TECHNICAL EFFECTS 
     As a result of the summarized invention, a solution is technically achieved for a method for autonomic detection and repair of broken links in Web environments. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The subject matter that is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other objects, features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which: 
         FIGS. 1A and 1B  are functional diagrams of an exemplary process for detecting and repairing broken Web links in an autonomic manner according to embodiments of the invention. 
         FIG. 2  illustrates an exemplary system for detecting and repairing broken Web links in an autonomic manner according to embodiments of the invention. 
     
    
    
     The detailed description explains the preferred embodiments of the invention, together with advantages and features, by way of example with reference to the drawings. 
     DETAILED DESCRIPTION 
     Internet Web sites (and therefore, Web pages) commonly undergo a life cycle. The Web site is created at some point in time, may undergo modifications and updates, and may be moved or even removed from service. A Web site&#39;s life cycle poses a potential problem to Internet users. Issues arise when a Web page refers (linked) to another Web page that has been moved or removed. In these instances, the parent Web page contains a link that is broken; that is, the parent Web page points to a non-valid Web page address. A non-valid Web page address raises several concerns including: a poor Internet user experience, a user perception of lack of quality in the originating parent Web page, and a resultant loss of user confidence in the Web site that leads to a reduction of user page accesses and a corresponding revenue deduction. 
     Currently available product solutions for detecting broken links in Web pages include products that check Web pages for broken links under a set schedule. The current products take Web pages and follow static links, and if the static links are broken, the broken links are shown or reported to the administrator of the parent Web page. However, the current product solutions have certain drawbacks associated therewith. First, dynamically created links cannot be checked using current available solutions. In addition, while existing solutions may report broken links, only a notification itself is issued to the Web site administrator, and no corrective measures are taken to repair or remove the broken link. 
     Embodiments of the invention provide an automatic method and system that is configured for Web servers to auto fix their broken links based on trusted relationships when possible. The method and system of embodiments of the invention goes beyond traditional autonomic computing, and aims at the information residing on server systems more than server systems themselves. Embodiments of the invention provide an automatic health solution for Web servers. 
     Embodiments of the invention provide a means for detecting broken Web links, while also attempting to correct the broken link in an autonomic manner. In embodiments of the invention, originating Web sites may take action based on the broken link notifications, which may be authoritative responses from the referred Web site. When a user downloads a Web page from a Web site, and follows a link to another Web page that returns an error (e.g., page not found, page moved, etc.), there is a plugin at the browser level that notifies the first (referring) Web site (the one with the link) of the broken link error. The error notification sent by the referred Web site is digitally signed for the referring Web site to ensure this notification has been not modified, and is coming directly from the referred Web site through the user&#39;s browser. When the error notification is received, the first Web site (the referring one) may automatically change or remove the link, or send an alert to the administrator of the referring Web site. 
     Embodiments of the invention may work on both static and dynamic links, and a moved (changed) or removed link (or site) may be automatically fixed, unlike existing solutions that only work with static links and only provide notification of broken links. In embodiments of the invention, automatic actions are carried out based on a trust relationship between Web servers (based on the servers digital signature), so that administrative tasks are reduced and enhanced. 
     Embodiments of the invention utilize the following system components to detect and automatically attempt to fix broken links for referenced Web sites. A notification agent running as a browser plugin is in charge of identifying errors originating from referenced Web sites, correlating the errors with links, and notifying the original Web site about the existing errors. An authoritative errors report subsystem resides on a Web site and is in charge of creating authoritative notifications about not found or moved Web pages. An error collection subsystem component resides on a Web site and is responsible for collecting errors reported from third parties and to take action in response to the reports. 
       FIGS. 1A and 1B  are functional diagrams of an exemplary process for detecting and repairing broken Web links in an autonomic manner according to embodiments of the invention. In  FIG. 1A  a user  100  requests (arrow  1 ) a Web page with a computing device  102  from a server A  104 . In response to the user&#39;s  100  request, the host server A  104  sends a Web page  108  (arrow  2 ) to the computing device  102 . The user  100  subsequently clicks on a link within the Web page  108 , which generates a page request (arrow  3 ) to server B  106 . The result of the page request to server B  106  may have the following outcomes: the desired page  110  is found and returned (arrow  4 ) to computing device  102  and no further action is taken; the desired page has not been found in the server B  106 , in which case the Server B returns a page not found notification  110  that is digitally signed by itself as the desired page is hosted on the server B  106 , and server B  106  is considered the trusted server for generating an answer; the desired page has been moved, and as in the previous case, server B  106  sends a notification  110  of that movement and the new link of the page, which may or may not be on the same site, and as mentioned before, this is also a trusted answer; or finally server B  106  itself is not found, in which case message  110  does not exist, and there is a browser timeout on the user&#39;s  100  computing device  102 . 
     Referring to  FIG. 1B , in case of an error (broken linl), a notification agent  120 , residing on the user&#39;s  100  browser on the computing device  102 , sends (arrow  5 ) a notification  118  to server A  104 , and depending on the error the following occurs: in the case of a page not found or page has been moved, the notification error  110  sent (arrow  4 ) by server B  106 , is sent without modification to server A  104 , in order to guarantee accountability; in the case where the user&#39;s  100  browser detects that server B  106  is not responding, a notification agent  120  sends (arrow  5 ) a notification message  118  to server A  104 , which is not digitally signed, and may be done without user interaction. 
     Continuing with  FIG. 1B , when server A  104  receives an error notification message  110  from user&#39;s  100  notification agent  120 , the error collection subsystem Web site  122  decides what to do with that error. The error collection subsystem Web site may perform one or more of the following: send a notification  114  of errors to a content manager  112 ; store the errors in a database  116  for further study; and fix the broken links based on digitally signed errors only. 
       FIG. 2  illustrates an exemplary system  200  for detecting and repairing broken Web links in an autonomic manner according to embodiments of the invention. The system  200  includes remote devices in the form of multimedia devices  202 , and desktop computer devices  204  configured with display capabilities  214  for implementing graphical user interface (GUI) aspects of the invention described herein. The multimedia devices  202  may be mobile communication and entertainment devices, such as cellular phones and mobile computing devices that are wirelessly connected to a network  208 . The multimedia devices  202  have video displays  218  and audio outputs  216  for implanting the GUI described herein. The network  208  may be any type of known network including a fixed wire line network, cable and fiber optics, over the air broadcasts, satellite  220 , local area network (LAN), wide area network (WAN), global network (e.g., Internet), intranet, etc. with data/Internet capabilities as represented by server  206 . Communication aspects of the network are represented by cellular base station  212  and antenna  210 . 
     Software for carrying out features of embodiments of the invention may be resident on the individual multimedia devices  202  and desktop computers  204 , or stored within the server  206  or cellular base station  210 . 
     The capabilities of the present invention can be implemented in software, firmware, hardware or some combination thereof. 
     As one example, one or more aspects of the present invention can be included in an article of manufacture (e.g., one or more computer program products) having, for instance, computer usable media. The media has embodied therein, for instance, computer readable program code means for providing and facilitating the capabilities of the present invention. The article of manufacture can be included as a part of a computer system or sold separately. 
     Additionally, at least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform the capabilities of the present invention can be provided. 
     The flow diagrams depicted herein are just examples. There may be many variations to these diagrams or the steps (or operations) described therein without departing from the spirit of the invention. For instance, the steps may be performed in a differing order, or steps may be added, deleted or modified. All of these variations are considered a part of the claimed invention. 
     While the preferred embodiments to the invention has been described, it will be understood that those skilled in the art, both now and in the future, may make various improvements and enhancements which fall within the scope of the claims which follow. These claims should be construed to maintain the proper protection for the invention first described.