You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by mm...@apache.org on 2018/11/25 19:25:42 UTC
[pulsar] branch master updated: Fixes for Java 11 (#3006)
This is an automated email from the ASF dual-hosted git repository.
mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new 716a6b4 Fixes for Java 11 (#3006)
716a6b4 is described below
commit 716a6b46fb18929a1f85851377098891e84ee114
Author: Matteo Merli <mm...@apache.org>
AuthorDate: Sun Nov 25 11:25:37 2018 -0800
Fixes for Java 11 (#3006)
* [java-11] Compilation fixes
* Runtime fixes
* Fix dependencies for discovery service
* Fixed json mapper provider in new jersey
* Fixed license files
* Added hk2 dep to proxy
* Added hk2 deps to pulsar-client-admin as well
* added missing jar in license file
* More license fixes
---
distribution/server/licenses/LICENSE-Lombok.txt | 19 ------
distribution/server/pom.xml | 6 ++
distribution/server/src/assemble/LICENSE.bin.txt | 70 ++++++++++++----------
distribution/server/src/assemble/bin.xml | 2 +
pom.xml | 60 +++++++++++++++++--
.../pulsar/broker/web/JsonMapperProvider.java | 36 +++++++++++
pulsar-broker/pom.xml | 18 +++++-
.../org/apache/pulsar/broker/web/WebService.java | 14 ++---
.../broker/auth/MockedPulsarServiceBaseTest.java | 9 +--
.../worker/PulsarWorkerAssignmentTest.java | 9 ++-
.../apache/pulsar/io/PulsarFunctionAdminTest.java | 7 +--
.../apache/pulsar/io/PulsarFunctionE2ETest.java | 23 ++++---
pulsar-client-admin/pom.xml | 15 +++++
.../org/apache/pulsar/client/admin/Topics.java | 1 -
.../pulsar/common/policies/data/TenantInfo.java | 3 -
.../org/apache/pulsar/common/stats/JvmMetrics.java | 42 ++++++++-----
.../org/apache/pulsar/common/stats/Metrics.java | 3 +-
pulsar-discovery-service/pom.xml | 15 +++++
pulsar-functions/pom.xml | 20 -------
pulsar-functions/proto/pom.xml | 11 ++++
.../runtime/src/test/resources/log4j2.yml | 37 ------------
.../worker/src/test/resources/log4j2.yml | 37 ------------
pulsar-proxy/pom.xml | 15 +++++
.../org/apache/pulsar/proxy/server/WebServer.java | 5 +-
pulsar-sql/presto-distribution/LICENSE | 10 +++-
.../pulsar/websocket/service/ProxyServer.java | 7 +--
pulsar-zookeeper-utils/pom.xml | 3 +-
pulsar-zookeeper/pom.xml | 4 +-
28 files changed, 282 insertions(+), 219 deletions(-)
diff --git a/distribution/server/licenses/LICENSE-Lombok.txt b/distribution/server/licenses/LICENSE-Lombok.txt
deleted file mode 100644
index 5da7dbe..0000000
--- a/distribution/server/licenses/LICENSE-Lombok.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2009-2015 The Project Lombok Authors.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/distribution/server/pom.xml b/distribution/server/pom.xml
index e9525df..739f82a 100644
--- a/distribution/server/pom.xml
+++ b/distribution/server/pom.xml
@@ -56,6 +56,12 @@
<groupId>org.apache.pulsar</groupId>
<artifactId>pulsar-client-tools</artifactId>
<version>${project.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-testing</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
diff --git a/distribution/server/src/assemble/LICENSE.bin.txt b/distribution/server/src/assemble/LICENSE.bin.txt
index 57f9638..bd6e8ae 100644
--- a/distribution/server/src/assemble/LICENSE.bin.txt
+++ b/distribution/server/src/assemble/LICENSE.bin.txt
@@ -417,25 +417,25 @@ The Apache Software License, Version 2.0
* HttpClient
- org.apache.httpcomponents-httpclient-4.5.5.jar
- org.apache.httpcomponents-httpcore-4.4.9.jar
- * Google Error Prone Annotations - com.google.errorprone-error_prone_annotations-2.1.2.jar
+ * Google Error Prone Annotations - com.google.errorprone-error_prone_annotations-2.2.0.jar
* OkHttp - com.squareup.okhttp-okhttp-2.5.0.jar
* Okio - com.squareup.okio-okio-1.13.0.jar
* Javassist -- org.javassist-javassist-3.21.0-GA.jar
* gRPC
- - io.grpc-grpc-all-1.12.0.jar
- - io.grpc-grpc-auth-1.12.0.jar
- - io.grpc-grpc-context-1.12.0.jar
- - io.grpc-grpc-core-1.12.0.jar
- - io.grpc-grpc-netty-1.12.0.jar
- - io.grpc-grpc-okhttp-1.12.0.jar
- - io.grpc-grpc-protobuf-1.12.0.jar
- - io.grpc-grpc-protobuf-lite-1.12.0.jar
- - io.grpc-grpc-protobuf-nano-1.12.0.jar
- - io.grpc-grpc-stub-1.12.0.jar
+ - io.grpc-grpc-all-1.16.1.jar
+ - io.grpc-grpc-auth-1.16.1.jar
+ - io.grpc-grpc-context-1.16.1.jar
+ - io.grpc-grpc-core-1.16.1.jar
+ - io.grpc-grpc-netty-1.16.1.jar
+ - io.grpc-grpc-okhttp-1.16.1.jar
+ - io.grpc-grpc-protobuf-1.16.1.jar
+ - io.grpc-grpc-protobuf-lite-1.16.1.jar
+ - io.grpc-grpc-protobuf-nano-1.16.1.jar
+ - io.grpc-grpc-stub-1.16.1.jar
- io.grpc-grpc-testing-1.12.0.jar
* OpenCensus
- - io.opencensus-opencensus-api-0.11.0.jar
- - io.opencensus-opencensus-contrib-grpc-metrics-0.11.0.jar
+ - io.opencensus-opencensus-api-0.12.3.jar
+ - io.opencensus-opencensus-contrib-grpc-metrics-0.12.3.jar
* Paranamer
- com.thoughtworks.paranamer-paranamer-2.7.jar
* Jodah
@@ -469,6 +469,8 @@ The Apache Software License, Version 2.0
- io.dropwizard.metrics-metrics-jvm-3.1.0.jar
* Prometheus
- io.prometheus-simpleclient_httpserver-0.5.0.jar
+ * JavaX Injection
+ - javax.inject-javax.inject-1.jar
BSD 3-clause "New" or "Revised" License
@@ -476,7 +478,7 @@ BSD 3-clause "New" or "Revised" License
- com.google.auth-google-auth-library-credentials-0.9.0.jar -- licenses/LICENSE-google-auth-library.txt
* JLine -- jline-jline-0.9.94.jar -- licenses/LICENSE.JLine.txt
* LevelDB -- (included in org.rocksdb.*.jar) -- licenses/LICENSE-LevelDB.txt
- * JSR305 -- com.google.code.findbugs-jsr305-3.0.0.jar -- licenses/LICENSE-JSR305.txt
+ * JSR305 -- com.google.code.findbugs-jsr305-3.0.2.jar -- licenses/LICENSE-JSR305.txt
BSD 2-Clause License
* HdrHistogram -- org.hdrhistogram-HdrHistogram-2.1.9.jar -- licenses/LICENSE-HdrHistogram.txt
@@ -487,7 +489,8 @@ MIT License
- org.slf4j-jul-to-slf4j-1.7.25.jar
- org.slf4j-slf4j-api-1.7.25.jar
- org.slf4j-jcl-over-slf4j-1.7.25.jar
- * Lombok -- org.projectlombok-lombok-1.18.0.jar -- licenses/LICENSE-Lombok.txt
+ * Animal Sniffer Annotations
+ - org.codehaus.mojo-animal-sniffer-annotations-1.17.jar
Protocol Buffers License
* Protocol Buffers
@@ -498,33 +501,36 @@ Protocol Buffers License
CDDL-1.1 -- licenses/LICENSE-CDDL-1.1.txt
* Java Annotations API
- javax.annotation-javax.annotation-api-1.2.jar
+ - javax.activation-javax.activation-api-1.2.0.jar
+ - javax.xml.bind-activation-1.0.2.jar
+ - javax.xml.bind-jaxb-api-2.3.1.jar
* Java Servlet API -- javax.servlet-javax.servlet-api-3.1.0.jar
* WebSocket Server API -- javax.websocket-javax.websocket-client-api-1.0.jar
* Java Web Service REST API -- javax.ws.rs-javax.ws.rs-api-2.1.jar
* HK2 - Dependency Injection Kernel
- - org.glassfish.hk2-hk2-api-2.5.0-b30.jar
- - org.glassfish.hk2-hk2-locator-2.5.0-b30.jar
- - org.glassfish.hk2-hk2-utils-2.5.0-b30.jar
+ - org.glassfish.hk2-hk2-api-2.5.0-b42.jar
+ - org.glassfish.hk2-hk2-locator-2.5.0-b42.jar
+ - org.glassfish.hk2-hk2-utils-2.5.0-b42.jar
- org.glassfish.hk2-osgi-resource-locator-1.0.1.jar
- - org.glassfish.hk2.external-aopalliance-repackaged-2.5.0-b30.jar
- - org.glassfish.hk2.external-javax.inject-2.5.0-b30.jar
+ - org.glassfish.hk2.external-aopalliance-repackaged-2.5.0-b42.jar
+ - org.glassfish.hk2.external-javax.inject-2.5.0-b42.jar
* Jersey
- - org.glassfish.jersey.bundles.repackaged-jersey-guava-2.25.jar
- - org.glassfish.jersey.containers-jersey-container-servlet-2.25.jar
- - org.glassfish.jersey.containers-jersey-container-servlet-core-2.25.jar
- - org.glassfish.jersey.core-jersey-client-2.25.jar
- - org.glassfish.jersey.core-jersey-common-2.25.jar
- - org.glassfish.jersey.core-jersey-server-2.25.jar
- - org.glassfish.jersey.ext-jersey-entity-filtering-2.25.jar
- - org.glassfish.jersey.media-jersey-media-jaxb-2.25.jar
- - org.glassfish.jersey.media-jersey-media-json-jackson-2.25.jar
- - org.glassfish.jersey.media-jersey-media-multipart-2.25.jar
+ - org.glassfish.jersey.containers-jersey-container-servlet-2.27.jar
+ - org.glassfish.jersey.containers-jersey-container-servlet-core-2.27.jar
+ - org.glassfish.jersey.core-jersey-client-2.27.jar
+ - org.glassfish.jersey.core-jersey-common-2.27.jar
+ - org.glassfish.jersey.core-jersey-server-2.27.jar
+ - org.glassfish.jersey.ext-jersey-entity-filtering-2.27.jar
+ - org.glassfish.jersey.media-jersey-media-jaxb-2.27.jar
+ - org.glassfish.jersey.media-jersey-media-json-jackson-2.27.jar
+ - org.glassfish.jersey.media-jersey-media-multipart-2.27.jar
+ - org.glassfish.jersey.inject-jersey-hk2-2.27.jar
* Mimepull -- org.jvnet.mimepull-mimepull-1.9.6.jar
Eclipse Public License 1.0 -- licenses/LICENSE-AspectJ.txt
* AspectJ
- - org.aspectj-aspectjrt-1.9.1.jar
- - org.aspectj-aspectjweaver-1.9.1.jar
+ - org.aspectj-aspectjrt-1.9.2.jar
+ - org.aspectj-aspectjweaver-1.9.2.jar
Public Domain
* XZ for Java -- licenses/LICENSE-xz.txt
diff --git a/distribution/server/src/assemble/bin.xml b/distribution/server/src/assemble/bin.xml
index 72ee09b..c2d5996 100644
--- a/distribution/server/src/assemble/bin.xml
+++ b/distribution/server/src/assemble/bin.xml
@@ -137,6 +137,8 @@
<!-- Explicitely remove JUnit which is getting pulled in even
though it's set to the scope 'test' -->
<exclude>junit:junit</exclude>
+
+ <exclude>org.projectlombok:lombok</exclude>
</excludes>
</dependencySet>
</dependencySets>
diff --git a/pom.xml b/pom.xml
index ffdca39..da02e5b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -146,10 +146,10 @@ flexible messaging model and an intuitive client API.</description>
<netty.version>4.1.22.Final</netty.version>
<storm.version>1.0.5</storm.version>
<jetty.version>9.4.12.v20180830</jetty.version>
- <jersey.version>2.25</jersey.version>
+ <jersey.version>2.27</jersey.version>
<athenz.version>1.7.17</athenz.version>
<prometheus.version>0.5.0</prometheus.version>
- <aspectj.version>1.9.1</aspectj.version>
+ <aspectj.version>1.9.2</aspectj.version>
<rocksdb.version>5.13.3</rocksdb.version>
<slf4j.version>1.7.25</slf4j.version>
<commons.collections.version>3.2.2</commons.collections.version>
@@ -163,7 +163,7 @@ flexible messaging model and an intuitive client API.</description>
<protobuf2.version>2.4.1</protobuf2.version>
<protobuf3.version>3.5.1</protobuf3.version>
<protoc3.version>3.5.1-1</protoc3.version>
- <grpc.version>1.12.0</grpc.version>
+ <grpc.version>1.16.1</grpc.version>
<protoc-gen-grpc-java.version>1.0.0</protoc-gen-grpc-java.version>
<gson.version>2.8.2</gson.version>
<sketches.version>0.8.3</sketches.version>
@@ -181,6 +181,7 @@ flexible messaging model and an intuitive client API.</description>
<flink.version>1.6.0</flink.version>
<scala.binary.version>2.11</scala.binary.version>
<debezium.version>0.8.2</debezium.version>
+ <opencensus.version>0.12.3</opencensus.version>
<!-- test dependencies -->
<arquillian-cube.version>1.15.1</arquillian-cube.version>
@@ -190,8 +191,9 @@ flexible messaging model and an intuitive client API.</description>
<testcontainers.version>1.8.0</testcontainers.version>
<!-- Plugin dependencies -->
- <protobuf-maven-plugin.version>0.5.0</protobuf-maven-plugin.version>
+ <protobuf-maven-plugin.version>0.6.1</protobuf-maven-plugin.version>
<exec-maven-plugin.version>1.6.0</exec-maven-plugin.version>
+ <aspectj-maven-plugin.version>1.11.1</aspectj-maven-plugin.version>
</properties>
<dependencyManagement>
@@ -520,6 +522,12 @@ flexible messaging model and an intuitive client API.</description>
<artifactId>jersey-client</artifactId>
<version>${jersey.version}</version>
</dependency>
+
+ <dependency>
+ <groupId>org.glassfish.jersey.inject</groupId>
+ <artifactId>jersey-hk2</artifactId>
+ <version>${jersey.version}</version>
+ </dependency>
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
@@ -576,6 +584,12 @@ flexible messaging model and an intuitive client API.</description>
</dependency>
<dependency>
+ <groupId>com.fasterxml.jackson.module</groupId>
+ <artifactId>jackson-module-jaxb-annotations</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+
+ <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
@@ -863,6 +877,41 @@ flexible messaging model and an intuitive client API.</description>
<artifactId>assertj-core</artifactId>
<version>3.11.1</version>
</dependency>
+
+ <dependency>
+ <groupId>org.projectlombok</groupId>
+ <artifactId>lombok</artifactId>
+ <version>1.18.4</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <version>1.2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.3.1</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>activation</artifactId>
+ <version>1.0.2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>io.opencensus</groupId>
+ <artifactId>opencensus-api</artifactId>
+ <version>${opencensus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.opencensus</groupId>
+ <artifactId>opencensus-contrib-grpc-metrics</artifactId>
+ <version>${opencensus.version}</version>
+ </dependency>
</dependencies>
</dependencyManagement>
@@ -908,7 +957,6 @@ flexible messaging model and an intuitive client API.</description>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
- <version>1.18.0</version>
<scope>provided</scope>
</dependency>
@@ -1224,7 +1272,7 @@ flexible messaging model and an intuitive client API.</description>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.7.0</version>
+ <version>3.8.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
diff --git a/pulsar-broker-common/src/main/java/org/apache/pulsar/broker/web/JsonMapperProvider.java b/pulsar-broker-common/src/main/java/org/apache/pulsar/broker/web/JsonMapperProvider.java
new file mode 100644
index 0000000..cb4ef7f
--- /dev/null
+++ b/pulsar-broker-common/src/main/java/org/apache/pulsar/broker/web/JsonMapperProvider.java
@@ -0,0 +1,36 @@
+/**
+ * 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.pulsar.broker.web;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+import javax.ws.rs.ext.ContextResolver;
+import javax.ws.rs.ext.Provider;
+
+import org.apache.pulsar.common.util.ObjectMapperFactory;
+
+@Provider
+public class JsonMapperProvider implements ContextResolver<ObjectMapper> {
+ private final ObjectMapper mapper = ObjectMapperFactory.create();
+
+ @Override
+ public ObjectMapper getContext(Class<?> type) {
+ return mapper;
+ }
+}
\ No newline at end of file
diff --git a/pulsar-broker/pom.xml b/pulsar-broker/pom.xml
index b7905fe..7ba1f15 100644
--- a/pulsar-broker/pom.xml
+++ b/pulsar-broker/pom.xml
@@ -174,6 +174,11 @@
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
</dependency>
+
+ <dependency>
+ <groupId>org.glassfish.jersey.inject</groupId>
+ <artifactId>jersey-hk2</artifactId>
+ </dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
@@ -277,14 +282,23 @@
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>activation</artifactId>
+ </dependency>
</dependencies>
<build>
<plugins>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
+ <groupId>com.github.m50d</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
- <version>1.10</version>
+ <version>${aspectj-maven-plugin.version}</version>
<configuration>
<complianceLevel>1.8</complianceLevel>
<source>1.8</source>
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/web/WebService.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/web/WebService.java
index 9fa6ac9..04df62f 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/web/WebService.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/web/WebService.java
@@ -18,6 +18,10 @@
*/
package org.apache.pulsar.broker.web;
+import com.google.common.collect.Lists;
+
+import io.prometheus.client.jetty.JettyStatisticsCollector;
+
import java.security.GeneralSecurityException;
import java.util.ArrayList;
import java.util.EnumSet;
@@ -29,7 +33,6 @@ import javax.servlet.DispatcherType;
import org.apache.pulsar.broker.PulsarServerException;
import org.apache.pulsar.broker.PulsarService;
-import org.apache.pulsar.common.util.ObjectMapperFactory;
import org.apache.pulsar.common.util.SecurityUtility;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Server;
@@ -54,11 +57,6 @@ import org.glassfish.jersey.servlet.ServletContainer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
-import com.google.common.collect.Lists;
-
-import io.prometheus.client.jetty.JettyStatisticsCollector;
-
/**
* Web Service embedded into Pulsar
*/
@@ -111,11 +109,9 @@ public class WebService implements AutoCloseable {
}
public void addRestResources(String basePath, String javaPackages, boolean requiresAuthentication, Map<String,Object> attributeMap) {
- JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider();
- provider.setMapper(ObjectMapperFactory.create());
ResourceConfig config = new ResourceConfig();
config.packages("jersey.config.server.provider.packages", javaPackages);
- config.register(provider);
+ config.register(JsonMapperProvider.class);
config.register(MultiPartFeature.class);
ServletHolder servletHolder = new ServletHolder(new ServletContainer(config));
servletHolder.setAsyncSupported(true);
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java b/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
index aa6dd71..e0130d2 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
@@ -21,6 +21,7 @@ package org.apache.pulsar.broker.auth;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
+import com.google.common.util.concurrent.MoreExecutors;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import java.io.IOException;
@@ -29,8 +30,8 @@ import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CompletableFuture;
-import java.util.concurrent.Executors;
import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
import java.util.function.Predicate;
import java.util.function.Supplier;
@@ -38,17 +39,13 @@ import java.util.function.Supplier;
import org.apache.bookkeeper.client.BKException;
import org.apache.bookkeeper.client.BookKeeper;
import org.apache.bookkeeper.client.PulsarMockBookKeeper;
-import org.apache.bookkeeper.conf.ClientConfiguration;
import org.apache.bookkeeper.test.PortManager;
import org.apache.bookkeeper.util.ZkUtils;
import org.apache.pulsar.broker.BookKeeperClientFactory;
import org.apache.pulsar.broker.PulsarService;
import org.apache.pulsar.broker.ServiceConfiguration;
import org.apache.pulsar.broker.namespace.NamespaceService;
-import org.apache.pulsar.broker.service.schema.BookkeeperSchemaStorage;
import org.apache.pulsar.client.admin.PulsarAdmin;
-import org.apache.pulsar.client.api.Authentication;
-import org.apache.pulsar.client.api.Message;
import org.apache.pulsar.client.api.PulsarClient;
import org.apache.pulsar.compaction.Compactor;
import org.apache.pulsar.zookeeper.ZooKeeperClientFactory;
@@ -60,8 +57,6 @@ import org.apache.zookeeper.data.ACL;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.common.util.concurrent.MoreExecutors;
-
/**
* Base class for all tests that need a Pulsar instance without a ZK and BK cluster
*/
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/functions/worker/PulsarWorkerAssignmentTest.java b/pulsar-broker/src/test/java/org/apache/pulsar/functions/worker/PulsarWorkerAssignmentTest.java
index 1b4c2aa..5210491 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/functions/worker/PulsarWorkerAssignmentTest.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/functions/worker/PulsarWorkerAssignmentTest.java
@@ -23,6 +23,9 @@ import static org.mockito.Mockito.spy;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertFalse;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.URI;
@@ -40,11 +43,11 @@ import org.apache.pulsar.client.admin.PulsarAdmin;
import org.apache.pulsar.client.admin.PulsarAdminException;
import org.apache.pulsar.client.api.ClientBuilder;
import org.apache.pulsar.client.api.PulsarClient;
+import org.apache.pulsar.common.functions.FunctionConfig;
import org.apache.pulsar.common.functions.Utils;
import org.apache.pulsar.common.policies.data.ClusterData;
import org.apache.pulsar.common.policies.data.TenantInfo;
import org.apache.pulsar.functions.proto.Function.Assignment;
-import org.apache.pulsar.common.functions.FunctionConfig;
import org.apache.pulsar.zookeeper.LocalBookkeeperEnsemble;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -52,10 +55,6 @@ import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
-import com.google.common.collect.Sets;
-
-import jersey.repackaged.com.google.common.collect.Lists;
-
/**
* Test Pulsar sink on function
*
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionAdminTest.java b/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionAdminTest.java
index 415a814..a2a5b28 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionAdminTest.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionAdminTest.java
@@ -21,6 +21,9 @@ package org.apache.pulsar.io;
import static org.apache.commons.lang3.StringUtils.isNotBlank;
import static org.mockito.Mockito.spy;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.URL;
@@ -53,10 +56,6 @@ import org.slf4j.LoggerFactory;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
-import com.google.common.collect.Sets;
-
-import jersey.repackaged.com.google.common.collect.Lists;
-
/**
* Test Pulsar sink on function
*
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionE2ETest.java b/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionE2ETest.java
index 4dbdf3b..6d89634 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionE2ETest.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/io/PulsarFunctionE2ETest.java
@@ -26,10 +26,17 @@ import static org.testng.Assert.assertFalse;
import static org.testng.Assert.assertNotEquals;
import static org.testng.Assert.assertTrue;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.URL;
-import java.util.*;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
import java.util.concurrent.TimeUnit;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -42,8 +49,15 @@ import org.apache.pulsar.broker.loadbalance.impl.SimpleLoadManagerImpl;
import org.apache.pulsar.client.admin.BrokerStats;
import org.apache.pulsar.client.admin.PulsarAdmin;
import org.apache.pulsar.client.admin.PulsarAdminException;
-import org.apache.pulsar.client.api.*;
+import org.apache.pulsar.client.api.Authentication;
+import org.apache.pulsar.client.api.ClientBuilder;
+import org.apache.pulsar.client.api.Consumer;
+import org.apache.pulsar.client.api.Message;
+import org.apache.pulsar.client.api.Producer;
+import org.apache.pulsar.client.api.PulsarClient;
+import org.apache.pulsar.client.api.Schema;
import org.apache.pulsar.client.impl.auth.AuthenticationTls;
+import org.apache.pulsar.common.functions.FunctionConfig;
import org.apache.pulsar.common.functions.Utils;
import org.apache.pulsar.common.policies.data.ClusterData;
import org.apache.pulsar.common.policies.data.FunctionStats;
@@ -51,7 +65,6 @@ import org.apache.pulsar.common.policies.data.SubscriptionStats;
import org.apache.pulsar.common.policies.data.TenantInfo;
import org.apache.pulsar.functions.proto.InstanceCommunication.FunctionStatus;
import org.apache.pulsar.functions.proto.InstanceCommunication.FunctionStatusList;
-import org.apache.pulsar.common.functions.FunctionConfig;
import org.apache.pulsar.functions.worker.FunctionRuntimeManager;
import org.apache.pulsar.functions.worker.WorkerConfig;
import org.apache.pulsar.functions.worker.WorkerService;
@@ -63,10 +76,6 @@ import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
-import com.google.common.collect.Sets;
-
-import jersey.repackaged.com.google.common.collect.Lists;
-
/**
* Test Pulsar sink on function
*
diff --git a/pulsar-client-admin/pom.xml b/pulsar-client-admin/pom.xml
index 79625bf..b87962f 100644
--- a/pulsar-client-admin/pom.xml
+++ b/pulsar-client-admin/pom.xml
@@ -67,6 +67,21 @@
</dependency>
<dependency>
+ <groupId>org.glassfish.jersey.inject</groupId>
+ <artifactId>jersey-hk2</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>activation</artifactId>
+ </dependency>
+
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
</dependency>
diff --git a/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/Topics.java b/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/Topics.java
index 1994275..f3f95ac 100644
--- a/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/Topics.java
+++ b/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/Topics.java
@@ -36,7 +36,6 @@ import org.apache.pulsar.common.policies.data.PartitionedTopicInternalStats;
import org.apache.pulsar.common.policies.data.PartitionedTopicStats;
import org.apache.pulsar.common.policies.data.PersistentTopicInternalStats;
import org.apache.pulsar.common.policies.data.TopicStats;
-import org.omg.CosNaming.NamingContextPackage.NotFound;
import com.google.gson.JsonObject;
diff --git a/pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/TenantInfo.java b/pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/TenantInfo.java
index c03eb91..b8f6b63 100644
--- a/pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/TenantInfo.java
+++ b/pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/TenantInfo.java
@@ -22,11 +22,8 @@ import com.google.common.collect.Sets;
import java.util.Set;
-import javax.xml.bind.annotation.XmlRootElement;
-
import lombok.Data;
-@XmlRootElement
@Data
public class TenantInfo {
/**
diff --git a/pulsar-common/src/main/java/org/apache/pulsar/common/stats/JvmMetrics.java b/pulsar-common/src/main/java/org/apache/pulsar/common/stats/JvmMetrics.java
index 6353dfa..15dfd86 100644
--- a/pulsar-common/src/main/java/org/apache/pulsar/common/stats/JvmMetrics.java
+++ b/pulsar-common/src/main/java/org/apache/pulsar/common/stats/JvmMetrics.java
@@ -18,31 +18,32 @@
*/
package org.apache.pulsar.common.stats;
+import com.google.common.collect.Lists;
+
+import io.netty.buffer.PoolArenaMetric;
+import io.netty.buffer.PoolChunkListMetric;
+import io.netty.buffer.PoolChunkMetric;
+import io.netty.buffer.PooledByteBufAllocator;
+import io.netty.util.internal.PlatformDependent;
+
+import java.lang.management.BufferPoolMXBean;
import java.lang.management.ManagementFactory;
import java.lang.reflect.Field;
+import java.nio.ByteBuffer;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicLong;
import javax.management.MBeanServer;
import javax.management.MalformedObjectNameException;
import javax.management.ObjectName;
-import org.apache.pulsar.common.stats.Metrics;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.common.collect.Lists;
-
-import io.netty.buffer.PoolArenaMetric;
-import io.netty.buffer.PoolChunkListMetric;
-import io.netty.buffer.PoolChunkMetric;
-import io.netty.buffer.PooledByteBufAllocator;
-import io.netty.util.internal.PlatformDependent;
-import java.util.concurrent.atomic.AtomicLong;
-
public class JvmMetrics {
private volatile long accumulatedYoungGcCount = 0;
@@ -54,10 +55,10 @@ public class JvmMetrics {
private volatile long currentOldGcCount = 0;
private volatile long accumulatedOldGcTime = 0;
private volatile long currentOldGcTime = 0;
-
+
private static final Logger log = LoggerFactory.getLogger(JvmMetrics.class);
private static Field directMemoryUsage = null;
-
+
private final String componentName;
static {
try {
@@ -87,7 +88,7 @@ public class JvmMetrics {
m.put("jvm_total_memory", r.totalMemory());
m.put("jvm_direct_memory_used", getJvmDirectMemoryUsed());
- m.put("jvm_max_direct_memory", sun.misc.VM.maxDirectMemory());
+ m.put("jvm_max_direct_memory", PlatformDependent.maxDirectMemory());
m.put("jvm_thread_cnt", getThreadCount());
m.put("jvm_gc_young_pause", currentYoungGcTime);
@@ -127,7 +128,18 @@ public class JvmMetrics {
}
}
}
- return sun.misc.SharedSecrets.getJavaNioAccess().getDirectBufferPool().getMemoryUsed();
+
+
+
+ List<BufferPoolMXBean> pools = ManagementFactory.getPlatformMXBeans(BufferPoolMXBean.class);
+ for (BufferPoolMXBean pool : pools) {
+ if (pool.getName().equals("direct")) {
+ return pool.getMemoryUsed();
+ }
+ }
+
+ // Couldnt get direct memory usage
+ return -1;
}
private static ObjectName youngGenName = null;
@@ -178,7 +190,7 @@ public class JvmMetrics {
return parentThreadGroup.activeCount();
}
-
+
private Metrics createMetrics() {
return createMetrics(Collections.singletonMap("metric", "jvm_metrics"));
}
diff --git a/pulsar-common/src/main/java/org/apache/pulsar/common/stats/Metrics.java b/pulsar-common/src/main/java/org/apache/pulsar/common/stats/Metrics.java
index 045acc1..fe52ee8 100644
--- a/pulsar-common/src/main/java/org/apache/pulsar/common/stats/Metrics.java
+++ b/pulsar-common/src/main/java/org/apache/pulsar/common/stats/Metrics.java
@@ -23,7 +23,6 @@ import java.util.Map;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.google.common.base.Objects;
import com.google.common.collect.Maps;
@@ -47,7 +46,7 @@ public class Metrics {
metrics = Maps.newTreeMap();
dimensions = Maps.newHashMap();
}
-
+
// hide constructor
protected Metrics(Map<String, String> unmodifiableDimensionMap) {
this.metrics = Maps.newTreeMap();
diff --git a/pulsar-discovery-service/pom.xml b/pulsar-discovery-service/pom.xml
index 5480013..04e5cd2 100644
--- a/pulsar-discovery-service/pom.xml
+++ b/pulsar-discovery-service/pom.xml
@@ -126,6 +126,21 @@
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
</dependency>
+
+ <dependency>
+ <groupId>org.glassfish.jersey.inject</groupId>
+ <artifactId>jersey-hk2</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>activation</artifactId>
+ </dependency>
<dependency>
<groupId>${project.groupId}</groupId>
diff --git a/pulsar-functions/pom.xml b/pulsar-functions/pom.xml
index 6de88a8..06ceca5 100644
--- a/pulsar-functions/pom.xml
+++ b/pulsar-functions/pom.xml
@@ -45,24 +45,4 @@
<module>secrets</module>
</modules>
- <dependencyManagement>
- <dependencies>
-
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <version>1.16.12</version>
- </dependency>
-
- </dependencies>
- </dependencyManagement>
-
- <dependencies>
- <dependency>
- <groupId>org.projectlombok</groupId>
- <artifactId>lombok</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
</project>
diff --git a/pulsar-functions/proto/pom.xml b/pulsar-functions/proto/pom.xml
index 951639f..5bae183 100644
--- a/pulsar-functions/proto/pom.xml
+++ b/pulsar-functions/proto/pom.xml
@@ -42,6 +42,17 @@
</dependency>
<dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-java-util</artifactId>
+ <version>${protobuf3.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ </dependency>
+
+ <dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-all</artifactId>
<exclusions>
diff --git a/pulsar-functions/runtime/src/test/resources/log4j2.yml b/pulsar-functions/runtime/src/test/resources/log4j2.yml
deleted file mode 100644
index fb99e32..0000000
--- a/pulsar-functions/runtime/src/test/resources/log4j2.yml
+++ /dev/null
@@ -1,37 +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.
-#
-
-Configuration:
- name: test
-
- Appenders:
-
- # Console
- Console:
- name: Console
- target: SYSTEM_OUT
- PatternLayout:
- Pattern: "%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"
-
- Loggers:
-
- Root:
- level: info
- AppenderRef:
- - ref: Console
\ No newline at end of file
diff --git a/pulsar-functions/worker/src/test/resources/log4j2.yml b/pulsar-functions/worker/src/test/resources/log4j2.yml
deleted file mode 100644
index 807c8b4..0000000
--- a/pulsar-functions/worker/src/test/resources/log4j2.yml
+++ /dev/null
@@ -1,37 +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.
-#
-
-Configuration:
- name: test
-
- Appenders:
-
- # Console
- Console:
- name: Console
- target: SYSTEM_OUT
- PatternLayout:
- Pattern: "%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"
-
- Loggers:
-
- Root:
- level: info
- AppenderRef:
- - ref: Console
diff --git a/pulsar-proxy/pom.xml b/pulsar-proxy/pom.xml
index 47955d3..05e2b39 100644
--- a/pulsar-proxy/pom.xml
+++ b/pulsar-proxy/pom.xml
@@ -90,6 +90,21 @@
</dependency>
<dependency>
+ <groupId>org.glassfish.jersey.inject</groupId>
+ <artifactId>jersey-hk2</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>activation</artifactId>
+ </dependency>
+
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
</dependency>
diff --git a/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/WebServer.java b/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/WebServer.java
index cf4469b..76e3b40 100644
--- a/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/WebServer.java
+++ b/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/WebServer.java
@@ -39,6 +39,7 @@ import javax.servlet.DispatcherType;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.pulsar.broker.authentication.AuthenticationService;
import org.apache.pulsar.broker.web.AuthenticationFilter;
+import org.apache.pulsar.broker.web.JsonMapperProvider;
import org.apache.pulsar.common.util.ObjectMapperFactory;
import org.apache.pulsar.common.util.SecurityUtility;
import org.eclipse.jetty.server.Connector;
@@ -148,11 +149,9 @@ public class WebServer {
}
public void addRestResources(String basePath, String javaPackages, String attribute, Object attributeValue) {
- JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider();
- provider.setMapper(ObjectMapperFactory.create());
ResourceConfig config = new ResourceConfig();
config.packages("jersey.config.server.provider.packages", javaPackages);
- config.register(provider);
+ config.register(JsonMapperProvider.class);
ServletHolder servletHolder = new ServletHolder(new ServletContainer(config));
servletHolder.setAsyncSupported(true);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
diff --git a/pulsar-sql/presto-distribution/LICENSE b/pulsar-sql/presto-distribution/LICENSE
index 866ba23..201269c 100644
--- a/pulsar-sql/presto-distribution/LICENSE
+++ b/pulsar-sql/presto-distribution/LICENSE
@@ -372,7 +372,7 @@ The Apache Software License, Version 2.0
- rocksdbjni-5.13.3.jar
* SnakeYAML
- snakeyaml-1.17.jar
- - snakeyaml-1.23.jar
+ - snakeyaml-1.23.jar
* Snappy Java
- snappy-java-1.1.1.3.jar
* Bean Validation API
@@ -413,7 +413,9 @@ BSD License
- paranamer-2.7.jar
MIT License
- * Animal Sniffer Annotations -- animal-sniffer-annotations-1.14.jar
+ * Animal Sniffer Annotations
+ - animal-sniffer-annotations-1.14.jar
+ - animal-sniffer-annotations-1.17.jar
* Checker Qua -- checker-compat-qual-2.0.0.jar
* PCollections
- pcollections-2.1.2.jar
@@ -432,7 +434,10 @@ CDDL - 1.0
CDDL-1.1 -- licenses/LICENSE-CDDL-1.1.txt
* Java Annotations API
+ - javax.annotation-api-1.2.jar
- javax.annotation-api-1.3.1.jar
+ - javax.activation-api-1.2.0.jar
+ - activation-1.0.2.jar
* HK2 - Dependency Injection Kernel
- hk2-api-2.5.0-b42.jar
- hk2-locator-2.5.0-b42.jar
@@ -449,6 +454,7 @@ CDDL-1.1 -- licenses/LICENSE-CDDL-1.1.txt
* JavaBeans(TM) Activation Framework -- activation-1.1.1.jar
* JAXB
- jaxb-api-2.2.6.jar
+ - jaxb-api-2.3.1.jar
- jaxb-impl-2.2.6.jar
Eclipse Public License 1.0 -- licenses/LICENSE-AspectJ.txt
diff --git a/pulsar-websocket/src/main/java/org/apache/pulsar/websocket/service/ProxyServer.java b/pulsar-websocket/src/main/java/org/apache/pulsar/websocket/service/ProxyServer.java
index 455b2de..c7fd3b1 100644
--- a/pulsar-websocket/src/main/java/org/apache/pulsar/websocket/service/ProxyServer.java
+++ b/pulsar-websocket/src/main/java/org/apache/pulsar/websocket/service/ProxyServer.java
@@ -18,7 +18,6 @@
*/
package org.apache.pulsar.websocket.service;
-import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
import com.google.common.collect.Lists;
import java.net.MalformedURLException;
@@ -32,8 +31,8 @@ import javax.servlet.ServletException;
import javax.websocket.DeploymentException;
import org.apache.pulsar.broker.PulsarServerException;
+import org.apache.pulsar.broker.web.JsonMapperProvider;
import org.apache.pulsar.client.api.PulsarClientException;
-import org.apache.pulsar.common.util.ObjectMapperFactory;
import org.apache.pulsar.common.util.SecurityUtility;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Server;
@@ -105,11 +104,9 @@ public class ProxyServer {
}
public void addRestResources(String basePath, String javaPackages, String attribute, Object attributeValue) {
- JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider();
- provider.setMapper(ObjectMapperFactory.create());
ResourceConfig config = new ResourceConfig();
config.packages("jersey.config.server.provider.packages", javaPackages);
- config.register(provider);
+ config.register(JsonMapperProvider.class);
ServletHolder servletHolder = new ServletHolder(new ServletContainer(config));
servletHolder.setAsyncSupported(true);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
diff --git a/pulsar-zookeeper-utils/pom.xml b/pulsar-zookeeper-utils/pom.xml
index 99da694..dcd06dc 100644
--- a/pulsar-zookeeper-utils/pom.xml
+++ b/pulsar-zookeeper-utils/pom.xml
@@ -122,8 +122,9 @@
</executions>
</plugin>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
+ <groupId>com.github.m50d</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
+ <version>${aspectj-maven-plugin.version}</version>
<configuration>
<complianceLevel>1.8</complianceLevel>
<source>1.8</source>
diff --git a/pulsar-zookeeper/pom.xml b/pulsar-zookeeper/pom.xml
index 4bab4dd..e2371d8 100644
--- a/pulsar-zookeeper/pom.xml
+++ b/pulsar-zookeeper/pom.xml
@@ -80,9 +80,9 @@
<build>
<plugins>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
+ <groupId>com.github.m50d</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
- <version>1.10</version>
+ <version>${aspectj-maven-plugin.version}</version>
<configuration>
<complianceLevel>1.8</complianceLevel>
<source>1.8</source>