You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by sh...@apache.org on 2021/09/21 13:17:44 UTC
[unomi] branch unomi-1.6.x updated: UNOMI-491 Upgrade Karaf,
CXF and Jackson (#339)
This is an automated email from the ASF dual-hosted git repository.
shuber pushed a commit to branch unomi-1.6.x
in repository https://gitbox.apache.org/repos/asf/unomi.git
The following commit(s) were added to refs/heads/unomi-1.6.x by this push:
new 343bc9e UNOMI-491 Upgrade Karaf, CXF and Jackson (#339)
343bc9e is described below
commit 343bc9efdb45521e7b9ada7a21ea8dedd5d33ef6
Author: Serge Huber <sh...@jahia.com>
AuthorDate: Thu Sep 16 09:24:15 2021 +0200
UNOMI-491 Upgrade Karaf, CXF and Jackson (#339)
* Attempting to upgrade CXF and hibernate-validator
* Upgrading libraries:
- Karaf -> 4.2.11
- CXF -> 3.4.4
- GraphQL -> 17
- GraphQL annotations -> 9.0
- Jackson -> 2.11.1
* Revert back to GraphQL 14 and GraphQL Java Annotations 8
* Minor fixes
* - Switch back to bean validation 1.1.0 / hibernate validator 5.4.1
- Fix Jackson databind versions
- Moved Jackson dataformat YAML bundle out of WAB because it was causing scanning issues
* - Fix validation API in GraphQL feature
- Reactive all Unomi features in package
* - Revert to JAXB annotations
- Fix problem with JAXB API dependency that was not at correct version
* Some cleanup
* Revert back to old date/JSON functions
(cherry picked from commit dda24b66eb796f4c4d1463410d868a456364a4ad)
---
api/pom.xml | 7 +++----
.../router/router-karaf-feature/src/main/feature/feature.xml | 1 +
extensions/router/router-rest/pom.xml | 2 +-
.../karaf-kar/src/main/feature/feature.xml | 1 +
.../unomi-mailchimp/karaf-kar/src/main/feature/feature.xml | 1 +
.../weather-update/karaf-kar/src/main/feature/feature.xml | 1 +
.../web-tracker/karaf-kar/src/main/feature/feature.xml | 1 +
kar/src/main/feature/feature.xml | 10 ++++++----
.../org/apache/unomi/persistence/spi/CustomObjectMapper.java | 2 +-
.../persistence/spi/PropertyTypedObjectDeserializer.java | 9 +++++++--
plugins/baseplugin/pom.xml | 6 +++---
plugins/kafka-injector/pom.xml | 4 ++--
pom.xml | 12 ++++++------
rest/pom.xml | 2 ++
wab/pom.xml | 1 +
15 files changed, 37 insertions(+), 23 deletions(-)
diff --git a/api/pom.xml b/api/pom.xml
index e9ca0db..899b73a 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -32,9 +32,9 @@
<dependencies>
<dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- <version>2.2.11</version>
+ <groupId>jakarta.xml.bind</groupId>
+ <artifactId>jakarta.xml.bind-api</artifactId>
+ <version>2.3.2</version>
<scope>provided</scope>
</dependency>
<dependency>
@@ -65,7 +65,6 @@
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
- <version>4.2.1</version>
<extensions>true</extensions>
<configuration>
<instructions>
diff --git a/extensions/router/router-karaf-feature/src/main/feature/feature.xml b/extensions/router/router-karaf-feature/src/main/feature/feature.xml
index 7812271..d3c9cd7 100644
--- a/extensions/router/router-karaf-feature/src/main/feature/feature.xml
+++ b/extensions/router/router-karaf-feature/src/main/feature/feature.xml
@@ -18,6 +18,7 @@
<features xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0" name="unomi-router-karaf-feature">
<feature name="unomi-router-karaf-feature" version="${project.version}" description="Apache Unomi :: Extensions :: Router :: Apache Karaf Feature">
<details>Apache Karaf feature for the Apache Unomi Context Server extension</details>
+ <feature>wrap</feature>
<feature>unomi-kar</feature>
<bundle start-level="90">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsch/0.1.54_1</bundle>
<bundle start-level="90">mvn:commons-net/commons-net/3.6</bundle>
diff --git a/extensions/router/router-rest/pom.xml b/extensions/router/router-rest/pom.xml
index 0528fc0..ce55a80 100644
--- a/extensions/router/router-rest/pom.xml
+++ b/extensions/router/router-rest/pom.xml
@@ -72,7 +72,7 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${version.jackson.core}</version>
+ <version>${version.jackson.databind}</version>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/extensions/salesforce-connector/karaf-kar/src/main/feature/feature.xml b/extensions/salesforce-connector/karaf-kar/src/main/feature/feature.xml
index d3fbc36..aa544d8 100644
--- a/extensions/salesforce-connector/karaf-kar/src/main/feature/feature.xml
+++ b/extensions/salesforce-connector/karaf-kar/src/main/feature/feature.xml
@@ -18,6 +18,7 @@
<features xmlns="http://karaf.apache.org/xmlns/features/v1.2.1" name="unomi-salesforce-connector-karaf-feature">
<feature name="unomi-salesforce-connector-karaf-kar" version="${project.version}" description="Apache Unomi :: Extensions :: Salesforce connector :: Apache Karaf Feature">
<details>Apache Karaf feature for the Apache Unomi Context Server extension that integrates with Salesforce</details>
+ <feature>unomi-kar</feature>
<configfile finalname="/etc/org.apache.unomi.sfdc.cfg">mvn:org.apache.unomi/unomi-salesforce-connector-services/${project.version}/cfg/sfdccfg</configfile>
<bundle start-level="85">mvn:org.apache.httpcomponents/httpcore-osgi/${httpcore-osgi.version}</bundle>
<bundle start-level="85">mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient-osgi.version}</bundle>
diff --git a/extensions/unomi-mailchimp/karaf-kar/src/main/feature/feature.xml b/extensions/unomi-mailchimp/karaf-kar/src/main/feature/feature.xml
index 5faa7bc..6c043b2 100644
--- a/extensions/unomi-mailchimp/karaf-kar/src/main/feature/feature.xml
+++ b/extensions/unomi-mailchimp/karaf-kar/src/main/feature/feature.xml
@@ -19,6 +19,7 @@
<feature name="unomi-mailchimp-connector-karaf-kar" version="${project.version}"
description="Apache Unomi :: Extensions :: MailChimp Connector :: Apache Karaf Feature">
<details>Connect Apache Unomi to MailChimp API</details>
+ <feature>unomi-kar</feature>
<configfile finalname="/etc/org.apache.unomi.mailchimpconnector.cfg">mvn:org.apache.unomi/unomi-mailchimp-connector-services/${project.version}/cfg/mailchimpconnectorcfg</configfile>
<bundle start-level="90">mvn:org.apache.unomi/unomi-mailchimp-connector-services/${project.version}</bundle>
<bundle start-level="90">mvn:org.apache.unomi/unomi-mailchimp-connector-rest/${project.version}</bundle>
diff --git a/extensions/weather-update/karaf-kar/src/main/feature/feature.xml b/extensions/weather-update/karaf-kar/src/main/feature/feature.xml
index 34b46bb..f1db52b 100644
--- a/extensions/weather-update/karaf-kar/src/main/feature/feature.xml
+++ b/extensions/weather-update/karaf-kar/src/main/feature/feature.xml
@@ -20,6 +20,7 @@
description="Apache Unomi :: Extensions :: Weather update :: Apache Karaf Feature">
<details>Apache Karaf feature for the Apache Unomi Context Server extension that integrates Weather
update</details>
+ <feature>unomi-kar</feature>
<configfile finalname="/etc/org.apache.unomi.weatherUpdate.cfg">mvn:org.apache.unomi/unomi-weather-update-core/${project.version}/cfg/weatherupdatecfg</configfile>
<bundle start-level="85">mvn:org.apache.httpcomponents/httpcore-osgi/${httpcore-osgi.version}</bundle>
<bundle start-level="85">mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient-osgi.version}</bundle>
diff --git a/extensions/web-tracker/karaf-kar/src/main/feature/feature.xml b/extensions/web-tracker/karaf-kar/src/main/feature/feature.xml
index 1efbb26..85c6446 100644
--- a/extensions/web-tracker/karaf-kar/src/main/feature/feature.xml
+++ b/extensions/web-tracker/karaf-kar/src/main/feature/feature.xml
@@ -19,6 +19,7 @@
<feature name="unomi-web-tracker-karaf-kar" version="${project.version}"
description="Apache Unomi :: Extensions :: Web Tracker :: Apache Karaf Feature">
<details>Apache Karaf feature for the Apache Unomi Context Server extension that provide the web tracker.</details>
+ <feature>unomi-kar</feature>
<bundle start-level="85">mvn:org.apache.httpcomponents/httpcore-osgi/${httpcore-osgi.version}</bundle>
<bundle start-level="85">mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient-osgi.version}</bundle>
<bundle start-level="85">mvn:org.apache.unomi/unomi-web-tracker-wab/${project.version}</bundle>
diff --git a/kar/src/main/feature/feature.xml b/kar/src/main/feature/feature.xml
index 6f73669..007cb1a 100644
--- a/kar/src/main/feature/feature.xml
+++ b/kar/src/main/feature/feature.xml
@@ -24,15 +24,16 @@
<feature description="unomi-kar" version="${project.version}" name="unomi-kar"
start-level="70">
- <feature>war</feature>
+ <feature prerequisite="true">wrap</feature>
+ <feature prerequisite="true">aries-blueprint</feature>
+ <feature prerequisite="true">war</feature>
<feature>cxf-jaxrs</feature>
<feature>cxf-features-metrics</feature>
+ <feature>cxf-rs-security-cors</feature>
<feature>cxf-rs-description-openapi-v3</feature>
<feature>cellar</feature>
<feature>eventadmin</feature>
<feature>shell-compat</feature>
- <feature prerequisite="true">wrap</feature>
- <feature dependency="true">aries-blueprint</feature>
<feature version="${hibernate.validator.version}">hibernate-validator</feature>
<configfile finalname="/etc/org.apache.unomi.web.cfg">mvn:org.apache.unomi/unomi-wab/${project.version}/cfg/unomicfg</configfile>
<configfile finalname="/etc/org.apache.unomi.persistence.elasticsearch.cfg">mvn:org.apache.unomi/unomi-persistence-elasticsearch-core/${project.version}/cfg/elasticsearchcfg</configfile>
@@ -50,11 +51,12 @@
<bundle start-level="75">mvn:com.google.guava/guava/16.0.1</bundle>
<bundle start-level="75">mvn:com.github.fge/jackson-coreutils/1.8</bundle>
<bundle start-level="75">mvn:com.github.fge/json-patch/1.9</bundle>
- <bundle start-level="75">mvn:com.fasterxml.jackson.core/jackson-databind/${version.jackson.core}</bundle>
+ <bundle start-level="75">mvn:com.fasterxml.jackson.core/jackson-databind/${version.jackson.databind}</bundle>
<bundle start-level="75">mvn:com.fasterxml.jackson.core/jackson-annotations/${version.jackson.core}</bundle>
<bundle start-level="75">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/${version.jackson.core}</bundle>
<bundle start-level="75">mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/${version.jackson.jaxb}</bundle>
<bundle start-level="75">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${version.jackson.core}</bundle>
+ <bundle start-level="75">mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${version.jackson.core}</bundle>
<bundle start-level="75">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jakarta-regexp/1.4_1</bundle>
<bundle start-level="75">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.joda-time/2.3_1</bundle>
<bundle start-level="75">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxws-api-2.2/2.9.0</bundle>
diff --git a/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/CustomObjectMapper.java b/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/CustomObjectMapper.java
index fbbcc14..3e33f13 100644
--- a/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/CustomObjectMapper.java
+++ b/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/CustomObjectMapper.java
@@ -56,7 +56,7 @@ public class CustomObjectMapper extends ObjectMapper {
new SimpleModule("PropertyTypedObjectDeserializerModule",
new Version(1, 0, 0, null, "org.apache.unomi.rest", "deserializer"));
- PropertyTypedObjectDeserializer propertyTypedObjectDeserializer = new PropertyTypedObjectDeserializer();
+ PropertyTypedObjectDeserializer propertyTypedObjectDeserializer = new PropertyTypedObjectDeserializer(null, null);
propertyTypedObjectDeserializer.registerMapping("type=.*Condition", Condition.class);
deserializerModule.addDeserializer(Object.class, propertyTypedObjectDeserializer);
diff --git a/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PropertyTypedObjectDeserializer.java b/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PropertyTypedObjectDeserializer.java
index 1057654..23a556e 100644
--- a/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PropertyTypedObjectDeserializer.java
+++ b/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PropertyTypedObjectDeserializer.java
@@ -22,6 +22,7 @@ import com.fasterxml.jackson.core.JsonTokenId;
import com.fasterxml.jackson.core.ObjectCodec;
import com.fasterxml.jackson.core.TreeNode;
import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.deser.std.UntypedObjectDeserializer;
import com.fasterxml.jackson.databind.node.ObjectNode;
@@ -37,7 +38,7 @@ import java.util.*;
* SimpleModule deserializerModule =
* new SimpleModule("PropertyTypedObjectDeserializerModule",
* new Version(1, 0, 0, null, "org.apache.unomi.rest", "deserializer"));
- * PropertyTypedObjectDeserializer propertyTypedObjectDeserializer = new PropertyTypedObjectDeserializer();
+ * PropertyTypedObjectDeserializer propertyTypedObjectDeserializer = new PropertyTypedObjectDeserializer(null, null);
* propertyTypedObjectDeserializer.registerMapping("type=.*Condition", Condition.class);
* deserializerModule.addDeserializer(Object.class, propertyTypedObjectDeserializer);
* objectMapper.registerModule(deserializerModule);
@@ -58,6 +59,10 @@ public class PropertyTypedObjectDeserializer extends UntypedObjectDeserializer {
private Map<String,Set<String>> fieldValuesToMatch = new LinkedHashMap<String,Set<String>>();
+ public PropertyTypedObjectDeserializer(JavaType listType, JavaType mapType) {
+ super(listType, mapType);
+ }
+
public void registerMapping(String matchExpression,
Class<? extends Object> mappedClass) {
registry.put(matchExpression, mappedClass);
@@ -74,7 +79,7 @@ public class PropertyTypedObjectDeserializer extends UntypedObjectDeserializer {
public Object deserialize(
JsonParser jp, DeserializationContext ctxt)
throws IOException {
- if (jp.getCurrentTokenId() != JsonTokenId.ID_START_OBJECT) {
+ if (jp.currentTokenId() != JsonTokenId.ID_START_OBJECT) {
return super.deserialize(jp, ctxt);
}
ObjectCodec codec = jp.getCodec();
diff --git a/plugins/baseplugin/pom.xml b/plugins/baseplugin/pom.xml
index aa46867..1500878 100644
--- a/plugins/baseplugin/pom.xml
+++ b/plugins/baseplugin/pom.xml
@@ -37,9 +37,9 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- <version>2.2.11</version>
+ <groupId>jakarta.xml.bind</groupId>
+ <artifactId>jakarta.xml.bind-api</artifactId>
+ <version>2.3.2</version>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/plugins/kafka-injector/pom.xml b/plugins/kafka-injector/pom.xml
index a405f9e..ef7b38e 100644
--- a/plugins/kafka-injector/pom.xml
+++ b/plugins/kafka-injector/pom.xml
@@ -47,12 +47,12 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
- <version>2.9.8</version>
+ <version>${version.jackson.core}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>2.9.8</version>
+ <version>${version.jackson.databind}</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
diff --git a/pom.xml b/pom.xml
index 127d3c6..919a826 100644
--- a/pom.xml
+++ b/pom.xml
@@ -64,11 +64,11 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <cxf.version>3.3.4</cxf.version>
- <version.jackson.core>2.9.10</version.jackson.core>
- <version.jackson.databind>2.9.10.8</version.jackson.databind>
- <version.jackson.jaxb>2.9.10</version.jackson.jaxb>
- <version.karaf>4.2.8</version.karaf>
+ <cxf.version>3.3.11</cxf.version>
+ <version.jackson.core>2.10.5</version.jackson.core>
+ <version.jackson.databind>2.10.5.1</version.jackson.databind>
+ <version.jackson.jaxb>2.10.5</version.jackson.jaxb>
+ <version.karaf>4.2.11</version.karaf>
<version.karaf.cellar>4.2.1</version.karaf.cellar>
<version.pax.exam>4.13.1</version.pax.exam>
<elasticsearch.version>7.4.2</elasticsearch.version>
@@ -737,7 +737,7 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${version.jackson.core}</version>
+ <version>${version.jackson.databind}</version>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/rest/pom.xml b/rest/pom.xml
index 78381f6..81cf486 100644
--- a/rest/pom.xml
+++ b/rest/pom.xml
@@ -156,10 +156,12 @@
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
+ <scope>provided</scope>
</dependency>
</dependencies>
</project>
diff --git a/wab/pom.xml b/wab/pom.xml
index eef140a..f7e0f26 100644
--- a/wab/pom.xml
+++ b/wab/pom.xml
@@ -66,6 +66,7 @@
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
<version>${version.jackson.core}</version>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.yaml</groupId>