Modify

Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#7818 closed defect (fixed)

problem with plugin list

Reported by: skyper Owned by: team
Priority: major Milestone:
Component: Plugin Version: latest
Keywords: plugin list Cc: bastiK, stoecker

Description

I got following exception downloading/updating the plugin list.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-06-26 01:31:11
Last Changed Author: Don-vip
Revision: 5303
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-06-25 22:59:59 +0200 (Mon, 25 Jun 2012)
Last Changed Rev: 5303

Info: Missing preference file '$HOME/.josm/preferences.xml'. Creating a default preference file.
GET http://api.openstreetmap.org/api/capabilities... OK
Failed to parse plugin list document from site 'http://josm.openstreetmap.de/plugin%<?plugins=>'. Skipping site. Exception was: org.openstreetmap.josm.plugins.PluginListParseException: Failed to create plugin information from manifest for plugin 'routing.jar'
org.openstreetmap.josm.plugins.PluginListParseException: Failed to create plugin information from manifest for plugin 'routing.jar'
	at org.openstreetmap.josm.plugins.PluginListParser.createInfo(PluginListParser.java:44)
	at org.openstreetmap.josm.plugins.PluginListParser.parse(PluginListParser.java:87)
	at org.openstreetmap.josm.plugins.ReadRemotePluginInformationTask.parsePluginListDocument(ReadRemotePluginInformationTask.java:317)
	at org.openstreetmap.josm.plugins.ReadRemotePluginInformationTask.realRun(ReadRemotePluginInformationTask.java:363)
	at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:82)
	at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:145)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:679)
Caused by: org.openstreetmap.josm.plugins.PluginException: An error occurred in plugin routing
	at org.openstreetmap.josm.plugins.PluginInformation.<init>(PluginInformation.java:130)
	at org.openstreetmap.josm.plugins.PluginListParser.createInfo(PluginListParser.java:36)
	... 11 more
Caused by: java.io.IOException: line too long
	at java.util.jar.Attributes.read(Attributes.java:379)
	at java.util.jar.Manifest.read(Manifest.java:199)
	at org.openstreetmap.josm.plugins.PluginInformation.<init>(PluginInformation.java:124)
	... 12 more
Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-06-26 01:31:11
Last Changed Author: Don-vip
Revision: 5303
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-06-25 22:59:59 +0200 (Mon, 25 Jun 2012)
Last Changed Rev: 5303

Identification: JOSM/1.5 (5303 en)
Memory Usage: 79 MB / 592 MB (17 MB allocated, but free)
Java version: 1.6.0_24, Sun Microsystems Inc., OpenJDK 64-Bit Server VM
Operating system: Linux

Attachments (1)

site-josm.openstreetmap.de-_plugin.7z (61.8 KB) - added by rickmastfan67 11 years ago.

Download all attachments as: .zip

Change History (20)

comment:1 Changed 11 years ago by rickmastfan67

This is also happening in Windows 7 x64. After I updated the plugins list, it's now making JOSM take 3x longer to start up because of crashing on the plugin list file during load at start up.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-06-26 01:31:11
Last Changed Author: Don-vip
Revision: 5303
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-06-25 22:59:59 +0200 (Mon, 25 Jun 2012)
Last Changed Rev: 5303

Identification: JOSM/1.5 (5303 en)
Memory Usage: 154 MB / 2730 MB (81 MB allocated, but free)
Java version: 1.7.0_05, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Operating system: Windows 7

comment:2 Changed 11 years ago by bastiK

Cannot reproduce. I'm not sure, what causes these errors in the first place, but we should make sure, that when an exception occurs, we throw away the cache file and download again. I think it currently chokes on the same broken file over and over again.

comment:3 Changed 11 years ago by rickmastfan67

If you had happened to download the "routing.jar" already downloaded, it will still show up in the plugin list if you see this error list in the CL.

However, if you delete the "routing.jar" file and then reload the plugin list, that plugin will now no longer show up.

So, I don't know what could be causing this problem. I'll attach the "site-josm.openstreetmap.de-_plugin.txt" file in a sec in case you need it to test this.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-06-26 01:31:11
Last Changed Author: Don-vip
Revision: 5303
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-06-25 22:59:59 +0200 (Mon, 25 Jun 2012)
Last Changed Rev: 5303

Warning: Failed to scan file 'site-josm.openstreetmap.de-_plugin.txt' for plugin information. Skipping.
org.openstreetmap.josm.plugins.PluginListParseException: Failed to create plugin information from manifest for plugin 'routing.jar'
        at org.openstreetmap.josm.plugins.PluginListParser.createInfo(PluginList
Parser.java:44)
        at org.openstreetmap.josm.plugins.PluginListParser.parse(PluginListParse
r.java:87)
        at org.openstreetmap.josm.plugins.ReadLocalPluginInformationTask.process
LocalPluginInformationFile(ReadLocalPluginInformationTask.java:184)
        at org.openstreetmap.josm.plugins.ReadLocalPluginInformationTask.scanSit
eCacheFiles(ReadLocalPluginInformationTask.java:99)
        at org.openstreetmap.josm.plugins.ReadLocalPluginInformationTask.scanLoc
alPluginRepository(ReadLocalPluginInformationTask.java:171)
        at org.openstreetmap.josm.plugins.ReadLocalPluginInformationTask.realRun
(ReadLocalPluginInformationTask.java:226)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRun
nable.java:82)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.
java:145)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: org.openstreetmap.josm.plugins.PluginException: An error occurred in
plugin routing
        at org.openstreetmap.josm.plugins.PluginInformation.<init>(PluginInforma
tion.java:130)
        at org.openstreetmap.josm.plugins.PluginListParser.createInfo(PluginList
Parser.java:36)
        ... 13 more
Caused by: java.io.IOException: line too long
        at java.util.jar.Attributes.read(Unknown Source)
        at java.util.jar.Manifest.read(Unknown Source)
        at org.openstreetmap.josm.plugins.PluginInformation.<init>(PluginInforma
tion.java:124)
        ... 14 more
Could not load tool definition dumbutils/replacegeometry
loading plugin 'undelete' (version 28416)
loading plugin 'openstreetbugs' (version 28412)
loading plugin 'mapdust' (version 28412)
loading plugin 'reverter' (version 28412)
RemoteControl: adding command "revert_changeset" (handled by RevertChangesetHand
ler)
loading plugin 'buildings_tools' (version 28412)
loading plugin 'OpeningHoursEditor' (version 28412)
loading plugin 'utilsplugin2' (version 28412)
loading plugin 'licensechange' (version 28412)
loading plugin 'turnrestrictions' (version 28412)
loading plugin 'measurement' (version 28412)
RemoteControl::Accepting connections on port 8111

Changed 11 years ago by rickmastfan67

comment:4 in reply to:  2 Changed 11 years ago by skyper

Replying to bastiK:

Cannot reproduce. I'm not sure, what causes these errors in the first place, but we should make sure, that when an exception occurs, we throw away the cache file and download again. I think it currently chokes on the same broken file over and over again.

Caching is indeed a problem but manually deleting "site-josm.openstreetmap.de-_plugin.txt" does not help and I also get it with an empty pref-dir (see first post).

I did test on a different machine but the result is the same. I tried it with r5300 and r5295 which did work the last days and also used openjdk-7 but no changes. I have to admit that I have the debian package "josm-plugins" installed (e.g. even with an empty pref-dir I already have a small plugin-list). Anyway it always ends up with the problem of "routing.jar" and no available version of this plugin.

comment:5 Changed 11 years ago by rickmastfan67

Priority: normalmajor

Maybe this could be easily fixed if the routing.jar was recompiled? That or it's entry on the list needs to be re-written...

And, I'm going to bump up the priority of this. The reason? Well, I renamed my preference folder for JOSM so that it would start with a fresh copy. When I did that, I went into the plugins area to download the list. However, no list got loaded and the above error messages showed up in the Java console. JOSM did download both the txt and zip files for the plugin list, but JOSM failed to load them in the clean install.

Thus, if people were just starting to use JOSM, they wouldn't even get the plugin list and have no idea why they couldn't download or even see the plugins available for JOSM. That's not a good thing to see happening and that might turn off people from working with OSM data.

comment:6 Changed 11 years ago by anonymous

I have a clean JOSM install and need the reverter plugin, but JOSM "Failed to parse plugin list document".
Is there a way to install a plugin without the plugin list?
Even josm-tested.jar (version 5267) does not work.

comment:7 in reply to:  6 ; Changed 11 years ago by rickmastfan67

Replying to anonymous:

I have a clean JOSM install and need the reverter plugin, but JOSM "Failed to parse plugin list document".
Is there a way to install a plugin without the plugin list?
Even josm-tested.jar (version 5267) does not work.

Here's the direct link to that plugin:
http://svn.openstreetmap.org/!svn/bc/27677/applications/editors/josm/dist/reverter.jar

And here's the steps to install it:

  1. Once you have it downloaded, if you're using Windows 7, place it in the following location: C:\Users\(Your user name here)\AppData\Roaming\JOSM\plugins (if the plugins folder isn't there, create it)
  2. Start JOSM.
  3. F12 > Select the Plugins icon
  4. click the checkbox in front of the reverter plugin
  5. Hit OK.
  6. Close and Restart JOSM.
  7. The reverter plugin is now avaible for you to use. ;)
Last edited 11 years ago by rickmastfan67 (previous) (diff)

comment:8 Changed 11 years ago by simon04

Resolution: fixed
Status: newclosed

In 5306/josm:

fix #7818 - problem with plugin list (lines exceeding 140 characters)

comment:9 Changed 11 years ago by simon04

In 5307/josm:

see #7818 - make plugin list parsing more robust.

In case of an error, resume with next item.

comment:10 in reply to:  7 Changed 11 years ago by anonymous

Replying to rickmastfan67:

Here's the direct link to that plugin:
http://svn.openstreetmap.org/!svn/bc/27677/applications/editors/josm/dist/reverter.jar

And here's the steps to install it:

  1. Once you have it downloaded, if you're using Windows 7, place it in the following location: C:\Users\(Your user name here)\AppData\Roaming\JOSM\plugins (if the plugins folder isn't there, create it)
  2. Start JOSM.
  3. F12 > Select the Plugins icon
  4. click the checkbox in front of the reverter plugin
  5. Hit OK.
  6. Close and Restart JOSM.
  7. The reverter plugin is now avaible for you to use. ;)

Thank you!

comment:11 Changed 11 years ago by simon04

Cc: bastiK stoecker added
Resolution: fixed
Status: closedreopened

However, for the current tested, the plugin list is still broken and (as far as I know) requires adaption of the server code generating http://josm.openstreetmap.de/plugin. In the meanwhile, the list cannot be updated nor any plugin can be installed on a fresh JOSM installation.

comment:12 in reply to:  11 Changed 11 years ago by bastiK

Replying to simon04:

However, for the current tested, the plugin list is still broken and (as far as I know) requires adaption of the server code generating http://josm.openstreetmap.de/plugin. In the meanwhile, the list cannot be updated nor any plugin can be installed on a fresh JOSM installation.

The problem is the very long pt translation of the plugin description. I've removed it for now and it should be working again.

@Simon: What is the critical length? (There are still lines longer than 140 chars in the plugin list file, but it parses without exception.)

comment:13 Changed 11 years ago by simon04

@Simon: What is the critical length? (There are still lines longer than 140 chars in the plugin list file, but it parses without exception.)

I'm not sure about that. I also noticed the >140 char lines not causing the problem …

comment:14 Changed 11 years ago by simon04

	pt_Plugin-Description: Módulo Rota: um módulo simples que permite saber qual é a rota mais curta (ou a mais rápida, respeitando limites de velocidade máxima) entre dois nós de estradas, com ou sem nós adicionais no meio de percurso (passar obrigatoriamente por determinado local). Para criar rotas é necessário aceder ao menu adicionado na barra de menus principal ''Rota>Adicionar camada de rota'' e ativar a camada criada no painel de camadas. Aparecerão então 3 botões do lado esquerdo para criar e editar rotas. O módulo também acrescenta uma aba adicional nas pre

… works, but

	pt_Plugin-Description: Módulo Rota: um módulo simples que permite saber qual é a rota mais curta (ou a mais rápida, respeitando limites de velocidade máxima) entre dois nós de estradas, com ou sem nós adicionais no meio de percurso (passar obrigatoriamente por determinado local). Para criar rotas é necessário aceder ao menu adicionado na barra de menus principal ''Rota>Adicionar camada de rota'' e ativar a camada criada no painel de camadas. Aparecerão então 3 botões do lado esquerdo para criar e editar rotas. O módulo também acrescenta uma aba adicional nas pref

no longer works …

comment:15 Changed 11 years ago by bastiK

Resolution: fixed
Status: reopenedclosed

Thanks, I'm now filtering all description lines with >= 569 chars.

comment:16 Changed 11 years ago by stoecker

Hmm, what's special about 546 or 571? Anyway we should shorten the translation and probably add some server checks in plugin list so we get informed about such issues.

comment:17 Changed 11 years ago by stoecker

Filtering seems not a good idea, as the same text in the plugin itself causes the issue as well.

comment:18 in reply to:  17 Changed 11 years ago by bastiK

Replying to stoecker:

Filtering seems not a good idea, as the same text in the plugin itself causes the issue as well.

No, the translations aren't normally included in the plugin jar. Even if they were, it wouldn't be a problem, because they are build with standard tools that create a valid Manifest file (put a newline after 70 chars), so the bug in JOSM is not exposed in this case.

comment:19 in reply to:  16 Changed 11 years ago by bastiK

Replying to stoecker:

Hmm, what's special about 546 or 571?

No idea, feel free to investigate. For me, the problem is fixed. :)

Anyway we should shorten the translation and probably add some server checks in plugin list so we get informed about such issues.

Agreed. But this is only a preliminary restriction. As soon as everyone uses r5307 or later, the descriptions can be as long as needed.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted.

Add Comment


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

 
Note: See TracTickets for help on using tickets.