Endless loop condition

Hi there,
Working on a client/server chat application. On the client side app, everytime I want to send a message I create a new Thread called "SendingThread". See below.
import java.io.*;
import java.net.*;
public class SendingThread extends Thread
  private Socket clientSocket;
  private String messageToSend;
  public SendingThread(Socket socket, String userName, String message)
       super("SendingThread: " + socket);
       clientSocket = socket;
       messageToSend = userName + Constants.MESSAGE_SEPERATOR + message;
  public void run()
       try
            PrintWriter writer = new PrintWriter(clientSocket.getOutputStream());
            writer.println(messageToSend);
            writer.flush();
            writer.close();
       catch(IOException ioe)
            System.out.println("Server must have closed connection");
            ioe.printStackTrace();
}As you can see the line writer.close() is important in regard to a Thread that is running on the server app called "ReceivingThread" (see below). In the ReceivingThread there is a line:
if((temp = input.readLine()) != null)
It blocks until I actually send a message to read in. This is expected. However, now I have a catch 22 situation. On the client side app, since I called writer.close(), this was necessary in order to get a null value during the readLine() call on the ReceivingThread on the server. The one line gets processed as expected. The stream is now closed and on the server side app, since this is true, the next iteration of the while loop attempts to read in another line but now it is alway null and thus I wind up with an endless loop condition. I introduced a "count" variable and a condition only so that the loop wouldn't get away too far. I was hoping it would block again, but it isn't. I believe the ReceivingThread is written correctly, but I need to somehow obtain a null value on the stream for message completion and also have the ReceivingThread block for the next message coming in.
Please advise,
Alan
public class ReceivingThread extends Thread
  private BufferedReader input;
  private MessageListener messageListener;
  private boolean keepListening = true;
  public ReceivingThread(MessageListener listener, Socket clientSocket)
       super("ReceivingThread: " + clientSocket);
       messageListener = listener;
       try
            clientSocket.setSoTimeout(50000);
            input = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
       catch(IOException ioe){ioe.printStackTrace();}
  public void run()
       StringBuffer messageBuffer = new StringBuffer();
       String temp = "";
       int messageCount = 0;
       int count = 0;
         //START:
         while(keepListening)
           while(true)
              try
                //In order to receive a null, the client app
                //has to close the stream!  Otherwise, this
                //will block indefinitely.
                System.out.println("blocking...");
                if((temp = input.readLine()) != null)
                   if(messageCount == 0)
                        messageBuffer.append(temp);
                        messageCount++;
                        System.out.println("temp: " + temp);
                   else
                     //When we use the readLine method, it strips
                     //off the newline character, so we need to
                     //put it back.
                     messageBuffer.append("\n" + temp);
                     System.out.println("temp: " + temp);
                else
                     break;
              catch(IOException ioe)
                   System.out.println("IOException...");
                   ioe.printStackTrace();
                   //break;
           }//end while
            //System.out.println("out of inner while loop...message:\n" + messageBuffer.toString());
            String message = messageBuffer.toString();
            System.out.println("message: " + message);
            StringTokenizer tokenizer = new StringTokenizer(message, Constants.MESSAGE_SEPERATOR);
            if(tokenizer.countTokens() == 2)
                 System.out.println("message received");
                 messageListener.messageReceived(tokenizer.nextToken(), tokenizer.nextToken());
                 //reset string variables
                 messageCount = 0;
                 temp = "";
                 messageBuffer.delete(0, messageBuffer.length());
                 message = "";
            else
                //System.out.println("checking disconnect string: " + message);
               if(message.equalsIgnoreCase(Constants.MESSAGE_SEPERATOR + Constants.DISCONNECT_STRING))
                      stopListening();
            count++;
            if(count > 3)break;
         }//end while
         try
           //System.out.println("closing ReceivingThread");
           input.close();        
         catch(IOException ioe){ioe.printStackTrace();}
  public void stopListening()
       keepListening = false;
}Edited by: ashiers on Nov 21, 2007 7:33 AM
Edited by: ashiers on Nov 21, 2007 7:34 AM

I'm not quite sure what you want to happen here. Here is what I would expect from the code you posted:
*1.* The client connects and sends its message to the server.
*2.* The server iterates through the line-reading loop until it exhausts the input (input.readLine() == null) and breaks out of the while (true) loop. The "temp: foo" messages are written to standard output accordingly.
*3.* The server reaches the message portion of the loop and writes the "message: foo" to standard output.
*4.* The server hits the end of the "while (keepListening)" loop and (assuming that you didn't receive a disconnect message) keepListening is still true. So it loops back around.
*5.* The first time through the while (true) loop, the input is still empty (of course). So you get a null.
*6.* Next, you get a "message: foo" output.
*7.* Repeat *4* through *6* until your computer hardware fails or you abort the program. (Except that you added that count thing, so it'll loop three times and then break.)
What are you trying to make the "keepListening" loop do? It doesn't seem like it should be there at all. At no point does this reading thread get the opportunity to read from any other socket. It almost seems like you want to spawn one ReceivingThread for each Socket you receive from the ServerSocket; if that's the case, the main thread (or whichever thread you have running that code and spawning the ReceivingThreads should be inside of the while (keepListening) loop.
Any help?

Similar Messages

  • How do I end an endless loop of Terms and Conditions pages?

    I'm trying to purchase an item from the store and am stuck in an endless loop on the new terms and condition page. I check the box and click agree- and the terms and condition page is reloaded. Please help me spend money on music. Thanks

    I tried going through all 60+ pages of agreement already on my phone, even scrolled all the way through in iTunes. Even tried some of the older fixes from the loops in iOS 5 and before. Anyone else have other ideas? Hopefully before reports of iPads and iPhones being smashed. Lol

  • Run SQL Agent Job in endless loop(When it's done, start over again)

    Hi All,
    There is an SQL Agent Job containing a complex Integration Services Package performing some ETL Jobs. It takes between 1 and 4 hours to run, depending on our data sources. The Job currently runs daily, without problems. What I would like to do now is to
    let it run in an endless loop, which means: When it's done, start over again.
    The scheduler doesn't seem to provide this option. I found that it would be possible to use the steps interface to go to step one after the last step is finished, but there's a problem using that method: If I need to stop the job, I would need to do that in
    a forceful way. However I would like to be able to let the job stop after the next iteration. How can I do that?
    Thanks in Advance...

    Seriously I cant think of a reason for continuosly running a step like this
    Do you mean you need to keep on polling db for something continuosly ?
    If thats the requirement there's no need of continuosly calling the step
    Instead of that you can include a loop with wait logic to keep on checking for your condition until it satisfies. You can WAITFOR clause for that
    see an example here where I've implemented similar logic in SSIS
    http://visakhm.blogspot.in/2011/12/simulating-file-watcher-task-in-ssis.html
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • Windows Update in Endless Loop of 'Installing updates" and "Undoing changes" on New Windows 8.1 Pro Install

    I am setting new Windows 8.1 Pro computers, and am installing Windows 8.1 Pro to bare drives.  Everything goes fine until Windows Update starts installing updates, and then the computer goes for hours installing updates, and then "We
    could not complete the updates Undoing changes".   It's an endless loop. It seems to be the same 38 updates.  This is a recent phenomenon.  I have not run into this until the last week or two on several new computer installs.
    Again these are brand new installs, so something is clearly wrong with the Windows updates.
    If anyone can please tell me how to avoid this, it would be much appreciated.
    Michael

    Hi Michael,
    "  This is a recent phenomenon"
    Have you made any modifications to the machines ?
    To resolve this issue ,running the built-in troubleshoot tool is a very good beginning .It will automatically diagnostic the windows update components and check the configurations for us .
     Control Panel\All Control Panel Items\Troubleshooting\Fix problems with Windows Update
    If there are antivirus software installed in these machines, please turn off them temporarily to have a check.
    The command line included in the link as S.Sengupta posted is very useful and convenient to repair the windows corrupted files .We can have a try .
    "sfc /scannow" ,"DISM.EXE /online /cleanup-image /restorehealth "
    We also can check the windowsupdate.log for more information to troubleshoot this issue .
     Run "windowsupdate.log"
    If you have trouble in analyzing the log ,please upload them to the OneDrive and paste the link here .
    Best regards

  • Is there a phone number to call Adobe.  I go around an endless loop pressing their contact info tabs?  Maybe someone at this sight can help. I am new to digital photo - I have been a B&W film photographer for many years. I have a problem with a Macbook Ai

    Is there a phone number to call Adobe.  I go around an endless loop pressing their contact info tabs?  Maybe someone at this sight can help. I am new to digital photo - I have been a B&W film photographer for many years. I have a problem with a Macbook Air.  It was working fine - I was using LR and a message came on the screen that said something like the memory was dangerously low.  I stopped and tried to delete LR files.  I couldn't do it.  I closed the program and tried reopening and got the message that there is not enough memory available to open LR.  I contacted Apple.  They spent a half hour on the phone with me and eventually told me they didn't know how to help. The tech said that LR had gobbled up all the memory and said I should contact Adobe and ask where and how my photo files are stored and to delete them.  I have several back-ups.  Thanks - Arthur

    This sort of error message only comes up for Lightroom when your hard disk is full. Indeed this has nothing to do with internal memory as that will be intelligently be dealt with. If you have a mac Book Air that is not so surprising as the cheapest versions come with very small hard disks and if you shoot raw with any recent camera, you'll fill up your hard disk very quickly and you can probably only store a few months of pictures if you are a typical photographer. So the bottom line is that you need to create some room on your hard disk. You should move some of your originals to an external hard disk. You can also delete some of your backup copies of your catalog file that Lightroom automatically generates every few days and that quickly gobble up hard disk space. So first figure out how full your hard disk is. To see that, go to the apple menu, hit -> About this Mac -> More info->Storage. You should see your internal hard disk on top and you'll find that it is almost entirely full with photos. Now find your Lightroom catalog file using Finder. It is usually in a folder in the Pictures folder in your home directory. You should see a Lightroom 5 Catalog.lrcat file, a previews file and a folder called backups. Inside the backups folder, you'll find a lot of subfolders. They have names that show the dates the backups were created. If you have backups of your entire hard disk, you can delete these backups when they are older than a few months. I usually only keep the last 4 around. Just drag the folders into the trash can on the dock on the bottom of your screen and empty the trash. This will probably free up enough space that Lightroom will already run again. Now start thinking about where you will want to store older images. If you have a good USB3 or Thunderbolt hard disk that is probably the best option. There is a video here by Adobe that has some instructions on how to do this: Is Your Hard Drive Full? Here’s How to Move Images to Another Drive in Lightroom. « Julieanne Kost's Blog If that doesn't work because you don't have enough hard drive space to run Lightroom yet, here is another set of instructions to move your files using the finder to the other hard disk: How do I move only my photos to another hard drive, leaving the catalog where it is? - The Lightroom Queen. If you follow that, as soon as you confirm all your images are on the new hard disk, you can delete them from your internal one. She is not so clear about that part but if you don't delete the originals that you moved off you don't free up space. You should move the folder structure over to the new hard disk and then reconnect the folders in Lightroom. That should make it refind all your images.
    That said, if you are uncomfortable with the computer in itself, your best bet is to find a local photography club. There is invariably a Lightroom savvy person in there that could help you move your files. That might be your best bet if you are uncomfortable moving these yourself. A general mac savvy person like you would find at an Apple store or so generally will not be able to help you with this except when they are photographers themselves and know Lightroom. You might get lucky with that.

  • Pop up states i'm being directed to a phishing site and to call "this" number, after I click on OK it just keeps popping up again and will not let me out of an endless loop

    I am in an endless loop on my other iMac computer.  I happened upon a page where it said "phishing site ahead" and then a pop up comes on screen telling me to call a certain number and then I click okay and of course do not call and it will not let me out of this endless loop.  Shut down computer, quit Safari, but when I reopen Safari it still takes me to that same page and will not let me out or use any menu items or toolbar items. Just the same little popup box telling me to call a certain number with an OK button and I can't go anywhere or do anything on Safari. What can I do?

    Also I copied this from my other computer web page:
    Reported Phishing website ahead.  Your network ha been monitored.  Your network has been compromised due to Browser hijacking.The browser hijacking software may redirect you towards phishing websites that try to access your Login Password details.  To fix this browser redirection issue we recommend you ask for instant help.  Help Line 1 877 899 1824.
    Then another smaller popup window pops up
    http://www.pcassists.info
    Security Error
    Call Helpline 1877 899 1824
    So this is what I was talking  about, and the small popup window plus the larger  Window stating "Reported Phishing website ahead" will not go away and I cannot use Safari anymore even after I shut down my computer, disconnected it, and then signed on again and reopened Safari, it still takes me to that page and I cannot get out of it.
    PLEASE HELP!!!!!!!!

  • Mac 10.6.8 ical "server responded with an error" endless loop

    I get an endless loop. "The Server Responded with an Error "--click OK. Next window "The Server Respnded with an Error"--whether click "go offline" or "return to server" takes me back to first window, ad infinitum. Can't change anything on calendar; cannot access ical Preferences. basically cannot do anything except Force Quit, whether logged into my account or my wife's [registered to my wife's yahoo! email].
    Also cannot synch calendars now between imac, iphone, and ipad like we could in beginning. Using 10.6.8 because some of my peripherals not compatible with later.
    This problem just started a couple of days ago [the server problem freezing the calendar, it hasn't been working properly for awhile and the calendar synch was lost when a friend upgraded the iphone software.]
    What can I do to restore 1] the functionality of the ical? and 2] synching the imac, ipad, and iphone icals?

    I read another response to a similar question posted a couple of years ago. I turned off the Wifi, restarted iCal offline, and that eliminated the message. However, as soon as I turned on the Wifi the message again appeared, the app froze requiring a Force Quit, and the game is still afoot. NO SOLUTIONS ANYONE?

  • HT204053 I need to use an existing ID (email address) on a new iPhone. It tells me "choose another ID - that one is in use," with the option to "use existing ID," however, it is an endless loop, referring me only to change my password on the existing ID.

    I need to use an existing ID (email address) on a new iPhone. It tells me "choose another ID - that one is in use," with the option to "use existing ID," however, it is an endless loop, referring me only to change my password on the existing ID.
    How do I enable my new device with an existing ID - I do not need to change the password for the millionth time!
    None of the FAQs (or the Community choices below) address new devices, they are all about APPS and iCloud stuff.

    If it is an existing iCloud ID, you should be able to just go to Settings>iCloud and sign in with it.

  • Is there a way to create an endless loop of one playlist?

    I have a playlist where I would like to create an endless loop. Is there a way to accomplish this task? Software Version 1.2.
    Someplace I read about going into Settings and down to "repeat" and selecting "all." The settings on my iPod Nano does not show "repeat" in the Settings.

    Start your playlist and tap on the screen while the song is playing. Tap on the repeat symbol showing on the screen then select the repeat list symbol on the left hand side.
    http://manuals.info.apple.com/en_US/iPod_nano_6thgen_User_Guide.pdf
    Message was edited by: deggie

  • Premiere Elements 12 endless loop of "Sign in Required' popup

    I received a license  (Volume Licensing serial number) for Adobe Photoshop and installed. Whenever I try to use the editor, I get in an endless loop of "Sign in Required' popup. I sign in with my Adobe ID, and then nothing happens.  Chatted with Adobe with no resolution.  Our IT folks thought it might be a firewall issue, but it is not.  Been struggling with this for over a month, and need to use the product.
    Any ideas on how to resolve this?
    Thanks.
    Liz

    Liz
    Had lots of problems with Premiere Elements 12/12.1 and Sign In after an uninstall reinstall.
    See if any of what worked for me works for you also.
    http://www.atr935.blogspot.com/2014/04/pe12-sign-in-failure-connect-to.html
    ATR Premiere Elements Troubleshooting: PE12: Premiere Elements 12 Editor Will Not Open
    We will be watching for your results.
    ATR
    Add On...did everyone so far go through looking at the problem with and without the antivirus as well as firewall(s) disabled?

  • I have a macbook pro 13" 2011, When my computer boots I get code on my boot up screen and then my computer shuts off and then restarts. Its an endless loop, as my computer tries to boot up.

    I have a Macbook Pro 13", that was purchased in 2010-2011. So randomly yesterday, when I boot up my computer I got to the boot screen, then code popped up on my screen. ** I have attached an image of the code below.** But after the code pops up, my computer shuts down, and tries to boot up again. This is an endless loop and doesn't get passed the boot screen. The code shows up everytime.
    I personally believe this might be a software issue and not a hardware. Please feel free to shoot out any ideas or a translation of what the code is referring to.
    THINGS I HAVE ALREADY DONE:
    - Reset the PRAM by holding CMD+Option+P+R
    - Gone into Safemode and tired to verify the Harddrive.
    - Please don't comment saying, "take out the battery." , "hold the power button for.." , None of that sh#* works.
    Below is three different links for the same image. (just in case, **** breaks).
    [IMG]http://i57.tinypic.com/2z82stl.jpg[/IMG]
    <a href="http://tinypic.com?ref=2z82stl" target="_blank"><img src="http://i57.tinypic.com/2z82stl.jpg" border="0" alt="Image and video hosting by TinyPic"></a>
    http://tinypic.com/view.php?pic=2z82stl&s=8#.U0LJidy4nFI

    What happens if you boot holding the command S keys down?
    If it stays running in single user mode
    try the command
    fsck -fy
    You could try holding the option key on bootup, to see if presents you with a startup disk however
    It looks as if you need to reistall the OS.

  • BPM: Loop condition not coming outside of the loop

    Hi Experts,
    I am working on BPM. In the loop I am giving the condition as
    (ForSyncResponse./p1:MT_Test_JDBC_Req_response/row_response/Row/indicator u2260 9)
    If indication not equal to the 9(Integer) then it should come out of the loop otherwise loop needs to be repeat( Iam getting this data from the database through Send Synch step). When ever iam sending data other than 9 then it repeating if I send 9 also even though the loop condition is not satisfying and its keep on repeating the loop. Can you please let me know what might be ther problem.
    Thanks & Regards,
    Purushotham

    Hi Prasadh,
             I am able to give thie "Create the following expression in the expression editor:
    /MT_Test_JDBC_Req_response/row_responseindicator != 9"  expression
               How can i give the second"(/MT_Test_JDBC_Req_response/row_responseindicator != 9 EX)" condition??
              I tried with giving the AND but it is not allowing me to enter the 9.
         Can you please let me know.
    Thanks & Regards,
    Purushotham

  • BPM Loop Condition ?

    We have a output xml in BPM as shown below :
    <?xml version="1.0" encoding="utf-8" ?>
    <Product>
    <ProductRecord>
      <ProductID schemeID="MaterialNumber" schemeAgencyID="MDM30_FILEADAPTER01" schemeAgencySchemeAgencyID="ZZZ">KRANTI_MAT1</ProductID>
      <ProductID schemeID="ProductGUID" schemeAgencyID="QM3_002" schemeAgencySchemeAgencyID="ZZZ">416452CBD0746B23E10000000A1553FC</ProductID>
      <ProductTypeCode>01</ProductTypeCode>
    <Category>
      <CategoryID schemeID="ProductCategoryGUID" schemeAgencyID="QM3_002" schemeAgencySchemeAgencyID="ZZZ">4162C19D0C250E78E10000000A1553FC</CategoryID>
      <CategoryID schemeID="StandardCategoryID" schemeAgencyID="MDM30_FILEADAPTER01" schemeAgencySchemeAgencyID="ZZZ">MATCLASS2_ROOT</CategoryID>
      </Category>
      </ProductRecord>
      </Product>
    The product id tag is 1..undbounded.
    We want a loop condition in BPM wherein as soon as  we get a line of ProductID with   schemeID="ProductGUID" then we want to exit the loop.
    Can anybody help us with the loop condition.
    Regards,
    Anurag

    Hi Prasadh,
             I am able to give thie "Create the following expression in the expression editor:
    /MT_Test_JDBC_Req_response/row_responseindicator != 9"  expression
               How can i give the second"(/MT_Test_JDBC_Req_response/row_responseindicator != 9 EX)" condition??
              I tried with giving the AND but it is not allowing me to enter the 9.
         Can you please let me know.
    Thanks & Regards,
    Purushotham

  • Developing: Endless loop in Adobe Bridge with and Adobe Drive CMIS Connector

    Hi
    Currently I’m implementing a CMIS-Server for the dam system of my company, using the apache chemistry framework. One of the main requirements is that adobe drive works with it.
    At the moment I implemented only the navigation services (getChildren, getObject, …) and the repository services and test them against adobe drive. It’s already possible to navigate through folders and read assets with ad4 and the finder. So 3 days ago I installed adobe bridge (CS6) and test my server again.
    My test environment is very easy.
    root(1 object)->test1(0 objects; empty)
    First I’m opening my repository with adobe drive and then I switch to bridge and connect it. Bridge shows me the folder test1 with no errors. So I double-click it and now bridge is in an endless loop. The notification switch between ‘Keine anzuzeigenden Elemente’(No elements to show) and ‘Einen Moment bitte, die Suche läuft …’(Searching, please wait …). This only happens in bridge. When I open the folder with the finder it just works, without the loop.
    So I logged all requests, which were send by adobe drive, and get this list.
    Connecting with adobe drive
    getRepositoryInfos
    getTypeChildren (null) -> all basetypes
    getTypeDecendants (cmis:document)
    getTypeChildren (null) -> all basetypes (Why two times?)
    getTypeDecendants (cmis:document) (Why two times?)
    getRepositoryInfos (Why two times?)
    getObjectByPath (/.hidden)
    getObjectByPath (/.hidden)
    getObjectByPath (/.hidden) (Why so often?)
    getObjectByPath (/DCIM)
    getObjectByPath (/mach_kernel)
    getObjectByPath (/.Spotlight-V100)
    getObjectByPath (/.metadata_never_index)
    getObjectByPath (/.metadata_never_index_unless_rootfs)
    getObjectByPath (/.metadata_never_index)
    getObjectByPath (/mach_kernel)
    getObjectByPath (/.metadata_never_index_unless_rootfs)
    getChildren (cmis:folder,0) (rootfolder) returning only one element (test1)
    getObjectParents(cmis:folder,127) (test1) returning the rootfolder
    getObjectByPath (/.hidden)
    getObjectByPath (/mach_kernel) …
    Open the Cmis repository in bridge and doubleclick the repository
    getChildren (cmis:folder,0) (rootfolder) returning only one element (test1)
    getObjectParents(cmis:folder,127) (test1) returning the rootfolder
    Then I double click the test1 folder
    getObject(cmis:folder,127)(test1)
    getChildren(cmis:folder,127) -> empty list
    … (endless loop)
    I already checked getObject and getChildren against a reference implementation (FileShare Repository of apache Chemistry) and it returns exactly the same structure. Only the name and the timestamps are different. So my second though was to check the repository capabilities and as well they are both equal. Now I’m a little bit desperate because I spend already 3 days in try and error bugfixing but nothing worked. So here are my questions.
    Is there a logfile for bridge because I thing this refreshing happens after an exception. I already checked the adobe drive log and it contains only asset not found errors for (e.g mach_kernel …).
    In which circumstances does bridge reloads a folder?
    Debugging of adobe drive: I already read http://forums.adobe.com/message/3928595 but it doesn’t work in AD4 any more, I only get info/error/fatal messages.(I changed the log4j config files in AD4ServiceManager.) Does something changed or did I forget something?
    Why does AD4 make 2 or more times the exact same request? (Look table above).
    I hope my English is good enough to understand.
    Thanks

    After two months I'm a little bit smarter so I can answer some of my question by my own.
    No there is no logfile for bridge, but I was able to debug the scriptcode from the ad plugin, which is installed in bridge.
    If an error occures in the plugin
    I was able to decompile the cmis connector. That helps a lot  when ad logs with weird exceptions.
    Because AD maps the actions of the filebrowser(finder,explorer) to cmis and this one does sometimes the exact action two or more times.
    Unfortunately is wasn't able to fix my main problem, but I found a workaround to use cmis in bridge. I deactivated the ad plugin in bridge and after that action, bride display the cmis volume as normal volume. Sadly some actions like to manage relationships etc. are with this workaround not usable but for me this is alright.

  • Firefox goes into an endless loop with blue circular cursor at various times when trying to load a file.

    Firefox hangs up at times when I try to download a file. The hangup is evidenced by the Windows 7 spinning blue cursor going into an endless loop. The only way out if it is with "ctrl/alt/del". Sometimes I can cancel, and Firefox will be normal again, and other times I have to go on into "Taskmaster" and stop the process.

    Similar problem. An Email includes a URL, clicking on brings up a message including "click here" to link to an additional site.
    This bring up either the Windows7 rotating cursor and/or the message "stopped".
    I copied the "click here" address (another URL) and pasted it into the IE8 browser, which succeeded in displaying the information. It worked, to my surprise but it is clumsy. Do I have to remove Firefox (3.6.6) and use only IE8?
    Another system on my home network, using XP Home SP2, and FF 3.6.4 works fine in the same circumstances

Maybe you are looking for