[ https://issues.apache.org/jira/browse/MJAVADOC-565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16770117#comment-16770117 ]
Michael Osipov commented on MJAVADOC-565: ----------------------------------------- Bill, I have checked PR now and I am still not happy, but this isn't related to your PR in particular. These days people assume that an HTTP proxy will also handle HTTPS via {{CONNECT}}. I highly doubt that folks will configure a proxy explicitly for {{https}}, in the case they do, our code is broken becaue {{Settings#getActiveProxy()}} will not take that into consideration. I know there is no perfect solution, but I would like to take this approach: * Iterate over all proxies and collect active (first) ones for HTTP and HTTPS * If HTTPS is availabe, use it for HTTPS as well as for non proxy hosts, but if and only if proxy for HTTP is not available * Else use HTTP proxy for both HTTP and HTTPS Does this make sense? The only other protocol {{URLConnection}} supports is FTP, but I think no one will use that protocol for Javadoc. > web proxy not configured for https > ---------------------------------- > > Key: MJAVADOC-565 > URL: https://issues.apache.org/jira/browse/MJAVADOC-565 > Project: Maven Javadoc Plugin > Issue Type: Bug > Affects Versions: 3.0.1 > Reporter: Bill Shannon > Assignee: Michael Osipov > Priority: Major > > There seems to be some disagreement about how to configure web proxy servers. > Maven seems to think that the "protocol" element specifies the protocol to > use when talking to the web proxy server, and thus allows only one proxy to > be configured in settings.xml. (Or rather, only the first configured proxy > is used.) That's not the way proxy servers work. > The JDK configures web proxy servers based on the protocol that's being > proxied. > For example, when using a <link> to access the JDK javadocs, https is needed. > The maven-javadoc-plugin invokes the external javadoc command with these > arguments: > {{-J-Dhttp.proxySet=true -J-Dhttp.proxyHost=<proxy-host> > -J-Dhttp.proxyPort=<proxy-port>}} > That only configures the proxy for the http protocol, not the https protocol, > and thus the linked resource can not be accessed. To configure the proxy to > be used for the https protocol, the following arguments are needed: > {{-J-Dhttps.proxySet=true -J-Dhttps.proxyHost=<proxy-host> > -J-Dhttps.proxyPort=<proxy-port>}} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)