Why am I getting a password dialog when loading the tree map?

Up until now, we have been using the software locally on our own machines with no problems. For the first time the other day, a colleague connected to the web application on my machine, ran through the data selection screens with no problem, but the first time the treemap was displayed, he was prompted for his username and password, and had to enter them again in order to see the treemap being displayed. It also mentioned something about a firewall if I remember rightly. Is there something that we need to configure to get round this?

Diagnosis

Two possible explanations for this.

First, the most likely is that you have access control enabled on your web server. That is, your web application is password-protected. Normally when you have the application configured in this way the first time you load the application a username/password field appears. However, if you are logged locally into a network and using Internet Explorer, the login may happen behind the scenes. What is happening here is that the Java VM needs to authenticate separately from the browser.

Three ways to test if this is the case. The easiest would be to load the application in a browser like Firefox which doesn't support automatic login. When you first go to the application you should get the login prompt, and then again the first time you load the tree map.

The next way would be to turn off automatic login in Internet Explorer. To do this:

  • Go to the Tools > Internet Options... menu item.
  • Select the Security tab
  • Clicking the Local Intranet Zone at the top
  • Press the Custom Level... button
  • Scroll to the bottom under the "User Authentication" group
  • Set the Logon property to "Prompt for user name and password"

The final way would be to check your web server settings directly. There are two places you would need to check. First, you check the properties for the web application. Normally access control is automatically enabled. If you want, you can turn this off and it should fix your problem. Alternatively, check the permissions on the directory your application is in (and possibly on all directories in the path leading to the URL for the data you are trying to retrieve), and make sure "Everyone" is in the list and has full access rights. (Note that these permissions should be the permissions in the Security tab, not the permissions set in the Sharing tab for file shares across the network).

The second possibility, less likely since you are talking about accessing everything from your local network, is that you are running through a proxy that has access control turned on.

Bottom line, the problem is that the Java virtual machine needs to authenticate separately from the browser. So whenever you are dealing with access control, whether at the network level like for a proxy server, or at the protocol level like for a web server, you will run into this problem.

Solution

For a solution to this problem that allows you to read data from an access-restricted web server, see the article How can I access secure data with getting a password dialog?,