You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2019/05/24 08:01:24 UTC
[camel] branch master updated (bf685cc -> b84754a)
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git.
from bf685cc Updating CXF to 3.3.2. This is needed to avoid a NPE when shutting down Jetty
new 3026b8f Revert "Fixing camel-ahc errors with Jetty upgrade"
new b84754a Revert "CAMEL-13563 - Update Jetty to 9.4.18 + fix client authentication issues"
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../camel/component/cometd/CometdComponent.java | 27 +++--
.../camel/component/jetty/JettyHttpComponent.java | 12 +-
.../component/jetty/HttpBridgeEncodedPathTest.java | 3 +-
.../jetty/rest/RestHttpsClientAuthRouteTest.java | 133 ---------------------
.../camel-jetty/src/test/resources/service.jks | Bin 1969 -> 0 bytes
.../camel-jetty/src/test/resources/truststore.jks | Bin 582 -> 0 bytes
.../rest/swagger/Jetty94ServerFactory.java | 2 +-
.../component/salesforce/SalesforceComponent.java | 4 +-
.../salesforce/BulkApiIntegrationTest.java | 2 +-
.../salesforce/RestApiIntegrationTest.java | 4 +-
.../internal/SessionIntegrationTest.java | 2 +-
.../apache/camel/maven/AbstractSalesforceMojo.java | 2 +-
.../component/websocket/WebsocketComponent.java | 12 +-
.../WebsocketSSLContextGlobalRouteExampleTest.java | 25 ++--
.../WebsocketSSLContextInUriRouteExampleTest.java | 25 ++--
.../websocket/WebsocketSSLRouteExampleTest.java | 24 ++--
parent/pom.xml | 2 +-
17 files changed, 78 insertions(+), 201 deletions(-)
delete mode 100644 components/camel-jetty/src/test/java/org/apache/camel/component/jetty/rest/RestHttpsClientAuthRouteTest.java
delete mode 100644 components/camel-jetty/src/test/resources/service.jks
delete mode 100644 components/camel-jetty/src/test/resources/truststore.jks
[camel] 01/02: Revert "Fixing camel-ahc errors with Jetty upgrade"
Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 3026b8f40d4b6bf744217f117f9c3d9f85846536
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Fri May 24 09:59:54 2019 +0200
Revert "Fixing camel-ahc errors with Jetty upgrade"
This reverts commit 1ad7fc1ec4ff7455c0991f84b5ada92c955611b8.
Upgrading Jetty breaks cometd karaf feature, which in turns breaks Saleforce Karaf feature
---
.../java/org/apache/camel/component/jetty/JettyHttpComponent.java | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
index 86b4845..0891248 100644
--- a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
+++ b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
@@ -626,8 +626,7 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
throw new RuntimeCamelException(e);
}
} else if ("https".equals(endpoint.getProtocol())) {
- sslcf = new SslContextFactory();
- sslcf.setEndpointIdentificationAlgorithm(null);
+ sslcf = new SslContextFactory.Server();
String keystoreProperty = System.getProperty(JETTY_SSL_KEYSTORE);
if (keystoreProperty != null) {
sslcf.setKeyStorePath(keystoreProperty);
@@ -656,10 +655,7 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
protected abstract AbstractConnector createConnectorJettyInternal(Server server, JettyHttpEndpoint endpoint, SslContextFactory sslcf);
private SslContextFactory createSslContextFactory(SSLContextParameters ssl, boolean client) throws GeneralSecurityException, IOException {
- SslContextFactory answer = new SslContextFactory();
- if (!client) {
- answer.setEndpointIdentificationAlgorithm(null);
- }
+ SslContextFactory answer = client ? new SslContextFactory.Client() : new SslContextFactory.Server();
if (ssl != null) {
answer.setSslContext(ssl.createSSLContext(getCamelContext()));
}
[camel] 02/02: Revert "CAMEL-13563 - Update Jetty to 9.4.18 + fix
client authentication issues"
Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
commit b84754a635a8e878bf44e7b24ea359592975e060
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Fri May 24 10:00:41 2019 +0200
Revert "CAMEL-13563 - Update Jetty to 9.4.18 + fix client authentication issues"
This reverts commit 4cfedb0dbc66168e7ac8ac357c021d8b9ecc3362.
Upgrading Jetty breaks cometd Karaf feature, which in turns breaks Saleforce Karaf feature
---
.../camel/component/cometd/CometdComponent.java | 27 +++--
.../camel/component/jetty/JettyHttpComponent.java | 12 +-
.../component/jetty/HttpBridgeEncodedPathTest.java | 3 +-
.../jetty/rest/RestHttpsClientAuthRouteTest.java | 133 ---------------------
.../camel-jetty/src/test/resources/service.jks | Bin 1969 -> 0 bytes
.../camel-jetty/src/test/resources/truststore.jks | Bin 582 -> 0 bytes
.../rest/swagger/Jetty94ServerFactory.java | 2 +-
.../component/salesforce/SalesforceComponent.java | 4 +-
.../salesforce/BulkApiIntegrationTest.java | 2 +-
.../salesforce/RestApiIntegrationTest.java | 4 +-
.../internal/SessionIntegrationTest.java | 2 +-
.../apache/camel/maven/AbstractSalesforceMojo.java | 2 +-
.../component/websocket/WebsocketComponent.java | 12 +-
.../WebsocketSSLContextGlobalRouteExampleTest.java | 25 ++--
.../WebsocketSSLContextInUriRouteExampleTest.java | 25 ++--
.../websocket/WebsocketSSLRouteExampleTest.java | 24 ++--
parent/pom.xml | 2 +-
17 files changed, 80 insertions(+), 199 deletions(-)
diff --git a/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java b/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
index b22bbcd..c48986d 100644
--- a/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
+++ b/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
@@ -22,6 +22,7 @@ import java.util.EnumSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import javax.net.ssl.SSLContext;
import javax.servlet.DispatcherType;
import org.apache.camel.Endpoint;
@@ -130,7 +131,7 @@ public class CometdComponent extends DefaultComponent implements SSLContextParam
LOG.warn("You use localhost interface! It means that no external connections will be available."
+ " Don't you want to use 0.0.0.0 instead (all network interfaces)?");
}
-
+
server.addConnector(connector);
CometDServlet servlet = createServletForConnector(server, connector, endpoint);
@@ -231,18 +232,20 @@ public class CometdComponent extends DefaultComponent implements SSLContextParam
if (sslParams == null) {
sslParams = retrieveGlobalSslContextParameters();
}
-
- SslContextFactory sslContextFactory = new SslContextFactory.Server();
if (sslParams != null) {
+ SslContextFactory sslContextFactory = new CometdComponentSslContextFactory();
sslContextFactory.setSslContext(sslParams.createSSLContext(getCamelContext()));
+ sslSocketConnector = new ServerConnector(server, sslContextFactory);
} else {
+ SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setKeyStorePassword(sslKeyPassword);
sslContextFactory.setKeyManagerPassword(sslPassword);
if (sslKeystore != null) {
sslContextFactory.setKeyStorePath(sslKeystore);
}
+ sslSocketConnector = new ServerConnector(server, sslContextFactory);
+
}
- sslSocketConnector = new ServerConnector(server, sslContextFactory);
return sslSocketConnector;
}
@@ -307,14 +310,14 @@ public class CometdComponent extends DefaultComponent implements SSLContextParam
}
extensions.add(extension);
}
-
+
public void addServerListener(BayeuxServer.BayeuxServerListener serverListener) {
if (serverListeners == null) {
serverListeners = new ArrayList<>();
}
serverListeners.add(serverListener);
}
-
+
public SSLContextParameters getSslContextParameters() {
return sslContextParameters;
}
@@ -352,7 +355,7 @@ public class CometdComponent extends DefaultComponent implements SSLContextParam
connectorRef.connector.stop();
}
connectors.clear();
-
+
super.doStop();
}
@@ -371,4 +374,14 @@ public class CometdComponent extends DefaultComponent implements SSLContextParam
}
}
+ /**
+ * Override the key/trust store check method as it does not account for a factory that has
+ * a pre-configured {@link SSLContext}.
+ */
+ private static final class CometdComponentSslContextFactory extends SslContextFactory {
+ // to support jetty 9.2.
+ // TODO: remove this class when we have upgraded to jetty 9.3
+ public void checkKeyStore() {
+ }
+ }
}
diff --git a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
index 0891248..e4b7920 100644
--- a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
+++ b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
@@ -621,12 +621,12 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
if (endpointSslContextParameters != null) {
try {
- sslcf = createSslContextFactory(endpointSslContextParameters, false);
+ sslcf = createSslContextFactory(endpointSslContextParameters);
} catch (Exception e) {
throw new RuntimeCamelException(e);
}
} else if ("https".equals(endpoint.getProtocol())) {
- sslcf = new SslContextFactory.Server();
+ sslcf = new SslContextFactory();
String keystoreProperty = System.getProperty(JETTY_SSL_KEYSTORE);
if (keystoreProperty != null) {
sslcf.setKeyStorePath(keystoreProperty);
@@ -654,8 +654,8 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
protected abstract AbstractConnector createConnectorJettyInternal(Server server, JettyHttpEndpoint endpoint, SslContextFactory sslcf);
- private SslContextFactory createSslContextFactory(SSLContextParameters ssl, boolean client) throws GeneralSecurityException, IOException {
- SslContextFactory answer = client ? new SslContextFactory.Client() : new SslContextFactory.Server();
+ private SslContextFactory createSslContextFactory(SSLContextParameters ssl) throws GeneralSecurityException, IOException {
+ SslContextFactory answer = new SslContextFactory();
if (ssl != null) {
answer.setSslContext(ssl.createSSLContext(getCamelContext()));
}
@@ -743,7 +743,7 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
* @param ssl option SSL parameters
*/
public CamelHttpClient createHttpClient(JettyHttpEndpoint endpoint, Integer minThreads, Integer maxThreads, SSLContextParameters ssl) throws Exception {
- SslContextFactory sslContextFactory = createSslContextFactory(ssl, true);
+ SslContextFactory sslContextFactory = createSslContextFactory(ssl);
HttpClientTransport transport = createHttpClientTransport(maxThreads);
CamelHttpClient httpClient = createCamelHttpClient(transport, sslContextFactory);
@@ -1426,7 +1426,7 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
if (getErrorHandler() != null) {
s.addBean(getErrorHandler());
} else if (!Server.getVersion().startsWith("8")) {
- //need an error handler that won't leak information about the exception
+ //need an error handler that won't leak information about the exception
//back to the client.
ErrorHandler eh = new ErrorHandler() {
public void handle(String target, Request baseRequest,
diff --git a/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java b/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java
index 88ad543..806d749 100644
--- a/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java
+++ b/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java
@@ -42,7 +42,6 @@ public class HttpBridgeEncodedPathTest extends BaseJettyTest {
}
@Test
- @org.junit.Ignore("This test fails with a httpclient upgrade")
public void testEncodedPath() throws Exception {
String path = URLEncoder.encode(" :/?#[]@!$", "UTF-8") + "/" + URLEncoder.encode("&'()+,;=", "UTF-8");
MockEndpoint mock = getMockEndpoint("mock:encodedPath");
@@ -90,6 +89,6 @@ public class HttpBridgeEncodedPathTest extends BaseJettyTest {
from("jetty:http://localhost:" + port3 + "?matchOnUriPrefix=true").to("mock:encodedPath");
}
};
- }
+ }
}
diff --git a/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/rest/RestHttpsClientAuthRouteTest.java b/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/rest/RestHttpsClientAuthRouteTest.java
deleted file mode 100644
index 5d698ed..0000000
--- a/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/rest/RestHttpsClientAuthRouteTest.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.jetty.rest;
-
-import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
-import org.apache.camel.Produce;
-import org.apache.camel.ProducerTemplate;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.model.rest.RestConfigurationDefinition;
-import org.apache.camel.support.jsse.KeyManagersParameters;
-import org.apache.camel.support.jsse.KeyStoreParameters;
-import org.apache.camel.support.jsse.SSLContextParameters;
-import org.apache.camel.support.jsse.SSLContextServerParameters;
-import org.apache.camel.support.jsse.TrustManagersParameters;
-import org.apache.camel.test.AvailablePortFinder;
-import org.apache.camel.test.junit4.CamelTestSupport;
-import org.junit.Test;
-
-public class RestHttpsClientAuthRouteTest extends CamelTestSupport {
- static int port = AvailablePortFinder.getNextAvailable();
-
- @Produce("direct:start")
- protected ProducerTemplate sender;
-
-
- @Test
- public void testGETClientRoute() throws Exception {
- MockEndpoint mock = getMockEndpoint("mock:result");
- mock.expectedMinimumMessageCount(1);
- mock.expectedBodiesReceived("Hello some-id");
- sender.sendBody(null);
- assertMockEndpointsSatisfied();
- }
-
- protected String getClientURI() {
- return "http4://localhost:%d/TestResource/some-id?sslContextParameters=#clientSSLContextParameters";
- }
-
- protected void decorateRestConfiguration(RestConfigurationDefinition restConfig) {
- KeyStoreParameters keystoreParameters = new KeyStoreParameters();
- keystoreParameters.setResource("service.jks");
- keystoreParameters.setPassword("security");
-
- SSLContextParameters serviceSSLContextParameters = new SSLContextParameters();
- KeyManagersParameters serviceSSLKeyManagers = new KeyManagersParameters();
- serviceSSLKeyManagers.setKeyPassword("security");
- serviceSSLKeyManagers.setKeyStore(keystoreParameters);
- serviceSSLContextParameters.setKeyManagers(serviceSSLKeyManagers);
-
- KeyStoreParameters truststoreParameters = new KeyStoreParameters();
- truststoreParameters.setResource("truststore.jks");
- truststoreParameters.setPassword("storepass");
-
- TrustManagersParameters clientAuthServiceSSLTrustManagers = new TrustManagersParameters();
- clientAuthServiceSSLTrustManagers.setKeyStore(truststoreParameters);
- serviceSSLContextParameters.setTrustManagers(clientAuthServiceSSLTrustManagers);
- SSLContextServerParameters clientAuthSSLContextServerParameters = new SSLContextServerParameters();
- clientAuthSSLContextServerParameters.setClientAuthentication("REQUIRE");
- serviceSSLContextParameters.setServerParameters(clientAuthSSLContextServerParameters);
-
- SSLContextParameters clientSSLContextParameters = new SSLContextParameters();
- TrustManagersParameters clientSSLTrustManagers = new TrustManagersParameters();
- clientSSLTrustManagers.setKeyStore(truststoreParameters);
- clientSSLContextParameters.setTrustManagers(clientSSLTrustManagers);
-
- KeyManagersParameters clientAuthClientSSLKeyManagers = new KeyManagersParameters();
- clientAuthClientSSLKeyManagers.setKeyPassword("security");
- clientAuthClientSSLKeyManagers.setKeyStore(keystoreParameters);
- clientSSLContextParameters.setKeyManagers(clientAuthClientSSLKeyManagers);
-
- context.getRegistry().bind("serviceSSLContextParameters", serviceSSLContextParameters);
- context.getRegistry().bind("clientSSLContextParameters", clientSSLContextParameters);
-
- restConfig.endpointProperty("sslContextParameters", "#serviceSSLContextParameters");
- }
-
- @Override
- protected RouteBuilder createRouteBuilder() throws Exception {
- return new RouteBuilder() {
- @Override
- public void configure() throws Exception {
- RestConfigurationDefinition restConfig =
- restConfiguration("jetty").scheme("https").host("localhost").port(port);
- decorateRestConfiguration(restConfig);
-
- rest("/TestParams")
- .get().to("direct:get1")
- .post().to("direct:post1");
-
- rest("/TestResource")
- .get("/{id}").to("direct:get1")
- .post("/{id}").to("direct:post1");
-
- from("direct:get1").process(new Processor() {
- public void process(Exchange exchange) throws Exception {
- String id = exchange.getIn().getHeader("id", String.class);
- exchange.getOut().setBody("Hello " + id);
- }
- });
-
- from("direct:post1").process(new Processor() {
- public void process(Exchange exchange) throws Exception {
- String id = exchange.getIn().getHeader("id", String.class);
- String ct = exchange.getIn().getHeader(Exchange.CONTENT_TYPE, String.class);
- exchange.getOut().setBody("Hello " + id + ": " + exchange.getIn().getBody(String.class));
- exchange.getOut().setHeader(Exchange.CONTENT_TYPE, ct);
- }
- });
-
- from("direct:start")
- .toF(getClientURI(), port)
- .to("mock:result");
- }
- };
- }
-
-}
diff --git a/components/camel-jetty/src/test/resources/service.jks b/components/camel-jetty/src/test/resources/service.jks
deleted file mode 100644
index 52321ad..0000000
Binary files a/components/camel-jetty/src/test/resources/service.jks and /dev/null differ
diff --git a/components/camel-jetty/src/test/resources/truststore.jks b/components/camel-jetty/src/test/resources/truststore.jks
deleted file mode 100644
index 44d82a85..0000000
Binary files a/components/camel-jetty/src/test/resources/truststore.jks and /dev/null differ
diff --git a/components/camel-rest-swagger/src/test/java/org/apache/camel/component/rest/swagger/Jetty94ServerFactory.java b/components/camel-rest-swagger/src/test/java/org/apache/camel/component/rest/swagger/Jetty94ServerFactory.java
index c7664b0..cd0fd77 100644
--- a/components/camel-rest-swagger/src/test/java/org/apache/camel/component/rest/swagger/Jetty94ServerFactory.java
+++ b/components/camel-rest-swagger/src/test/java/org/apache/camel/component/rest/swagger/Jetty94ServerFactory.java
@@ -47,7 +47,7 @@ public final class Jetty94ServerFactory extends JettyHttpServerFactory {
@Override
protected ServerConnector createHttpsConnector(final String bindAddress, final HttpsSettings httpsSettings,
final JettySettings jettySettings, final NetworkTrafficListener listener) {
- final SslContextFactory sslContextFactory = new SslContextFactory.Server();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setKeyStorePath(httpsSettings.keyStorePath());
sslContextFactory.setKeyManagerPassword(httpsSettings.keyStorePassword());
diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java
index c28359d..cd0d9f0 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java
@@ -329,7 +329,7 @@ public class SalesforceComponent extends DefaultComponent implements SSLContextP
.orElseGet(() -> Optional.ofNullable(retrieveGlobalSslContextParameters())
.orElseGet(() -> new SSLContextParameters()));
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(contextParameters.createSSLContext(getCamelContext()));
httpClient = createHttpClient(sslContextFactory);
@@ -692,7 +692,7 @@ public class SalesforceComponent extends DefaultComponent implements SSLContextP
// let's work with a copy for IntrospectionSupport so original properties are intact
IntrospectionSupport.setProperties(typeConverter, sslContextParameters, new HashMap<>(properties));
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(sslContextParameters.createSSLContext(camelContext));
final SalesforceHttpClient httpClient = createHttpClient(sslContextFactory);
diff --git a/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/BulkApiIntegrationTest.java b/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/BulkApiIntegrationTest.java
index 5f8b84c..5144994 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/BulkApiIntegrationTest.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/BulkApiIntegrationTest.java
@@ -40,7 +40,7 @@ public class BulkApiIntegrationTest extends AbstractBulkApiTestBase {
final SalesforceComponent sf = context().getComponent("salesforce", SalesforceComponent.class);
final String accessToken = sf.getSession().getAccessToken();
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(new SSLContextParameters().createSSLContext(context));
final HttpClient httpClient = new HttpClient(sslContextFactory);
httpClient.setConnectTimeout(60000);
diff --git a/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/RestApiIntegrationTest.java b/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/RestApiIntegrationTest.java
index 199a7f4..6958e96 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/RestApiIntegrationTest.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/RestApiIntegrationTest.java
@@ -349,7 +349,7 @@ public class RestApiIntegrationTest extends AbstractSalesforceTestBase {
final SalesforceComponent sf = context().getComponent("salesforce", SalesforceComponent.class);
final String accessToken = sf.getSession().getAccessToken();
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(new SSLContextParameters().createSSLContext(context));
final HttpClient httpClient = new HttpClient(sslContextFactory);
httpClient.setConnectTimeout(60000);
@@ -369,7 +369,7 @@ public class RestApiIntegrationTest extends AbstractSalesforceTestBase {
final SalesforceComponent sf = context().getComponent("salesforce", SalesforceComponent.class);
final String accessToken = sf.getSession().getAccessToken();
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(new SSLContextParameters().createSSLContext(context));
final HttpClient httpClient = new HttpClient(sslContextFactory);
httpClient.setConnectTimeout(60000);
diff --git a/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/internal/SessionIntegrationTest.java b/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/internal/SessionIntegrationTest.java
index e651f03..3db4820 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/internal/SessionIntegrationTest.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/test/java/org/apache/camel/component/salesforce/internal/SessionIntegrationTest.java
@@ -39,7 +39,7 @@ public class SessionIntegrationTest extends Assert implements SalesforceSession.
@Test
public void testLogin() throws Exception {
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(new SSLContextParameters().createSSLContext(new DefaultCamelContext()));
final SalesforceHttpClient httpClient = new SalesforceHttpClient(sslContextFactory);
httpClient.setConnectTimeout(TIMEOUT);
diff --git a/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/AbstractSalesforceMojo.java b/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/AbstractSalesforceMojo.java
index 781c36b..c12eaa9 100644
--- a/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/AbstractSalesforceMojo.java
+++ b/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/AbstractSalesforceMojo.java
@@ -224,7 +224,7 @@ abstract class AbstractSalesforceMojo extends AbstractMojo {
// set ssl context parameters
try {
- final SslContextFactory sslContextFactory = new SslContextFactory.Client();
+ final SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setSslContext(sslContextParameters.createSSLContext(new DefaultCamelContext()));
httpClient = new SalesforceHttpClient(sslContextFactory);
diff --git a/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java b/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java
index 79f232d..a4b673b 100644
--- a/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java
+++ b/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java
@@ -178,7 +178,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
// Create ServletContextHandler
ServletContextHandler context = createContext(server, connector, endpoint.getHandlers());
- // setup the WebSocketComponentServlet initial parameters
+ // setup the WebSocketComponentServlet initial parameters
setWebSocketComponentServletInitialParameter(context, endpoint);
server.setHandler(context);
@@ -191,7 +191,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
}
MemoryWebsocketStore memoryStore = new MemoryWebsocketStore();
-
+
// Don't provide a Servlet object as Producer/Consumer will create them later on
connectorRef = new ConnectorRef(server, connector, null, memoryStore);
@@ -228,7 +228,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
WebsocketProducer producer = WebsocketProducer.class.cast(prodcon);
producer.setStore(connectorRef.memoryStore);
}
-
+
}
}
@@ -324,7 +324,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
setProperties(endpoint, parameters);
return endpoint;
}
-
+
protected void setWebSocketComponentServletInitialParameter(ServletContextHandler context, WebsocketEndpoint endpoint) {
if (endpoint.getBufferSize() != null) {
context.setInitParameter("bufferSize", endpoint.getBufferSize().toString());
@@ -502,7 +502,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
sslContextFactory.setSslContext(sslContextParameters.createSSLContext(getCamelContext()));
sslSocketConnector = new ServerConnector(server, sslContextFactory);
} else {
- SslContextFactory sslContextFactory = new SslContextFactory.Server();
+ SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setKeyStorePassword(sslKeyPassword);
sslContextFactory.setKeyManagerPassword(sslPassword);
if (sslKeystore != null) {
@@ -518,7 +518,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
* Override the key/trust store check method as it does not account for a factory that has
* a pre-configured {@link javax.net.ssl.SSLContext}.
*/
- private static final class WebSocketComponentSslContextFactory extends SslContextFactory.Server {
+ private static final class WebSocketComponentSslContextFactory extends SslContextFactory {
// This method is for Jetty 7.0.x ~ 7.4.x
@SuppressWarnings("unused")
public boolean checkConfig() {
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
index da24a15..8dd9846 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
@@ -17,9 +17,11 @@
package org.apache.camel.component.websocket;
import java.io.IOException;
+import java.net.URL;
import java.security.GeneralSecurityException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Properties;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
@@ -49,8 +51,10 @@ import org.junit.Test;
public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport {
+ private static final String NULL_VALUE_MARKER = CamelTestSupport.class.getCanonicalName();
private static List<String> received = new ArrayList<>();
private static CountDownLatch latch = new CountDownLatch(10);
+ private Properties originalValues = new Properties();
private String pwd = "changeit";
private String uri;
private String server = "127.0.0.1";
@@ -61,6 +65,8 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
public void setUp() throws Exception {
port = AvailablePortFinder.getNextAvailable(16300);
+ URL trustStoreUrl = this.getClass().getClassLoader().getResource("jsse/localhost.ks");
+ setSystemProp("javax.net.ssl.trustStore", trustStoreUrl.toURI().getPath());
uri = "websocket://" + server + ":" + port + "/test";
super.setUp();
@@ -94,6 +100,11 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
return context;
}
+ protected void setSystemProp(String key, String value) {
+ String originalValue = System.setProperty(key, value);
+ originalValues.put(key, originalValue != null ? originalValue : NULL_VALUE_MARKER);
+ }
+
protected AsyncHttpClient createAsyncHttpSSLClient() throws IOException, GeneralSecurityException {
AsyncHttpClient c;
@@ -102,17 +113,7 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
DefaultAsyncHttpClientConfig.Builder builder =
new DefaultAsyncHttpClientConfig.Builder();
- SSLContextParameters sslContextParameters = new SSLContextParameters();
-
- KeyStoreParameters truststoreParameters = new KeyStoreParameters();
- truststoreParameters.setResource("jsse/localhost.ks");
- truststoreParameters.setPassword(pwd);
-
- TrustManagersParameters clientSSLTrustManagers = new TrustManagersParameters();
- clientSSLTrustManagers.setKeyStore(truststoreParameters);
- sslContextParameters.setTrustManagers(clientSSLTrustManagers);
-
- SSLContext sslContext = sslContextParameters.createSSLContext(context());
+ SSLContext sslContext = new SSLContextParameters().createSSLContext(context());
JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
builder.setSslContext(ssl);
builder.setAcceptAnyCertificate(true);
@@ -136,7 +137,7 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
latch.countDown();
}
-
+
@Override
public void onOpen(WebSocket websocket) {
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
index 1e1e6ed..b8d8af6 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
@@ -17,9 +17,11 @@
package org.apache.camel.component.websocket;
import java.io.IOException;
+import java.net.URL;
import java.security.GeneralSecurityException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Properties;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
@@ -48,8 +50,10 @@ import org.junit.Test;
public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
+ private static final String NULL_VALUE_MARKER = CamelTestSupport.class.getCanonicalName();
private static List<String> received = new ArrayList<>();
private static CountDownLatch latch = new CountDownLatch(10);
+ private Properties originalValues = new Properties();
private String pwd = "changeit";
private String uri;
private String server = "127.0.0.1";
@@ -60,6 +64,8 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
public void setUp() throws Exception {
port = AvailablePortFinder.getNextAvailable(16300);
+ URL trustStoreUrl = this.getClass().getClassLoader().getResource("jsse/localhost.ks");
+ setSystemProp("javax.net.ssl.trustStore", trustStoreUrl.toURI().getPath());
uri = "websocket://" + server + ":" + port + "/test?sslContextParameters=#sslContextParameters";
super.setUp();
@@ -92,6 +98,11 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
return registry;
}
+ protected void setSystemProp(String key, String value) {
+ String originalValue = System.setProperty(key, value);
+ originalValues.put(key, originalValue != null ? originalValue : NULL_VALUE_MARKER);
+ }
+
protected AsyncHttpClient createAsyncHttpSSLClient() throws IOException, GeneralSecurityException {
AsyncHttpClient c;
@@ -100,17 +111,7 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
DefaultAsyncHttpClientConfig.Builder builder =
new DefaultAsyncHttpClientConfig.Builder();
- SSLContextParameters sslContextParameters = new SSLContextParameters();
-
- KeyStoreParameters truststoreParameters = new KeyStoreParameters();
- truststoreParameters.setResource("jsse/localhost.ks");
- truststoreParameters.setPassword(pwd);
-
- TrustManagersParameters clientSSLTrustManagers = new TrustManagersParameters();
- clientSSLTrustManagers.setKeyStore(truststoreParameters);
- sslContextParameters.setTrustManagers(clientSSLTrustManagers);
-
- SSLContext sslContext = sslContextParameters.createSSLContext(context());
+ SSLContext sslContext = new SSLContextParameters().createSSLContext(context());
JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
builder.setSslContext(ssl);
builder.setAcceptAnyCertificate(true);
@@ -134,7 +135,7 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
latch.countDown();
}
-
+
@Override
public void onOpen(WebSocket websocket) {
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
index 7cd608c..c2d0048 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
@@ -17,6 +17,7 @@
package org.apache.camel.component.websocket;
import java.io.IOException;
+import java.net.URL;
import java.security.GeneralSecurityException;
import java.util.ArrayList;
import java.util.List;
@@ -48,6 +49,7 @@ import org.junit.Test;
public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
+ private static final String NULL_VALUE_MARKER = CamelTestSupport.class.getCanonicalName();
private static List<String> received = new ArrayList<>();
private static CountDownLatch latch = new CountDownLatch(10);
protected Properties originalValues = new Properties();
@@ -60,6 +62,14 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
port = AvailablePortFinder.getNextAvailable(16200);
super.setUp();
+
+ URL trustStoreUrl = this.getClass().getClassLoader().getResource("jsse/localhost.ks");
+ setSystemProp("javax.net.ssl.trustStore", trustStoreUrl.toURI().getPath());
+ }
+
+ protected void setSystemProp(String key, String value) {
+ String originalValue = System.setProperty(key, value);
+ originalValues.put(key, originalValue != null ? originalValue : NULL_VALUE_MARKER);
}
protected AsyncHttpClient createAsyncHttpSSLClient() throws IOException, GeneralSecurityException {
@@ -70,17 +80,7 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
DefaultAsyncHttpClientConfig.Builder builder =
new DefaultAsyncHttpClientConfig.Builder();
- SSLContextParameters sslContextParameters = new SSLContextParameters();
-
- KeyStoreParameters truststoreParameters = new KeyStoreParameters();
- truststoreParameters.setResource("jsse/localhost.ks");
- truststoreParameters.setPassword(pwd);
-
- TrustManagersParameters clientSSLTrustManagers = new TrustManagersParameters();
- clientSSLTrustManagers.setKeyStore(truststoreParameters);
- sslContextParameters.setTrustManagers(clientSSLTrustManagers);
-
- SSLContext sslContext = sslContextParameters.createSSLContext(context());
+ SSLContext sslContext = new SSLContextParameters().createSSLContext(context());
JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
builder.setSslContext(ssl);
builder.setAcceptAnyCertificate(true);
@@ -130,7 +130,7 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
latch.countDown();
}
-
+
@Override
public void onOpen(WebSocket websocket) {
}
diff --git a/parent/pom.xml b/parent/pom.xml
index 004a960..d2e47a3 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -375,7 +375,7 @@
<jedis-client-bundle-version>2.9.0_1</jedis-client-bundle-version>
<jersey-version>2.28</jersey-version>
<jetty92-version>9.2.22.v20170606</jetty92-version>
- <jetty9-version>9.4.18.v20190429</jetty9-version>
+ <jetty9-version>9.4.15.v20190215</jetty9-version>
<jetty-version>${jetty9-version}</jetty-version>
<jetty-plugin-version>${jetty-version}</jetty-plugin-version>
<jetty-runner-groupId>org.eclipse.jetty</jetty-runner-groupId>