Revision: 6133
http://sourceforge.net/p/jump-pilot/code/6133
Author: michaudm
Date: 2019-02-21 07:21:47 +0000 (Thu, 21 Feb 2019)
Log Message:
-----------
Add an option to connect to a WMS with unchecked certificate authority
Modified Paths:
--------------
core/trunk/ChangeLog
core/trunk/src/com/vividsolutions/jump/workbench/model/WMSLayer.java
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/EditWMSQueryPanel.java
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/URLWizardPanel.java
core/trunk/src/com/vividsolutions/wms/AbstractWMSRequest.java
core/trunk/src/com/vividsolutions/wms/FeatureInfoRequest.java
core/trunk/src/com/vividsolutions/wms/WMSRequest.java
core/trunk/src/com/vividsolutions/wms/WMService.java
core/trunk/src/com/vividsolutions/wms/ui/WMSViewer.java
core/trunk/src/language/jump.properties
core/trunk/src/language/jump_cz.properties
core/trunk/src/language/jump_de.properties
core/trunk/src/language/jump_es.properties
core/trunk/src/language/jump_fi.properties
core/trunk/src/language/jump_fr.properties
core/trunk/src/language/jump_hu.properties
core/trunk/src/language/jump_it.properties
core/trunk/src/language/jump_ja_JP.properties
core/trunk/src/language/jump_ml.properties
core/trunk/src/language/jump_pt.properties
core/trunk/src/language/jump_pt_BR.properties
core/trunk/src/language/jump_ta_IN.properties
core/trunk/src/language/jump_te.properties
core/trunk/src/language/jump_zh_CN.properties
core/trunk/src/language/jump_zh_HK.properties
core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java
core/trunk/src/org/openjump/core/ui/plugin/wms/WMSLegendPlugIn.java
Modified: core/trunk/ChangeLog
===================================================================
--- core/trunk/ChangeLog 2019-02-20 14:38:45 UTC (rev 6132)
+++ core/trunk/ChangeLog 2019-02-21 07:21:47 UTC (rev 6133)
@@ -3,6 +3,9 @@
# 2. make sure that lines break at 80 chars for constricted display situations
#<-------------------------------- 80 chars
---------------------------------->#
+2019-02-21 mmichaud <[email protected]>
+ * Add an option to connect to a WMS with unchecked certificate authority
+
2019-02-19 Nicolas Ribot
* Corrected typo in SpatialiteDSMetadata datasetInfoQuery string preventing
spatial tables to be listed
Modified: core/trunk/src/com/vividsolutions/jump/workbench/model/WMSLayer.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/workbench/model/WMSLayer.java
2019-02-20 14:38:45 UTC (rev 6132)
+++ core/trunk/src/com/vividsolutions/jump/workbench/model/WMSLayer.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -38,6 +38,8 @@
import java.lang.ref.Reference;
import java.lang.ref.SoftReference;
import java.net.URL;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -84,13 +86,13 @@
}
public WMSLayer(LayerManager layerManager, String serverURL, String srs,
- List<String> layerNames, String format, String version) throws
IOException {
+ List<String> layerNames, String format, String version) throws
IOException, KeyManagementException, NoSuchAlgorithmException {
this(layerManager, initializedService(serverURL, version), srs, layerNames,
format);
}
private static WMService initializedService(String serverURL, String version)
- throws IOException {
+ throws IOException, KeyManagementException, NoSuchAlgorithmException {
WMService initializedService = new WMService(serverURL, version);
initializedService.initialize();
return initializedService;
@@ -150,7 +152,7 @@
this.alpha = alpha;
}
- public Image createImage(LayerViewPanel panel) throws IOException {
+ public Image createImage(LayerViewPanel panel) throws IOException,
KeyManagementException, NoSuchAlgorithmException {
MapRequest request = createRequest(panel);
URL newURL = request.getURL();
@@ -181,7 +183,7 @@
return new BoundingBox(srs, e);
}
- public MapRequest createRequest(LayerViewPanel panel) throws IOException {
+ public MapRequest createRequest(LayerViewPanel panel) throws IOException,
KeyManagementException, NoSuchAlgorithmException {
MapRequest request = getService().createMapRequest();
request.setBoundingBox(toBoundingBox(srs, panel.getViewport()
.getEnvelopeInModelCoordinates()));
@@ -241,7 +243,7 @@
return blackboard;
}
- public WMService getService() throws IOException {
+ public WMService getService() throws IOException, KeyManagementException,
NoSuchAlgorithmException {
if (service == null) {
Assert.isTrue(serverURL != null);
setService(initializedService(serverURL, wmsVersion));
@@ -281,7 +283,7 @@
envelope.expandToInclude(bb.getEnvelope());
}
}
- } catch (IOException e) {
+ } catch (IOException|KeyManagementException|NoSuchAlgorithmException e) {
Logger
.error(
"WMSLayer envelope calculation failed."
Modified:
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/EditWMSQueryPanel.java
===================================================================
---
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/EditWMSQueryPanel.java
2019-02-20 14:38:45 UTC (rev 6132)
+++
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/EditWMSQueryPanel.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -38,6 +38,8 @@
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
import java.util.Iterator;
import java.util.LinkedHashSet;
@@ -109,7 +111,7 @@
try {
service = layer.getService();
- } catch (IOException e) {
+ } catch (IOException| KeyManagementException| NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Modified:
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/URLWizardPanel.java
===================================================================
---
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/URLWizardPanel.java
2019-02-20 14:38:45 UTC (rev 6132)
+++
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/wms/URLWizardPanel.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -40,6 +40,8 @@
import java.awt.event.ActionListener;
import java.io.IOException;
import java.net.URL;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
@@ -52,6 +54,7 @@
import javax.swing.JPanel;
import javax.swing.JRadioButton;
+import org.deegree.security.drm.ManagementException;
import org.openjump.core.ui.plugin.wms.AddWmsLayerWizard;
import org.openjump.util.UriUtil;
@@ -157,7 +160,7 @@
return I18N.get(I18N_PREFIX + "please-enter-the-url-of-the-wms-server");
}
- public void exitingToRight() throws IOException, WorkbenchException {
+ public void exitingToRight() throws WorkbenchException,
NoSuchAlgorithmException, KeyManagementException {
try {
String url = urlPanel.getUrl();
url = UriUtil.urlAddCredentials(url, urlPanel.getUser(),
urlPanel.getPass());
Modified: core/trunk/src/com/vividsolutions/wms/AbstractWMSRequest.java
===================================================================
--- core/trunk/src/com/vividsolutions/wms/AbstractWMSRequest.java
2019-02-20 14:38:45 UTC (rev 6132)
+++ core/trunk/src/com/vividsolutions/wms/AbstractWMSRequest.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -9,6 +9,8 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.nio.charset.Charset;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.List;
import java.util.Map.Entry;
@@ -62,7 +64,7 @@
* @return URL
* @throws MalformedURLException
*/
- abstract public URL getURL() throws MalformedURLException;
+ abstract public URL getURL() throws MalformedURLException,
KeyManagementException, NoSuchAlgorithmException;
/**
* unified way to create a url connection, may be overwritten and modified
@@ -70,7 +72,7 @@
* @return
* @throws IOException
*/
- protected HttpURLConnection prepareConnection() throws IOException {
+ protected HttpURLConnection prepareConnection() throws IOException,
KeyManagementException, NoSuchAlgorithmException {
URL requestUrl = getURL();
con = (HttpURLConnection) requestUrl.openConnection();
@@ -100,7 +102,7 @@
*
* @Override
*/
- public HttpURLConnection getConnection() throws IOException {
+ public HttpURLConnection getConnection() throws IOException,
KeyManagementException, NoSuchAlgorithmException {
if (con == null)
con = prepareConnection();
return con;
@@ -111,7 +113,7 @@
*
* @return the retrieved map Image
*/
- public Image getImage() throws IOException {
+ public Image getImage() throws IOException, KeyManagementException,
NoSuchAlgorithmException {
HttpURLConnection con = getConnection();
boolean httpOk = con.getResponseCode() == HttpURLConnection.HTTP_OK;
@@ -147,7 +149,7 @@
* @return
* @throws IOException
*/
- public String getText() throws IOException {
+ public String getText() throws IOException, KeyManagementException,
NoSuchAlgorithmException {
HttpURLConnection con = getConnection();
return readConnection(con, 0, false);
}
Modified: core/trunk/src/com/vividsolutions/wms/FeatureInfoRequest.java
===================================================================
--- core/trunk/src/com/vividsolutions/wms/FeatureInfoRequest.java
2019-02-20 14:38:45 UTC (rev 6132)
+++ core/trunk/src/com/vividsolutions/wms/FeatureInfoRequest.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -5,6 +5,8 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.List;
import com.vividsolutions.jts.geom.Envelope;
@@ -23,7 +25,7 @@
private BoundingBox bbox;
private int height, width;
- public FeatureInfoRequest(WMSLayer layer) throws IOException {
+ public FeatureInfoRequest(WMSLayer layer) throws IOException,
KeyManagementException, NoSuchAlgorithmException {
super(layer.getService());
this.wmsLayer = layer;
}
@@ -45,7 +47,7 @@
}
@Override
- public URL getURL() throws MalformedURLException {
+ public URL getURL() throws MalformedURLException, KeyManagementException,
NoSuchAlgorithmException {
String featInfoUrl = service.getCapabilities().getFeatureInfoURL();
if (featInfoUrl.contains("?")) {
Modified: core/trunk/src/com/vividsolutions/wms/WMSRequest.java
===================================================================
--- core/trunk/src/com/vividsolutions/wms/WMSRequest.java 2019-02-20
14:38:45 UTC (rev 6132)
+++ core/trunk/src/com/vividsolutions/wms/WMSRequest.java 2019-02-21
07:21:47 UTC (rev 6133)
@@ -4,6 +4,8 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
public interface WMSRequest {
@@ -11,7 +13,7 @@
public void setWMSVersion( String wmsVersion );
- public URL getURL() throws MalformedURLException;
+ public URL getURL() throws MalformedURLException, KeyManagementException,
NoSuchAlgorithmException;
- public URLConnection getConnection() throws IOException;
+ public URLConnection getConnection() throws IOException,
KeyManagementException, NoSuchAlgorithmException;
}
Modified: core/trunk/src/com/vividsolutions/wms/WMService.java
===================================================================
--- core/trunk/src/com/vividsolutions/wms/WMService.java 2019-02-20
14:38:45 UTC (rev 6132)
+++ core/trunk/src/com/vividsolutions/wms/WMService.java 2019-02-21
07:21:47 UTC (rev 6133)
@@ -41,7 +41,13 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
+import java.security.cert.X509Certificate;
+import java.util.HashSet;
+import java.util.Set;
+import javax.net.ssl.*;
import javax.swing.JOptionPane;
import org.openjump.util.UriUtil;
@@ -67,6 +73,7 @@
private URL serverUrl;
private String wmsVersion = WMS_1_1_1;
private Capabilities cap;
+ // true if the user just confirm that he accepts or not untrusted connexion
/**
* Constructs a WMService object from a server URL.
@@ -100,7 +107,7 @@
/**
* @throws IOException
*/
- public void initialize() throws IOException {
+ public void initialize() throws IOException, KeyManagementException,
NoSuchAlgorithmException {
initialize(false);
}
@@ -116,7 +123,7 @@
* alert the user if a different GetMap URL is available
* @throws IOException
*/
- public void initialize(boolean alertDifferingURL) throws IOException {
+ public void initialize(boolean alertDifferingURL) throws IOException,
NoSuchAlgorithmException, KeyManagementException {
// [UT]
String req = "request=capabilities&WMTVER=1.0";
IParser parser = new ParserWMS1_1();
@@ -134,15 +141,15 @@
parser = new ParserWMS1_3();
}
-// try {
+ try {
String requestUrlString = this.serverUrl + req;
URL requestUrl = new URL(requestUrlString);
URLConnection con = new BasicRequest(this, requestUrl).getConnection();
-
+
// Parser p = new Parser();
cap = parser.parseCapabilities(this, con.getInputStream());
- String url1 = cap.getService().getServerUrl().toString();
+ String url1 = cap.getService().getServerUrl();
String url2 = cap.getGetMapURL();
String compare_url1 = UriUtil.urlStripAuth(legalize(url1));
@@ -151,8 +158,8 @@
// user
if (!compare_url1.equals(compare_url2) && alertDifferingURL) {
int resp = showConfirmDialog(null, I18N.getMessage(
- "com.vididsolutions.wms.WMService.Other-GetMap-URL-Found",
- new Object[] { url2 }), null, YES_NO_OPTION);
+ "com.vididsolutions.wms.WMService.Other-GetMap-URL-Found",
+ new Object[]{url2}), null, YES_NO_OPTION);
// nope. user wants to keep the initial url
if (resp == NO_OPTION) {
cap.setGetMapURL(url1);
@@ -160,7 +167,7 @@
// make sure url2 has auth info if needed
else if (!UriUtil.urlGetUser(url1).isEmpty()) {
String url2_withAuth = UriUtil.urlAddCredentials(url2,
- UriUtil.urlGetUser(url1), UriUtil.urlGetPassword(url1));
+ UriUtil.urlGetUser(url1), UriUtil.urlGetPassword(url1));
cap.setGetMapURL(url2_withAuth);
}
} else {
@@ -170,7 +177,27 @@
// JPP mailing list
cap.setGetMapURL(url1);
}
+ } catch(SSLHandshakeException ex) {
+ int r = JOptionPane.showConfirmDialog(null,
+
I18N.getMessage("com.vididsolutions.wms.WMService.UnverifiedCertificate", new
Object[]{
+ // create a new URL to hide user/password
+ new URL(serverUrl.getProtocol(), serverUrl.getHost(),
serverUrl.getPort(), serverUrl.getFile())
+ }),
+ "Confirmation dialog",
+ YES_NO_OPTION,JOptionPane.WARNING_MESSAGE);
+ if (r==JOptionPane.YES_OPTION) {
+ setTrustOption(true, serverUrl);
+ initialize(alertDifferingURL);
+ } else throw ex;
+ //null, I18N.getMessage(
+// "com.vividsolutions.wms.WMService.WMS-Not-Found",
+// new Object[] { e.getLocalizedMessage() }), I18N
+// .get("com.vividsolutions.wms.WMService.Error"),
+// JOptionPane.ERROR_MESSAGE);
+// throw e;
+ }
+
// [2016.01 ede] deactivated the error handling here as it leads to an
// infinite stack loop when trying to open a project containing a wms layer
// that can't be connected for some reason show error, close errordialog,
@@ -195,6 +222,25 @@
// }
}
+ TrustManager trm = new X509TrustManager() {
+ public X509Certificate[] getAcceptedIssuers() { return null; }
+ public void checkClientTrusted(X509Certificate[] certs, String authType) {
}
+ public void checkServerTrusted(X509Certificate[] certs, String authType) {
}
+ };
+ Set<URL> trustedURLs = new HashSet<>();
+
+ private void setTrustOption(boolean trust, URL url)
+ throws KeyManagementException, NoSuchAlgorithmException {
+ SSLContext sc = SSLContext.getInstance("SSL");
+ if (trust || trustedURLs.contains(url)) {
+ sc.init(null, new TrustManager[]{trm}, null);
+ trustedURLs.add(url);
+ } else {
+ sc.init(null, null, null);
+ }
+ HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
+ }
+
/**
* Gets the url stringof the map service.
*
Modified: core/trunk/src/com/vividsolutions/wms/ui/WMSViewer.java
===================================================================
--- core/trunk/src/com/vividsolutions/wms/ui/WMSViewer.java 2019-02-20
14:38:45 UTC (rev 6132)
+++ core/trunk/src/com/vividsolutions/wms/ui/WMSViewer.java 2019-02-21
07:21:47 UTC (rev 6133)
@@ -39,6 +39,8 @@
import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
@@ -211,7 +213,7 @@
disconnectButton.setEnabled( true );
getImageButton.setEnabled( true );
connected = true;
- } catch( IOException ioe ) {
+ } catch( IOException| KeyManagementException| NoSuchAlgorithmException
ioe ) {
// failed to connect and retrieve capabilities
}
Modified: core/trunk/src/language/jump.properties
===================================================================
--- core/trunk/src/language/jump.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -231,6 +231,7 @@
com.vividsolutions.wms.Parser.invalid-bounding-box-element-node = Invalid
bounding box element node.
com.vividsolutions.wms.Parser.not-a-latlon-boundingbox-element = Not a
(Lat/Long) Bounding-Box Element
com.vividsolutions.wms.WMService.Error = Error
+com.vididsolutions.wms.WMService.UnverifiedCertificate=Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
com.vididsolutions.wms.WMService.Other-GetMap-URL-Found = The WMS advertises
the URL {0} as GetMap-URL. Do you want to use it?
com.vividsolutions.wms.WMService.WMS-IO-Error = Could not connect to the
WMS.\n\
\t{0}\: {1}
Modified: core/trunk/src/language/jump_cz.properties
===================================================================
--- core/trunk/src/language/jump_cz.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_cz.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2920,4 +2920,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_de.properties
===================================================================
--- core/trunk/src/language/jump_de.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_de.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2912,4 +2912,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_es.properties
===================================================================
--- core/trunk/src/language/jump_es.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_es.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2891,4 +2891,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=Detener
el proceso
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=Advertencia:
la detenci\xF3n del proceso puede provocar la p\xE9rdida de los datos o la
suyas integridad. \n \xBFEst\xE1 seguro de que desea detener el proceso?
ui.renderer.style.ColorThemingTableModel.label =Etiqueta
-ui.renderer.style.ColorThemingTableModel.style =Estilo
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =Estilo
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_fi.properties
===================================================================
--- core/trunk/src/language/jump_fi.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_fi.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2889,4 +2889,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_fr.properties
===================================================================
--- core/trunk/src/language/jump_fr.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_fr.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2921,4 +2921,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process =
Interrompre le traitement
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning
= Attention : L'interruption brutale d'un traitement peut provoquer la
corruption ou la perte de donn\xE9es.\n Etes-vous s\xFBr de vouloir quand
m\xEAme interrompre le traitement ?
ui.renderer.style.ColorThemingTableModel.label = Etiquette
-ui.renderer.style.ColorThemingTableModel.style = Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style = Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=Autorit\u00e9 de
certification inconnu pour :\n{0}.\nVoulez-vous continuer malgr\u00e9 tout ?\
Modified: core/trunk/src/language/jump_hu.properties
===================================================================
--- core/trunk/src/language/jump_hu.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_hu.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2908,4 +2908,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_it.properties
===================================================================
--- core/trunk/src/language/jump_it.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_it.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2893,4 +2893,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=Interrompi
il processo
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=Attenzione:
Interrompendo il processo pu\xF2 determinare una perdita di dati o la loro
integrit\xE0.\n Sei sicuro di voler interrompere il processo?
ui.renderer.style.ColorThemingTableModel.label =Etichetta
-ui.renderer.style.ColorThemingTableModel.style =Stile
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =Stile
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_ja_JP.properties
===================================================================
--- core/trunk/src/language/jump_ja_JP.properties 2019-02-20 14:38:45 UTC
(rev 6132)
+++ core/trunk/src/language/jump_ja_JP.properties 2019-02-21 07:21:47 UTC
(rev 6133)
@@ -2914,4 +2914,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_ml.properties
===================================================================
--- core/trunk/src/language/jump_ml.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_ml.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -3689,4 +3689,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_pt.properties
===================================================================
--- core/trunk/src/language/jump_pt.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_pt.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -2913,4 +2913,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_pt_BR.properties
===================================================================
--- core/trunk/src/language/jump_pt_BR.properties 2019-02-20 14:38:45 UTC
(rev 6132)
+++ core/trunk/src/language/jump_pt_BR.properties 2019-02-21 07:21:47 UTC
(rev 6133)
@@ -2913,4 +2913,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_ta_IN.properties
===================================================================
--- core/trunk/src/language/jump_ta_IN.properties 2019-02-20 14:38:45 UTC
(rev 6132)
+++ core/trunk/src/language/jump_ta_IN.properties 2019-02-21 07:21:47 UTC
(rev 6133)
@@ -2911,4 +2911,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_te.properties
===================================================================
--- core/trunk/src/language/jump_te.properties 2019-02-20 14:38:45 UTC (rev
6132)
+++ core/trunk/src/language/jump_te.properties 2019-02-21 07:21:47 UTC (rev
6133)
@@ -3419,4 +3419,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_zh_CN.properties
===================================================================
--- core/trunk/src/language/jump_zh_CN.properties 2019-02-20 14:38:45 UTC
(rev 6132)
+++ core/trunk/src/language/jump_zh_CN.properties 2019-02-21 07:21:47 UTC
(rev 6133)
@@ -3076,4 +3076,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified: core/trunk/src/language/jump_zh_HK.properties
===================================================================
--- core/trunk/src/language/jump_zh_HK.properties 2019-02-20 14:38:45 UTC
(rev 6132)
+++ core/trunk/src/language/jump_zh_HK.properties 2019-02-21 07:21:47 UTC
(rev 6133)
@@ -3075,4 +3075,5 @@
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process=\#T\:Kill
process
com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager.kill-process-warning=\#T\:Warning:
Killing the process may result in data corruption or data loss.\n Are you sure
you want to kill the process?
ui.renderer.style.ColorThemingTableModel.label =\#T\:Label
-ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
\ No newline at end of file
+ui.renderer.style.ColorThemingTableModel.style =\#T\:Style
+com.vididsolutions.wms.WMService.UnverifiedCertificate=#T:Unknown Certificate
Authority for :\n{0}.\nDo you want to continue anyway ?
\ No newline at end of file
Modified:
core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java
===================================================================
--- core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java
2019-02-20 14:38:45 UTC (rev 6132)
+++ core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -366,6 +366,13 @@
rasterImageLayer.getSymbology(),
sourceLayerCategory);
continue;
+ } else if (layerable instanceof WMSLayer) {
+ try {
+ ((WMSLayer) layerable).getService().initialize();
+ } catch(Exception e) {
+ Logger.trace(e);
+ continue;
+ }
}
newLayerManager.addLayerable(sourceLayerCategory.getName(),
Modified: core/trunk/src/org/openjump/core/ui/plugin/wms/WMSLegendPlugIn.java
===================================================================
--- core/trunk/src/org/openjump/core/ui/plugin/wms/WMSLegendPlugIn.java
2019-02-20 14:38:45 UTC (rev 6132)
+++ core/trunk/src/org/openjump/core/ui/plugin/wms/WMSLegendPlugIn.java
2019-02-21 07:21:47 UTC (rev 6133)
@@ -13,6 +13,8 @@
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
import java.util.List;
import javax.imageio.ImageIO;
@@ -247,7 +249,7 @@
private final String CLOSE = I18N
.get("ui.plugin.imagery.ImageLayerManagerDialog.Close");
- public JPanel getLegendPanel(PlugInContext context) throws IOException {
+ public JPanel getLegendPanel(PlugInContext context) throws IOException,
KeyManagementException, NoSuchAlgorithmException {
final JPanel mainPanel = new JPanel(new GridBagLayout());
final WMSLayer layer = (WMSLayer) LayerTools.getSelectedLayerable(
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel