views:

753

answers:

2

Running Eclipse 3.5 (= Galileo) under (K)Ubuntu Linux 9.10 . Corporate environment with HTTP proxies.

I have my Preferences | General | Network Connections all set up with HTTP, host, port, Authentication required and the credentials.

Eclipse is asking for my master password at Eclipse startup. So I've provided all the authorization I can think of but it seems to be not enough.

Proxy access is working OK (and without bugging me) for e.g. software updates and SVN updates from the Internet, but apparently fails for XML DTD validations. Eclipse pops up a dialog showing me my proxy host and asks for the proxy password. I would expect it to get this info from the proxy credentials I've set up. This happens quite often so it's very annoying to me. Is there anything I can do to alleviate this?

+1  A: 

I'm not sure why Eclipse is not using the proxy for DTD download. This sounds like a bug and you should open a defect (if one does not exist).

As a temporary workaround, you can add a user specified catalog contribution to Eclipse. First, download the DTD into a local folder. Then under Preferences->XML->XML Catalog select User Specified Entries and click Add and add your files.

zvikico
Thanks, I'll go hunt around the Eclipse fora for similar sounding bug reports. I hope I haven't mis-diagnosed the problem! Thanks also for the catalog idea. I may do that, at least for the short term, but I really wasn't looking forward to digging up all those files and downloading them and their dependencies.
Carl Smotricz
+2  A: 

Did you try accessing to the internet with Eclipse (for update or XML validation) through manual Active Provider instead of native?

alt text

Eclipse shouldn't prompt you for a password at the beginning, and XML validation should work.
The bug 82037 was solved a long time ago, and current development settings (like this MOTODEV Studio for Android Installation) recommend manual settings for proxy.

When you are on a network that requires proxy authentication, MOTODEV Studio updates will only occur if the proxy information (including username and password) are manually set for both HTTP and HTTPS connections (in Preferences, under General > Network Connections).
This also affects the download and install of the Android SDK during the installation process. If during installation you are asked if you want to change the connection preferences, do so. Change the active provider to "Manual" and provide host, port, user, and password values for both the HTTP and HTTPS schemes.

Just tested it: it does prompt me for my credentials... once. The first time I try to validate an xml file like the one below.
But after that, it does not ask me for those credentials again.

<!DOCTYPE catalog
  PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
         "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"&gt;
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"
         prefer="public">

  <group xml:base="http://www.oasis-open.org/docbook/xml/4.1.2/"&gt;
    <public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
            uri="docbookx.dtd"/>
    <public publicId="-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN"
            uri="dbnotnx.mod"/>
    <public publicId="-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN"
            uri="dbcentx.mod"/>
    <public publicId="-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN"
            uri="dbpoolx.mod"/>
    <public publicId="-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN"
            uri="dbhierx.mod"/>
    <public publicId="-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN"
            uri="dbgenent.mod"/>
    <public publicId="-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN"
            uri="calstblx.dtd"/>
  </group>

  <public publicId="-//OASIS//DTD DocBook MathML Module V1.0//EN"
      uri="http://www.oasis-open.org/docbook/xml/mathml/1.0/dbmathml.dtd"/&gt;

  <nextCatalog catalog="stylesheets.xml"/>

</catalog>

So basically, Eclipse needs your full internet credentials to be able to validate xml files at any times: proxy, port, username, password.
But when you must store the password, then a master password comes in play, and will be asked for at each Eclipse session (once):

The information stored in the secure storage (say, a CVS password) is encrypted with a "master" password. The master password is retrieved from a "password provider module". There are three password provider modules included in the SDK:

  • the default UI module in the org.eclipse.equinox.security.ui
  • the Windows-specific module in the org.eclipse.equinox.security.win32.x86
  • the Mac-specific module in the org.eclipse.equinox.security.macosx
VonC
I just checked, it's been on "manual" all along. I find it's not prompting me *all* the time, but not *never* either... it's a bit inconsistent. Seems to be once per session, but not *every* session. Well, if anything, the "manual" setting will allow me to minimize the number of stupid queries. Thanks for that in any case!
Carl Smotricz
@Carl: I experience one credential query per session. If the proxy setting is on manual with proxy, username and password filled, you really shouldn't have a bad user experience.
VonC
@VonC: Ah, we're approaching alignment here. I've entered the credentials for my proxy into Eclipse, and Eclipse has (successfully) bugged me for a "master password" to keep this information safe. I am asked for the master password at the beginning of each Eclipse session. Why do I need to also enter my Internet proxy credentials?
Carl Smotricz
@Carl: just completed my answer with password provider modules.
VonC
Lots of hard work and information. Not the "instant magic" solution I had hoped for but a good start. Thanks!
Carl Smotricz