Modify

Opened 3 weeks ago

Last modified 5 days ago

#15609 needinfo defect

Accessing tiles from the download dialog behind a proxy

Reported by: bxl-forever Owned by: bxl-forever
Priority: normal Milestone:
Component: Core Version:
Keywords: template_report javabug proxy Cc:

Description

What steps will reproduce the problem?

  1. Use a proxy
  2. File > Download data
  3. Scroll the area a bit so that JOSM will download new tiles

What is the expected result?

The tiles should be downloaded normally when the map scrolls.

What happens instead?

Several warning dialogs (apparently equal to the number of new tiles that are loaded).
But the tiles are loaded properly and JOSM works normally after that.
It is just considerably annoying because the download window is almost unusable.
I did not encounter this problem with former versions, it appeared with the upgrade to version 13170.
When I use the same machine with a connection where I don’t have to use a proxy, version 13170 works fine.

Please provide any additional information below. Attach a screenshot if possible.

URL:http://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2017-11-26 14:31:59 +0100 (Sun, 26 Nov 2017)
Build-Date:2017-11-26 13:34:54
Revision:13170
Relative:URL: ^/trunk

Identification: JOSM/1.5 (13170 en) Linux Arch Linux
Memory Usage: 462 MB / 1751 MB (252 MB allocated, but free)
Java version: 1.8.0_144-b01, Oracle Corporation, OpenJDK 64-Bit Server VM
Screen: :0.0 1366x768
Maximum Screen Size: 1366x768
VM arguments: [-Djosm.restart=true]

Plugins:
+ measurement (33760)
+ pt_assistant (33860)

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
- E: Handled by bug report queue: java.util.NoSuchElementException


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: TMS-downloader-1 (41)
java.util.NoSuchElementException
	at java.util.StringTokenizer.nextToken(StringTokenizer.java:349)
	at sun.net.www.protocol.http.HttpURLConnection.doTunneling(HttpURLConnection.java:2054)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:183)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:153)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:132)
	at org.openstreetmap.josm.tools.HttpClient.connect(HttpClient.java:78)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.isCacheValidUsingHead(JCSCachedTileLoaderJob.java:470)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.loadObject(JCSCachedTileLoaderJob.java:311)
	at org.openstreetmap.josm.data.cache.JCSCachedTileLoaderJob.run(JCSCachedTileLoaderJob.java:236)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

Attachments (0)

Change History (5)

comment:1 Changed 3 weeks ago by Don-vip

Keywords: javabug proxy added
Owner: changed from team to bxl-forever
Status: newneedinfo

Can you please try to update to latest version of Java 8? (8u152)

comment:2 Changed 2 weeks ago by Don-vip

In 13179/josm:

see #15609 - catch NoSuchElementException when performing HTTP call

comment:3 Changed 2 weeks ago by Don-vip

Ticket #13637 has been marked as a duplicate of this ticket.

comment:4 Changed 2 weeks ago by Don-vip

I setup a proxy (squid) and can't reproduce the issue. Can you please tell me:

  • what is your proxy software
  • if you're using SOCKS or classic proxy
  • if it requires a login/password
  • how did you set up OSM authentication (OAuth or basic auth)

The error happens here:

                // send the "CONNECT" request to establish a tunnel
                // through proxy server
                sendCONNECTRequest();
                responses.reset();

                // There is no need to track progress in HTTP Tunneling,
                // so ProgressSource is null.
                http.parseHTTP(responses, null, this);

                /* Log the response to the CONNECT */
                if (logger.isLoggable(PlatformLogger.Level.FINE)) {
                    logger.fine(responses.toString());
                }

                if (responses.filterNTLMResponses("Proxy-Authenticate")) {
                    if (logger.isLoggable(PlatformLogger.Level.FINE)) {
                        logger.fine(">>>> Headers are filtered");
                        logger.fine(responses.toString());
                    }
                }

                statusLine = responses.getValue(0);
                StringTokenizer st = new StringTokenizer(statusLine);
                st.nextToken();
                respCode = Integer.parseInt(st.nextToken().trim()); << NoSuchElementException

comment:5 Changed 5 days ago by bxl-forever

@Don-vip, thanks for helping.

When the condition occurs, I use no specific proxy software, just the manual proxy configuration in JOSM to a proxy on my local network (this is the company proxy). Authentification with username and password. And connexion to the OSM server through OAuth.
In fact, the main annoyance is to have this avalanche of pop-up windows—upon opening the download dialog and each time I scroll the map within that dialog to get new tiles—because once I have downloaded the tiles I can work normally in JOSM and upload changesets.

The reason I suspect it was linked to the proxy is because when I use a direct connexion without a proxy—when I am not on my company network—it works perfectly.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as needinfo The owner will remain bxl-forever.
as The resolution will be set.
to The owner will be changed from bxl-forever to the specified user.
to The owner will be changed from bxl-forever to the specified user.
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from bxl-forever to anonymous.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.