﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
17016	IllegalArgumentException when entering bad WMS URL	anonymous	team	"(When I booted up my computer this form was still open. I hope I'm not accidentally submitting this twice!)

==== What steps will reproduce the problem?

1. Go to Imagery > Rectified Image
2. Choose ""Custom WMS Link""
3. Enter a TMS Link: ""https://tiles.openaerialmap.org/5bf3421d1c49bf0006fc09c5/0/5bf3421d1c49bf0006fc09c6/{z}/{x}/{y}""

==== What is the expected result?

A nice error message (because I mixed up the two URLs)

==== What happens instead?

A crash

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
=== STACK TRACE ===
Thread: AWT-EventQueue-0 (16) of main
java.lang.IllegalArgumentException: {z} is not a valid WMS argument. Please check this server URL:
https://tiles.openaerialmap.org/5bf3421d1c49bf0006fc09c5/0/5bf3421d1c49bf0006fc09c6/{z}/{x}/{y}
	at org.openstreetmap.josm.data.imagery.TemplatedWMSTileSource.checkUrl(TemplatedWMSTileSource.java:181)
	at org.openstreetmap.josm.gui.layer.WMSLayer.<init>(WMSLayer.java:72)
	at org.openstreetmap.josm.gui.layer.ImageryLayer.create(ImageryLayer.java:162)
	at org.openstreetmap.josm.actions.MapRectifierWMSmenuAction.addWMSLayer(MapRectifierWMSmenuAction.java:250)
	at org.openstreetmap.josm.actions.MapRectifierWMSmenuAction.actionPerformed(MapRectifierWMSmenuAction.java:194)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
}}}
"	defect	closed	minor	18.11	Core imagery		fixed		
