[
https://issues.apache.org/jira/browse/ARTEMIS-3546?focusedWorklogId=680323&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-680323
]
ASF GitHub Bot logged work on ARTEMIS-3546:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 11/Nov/21 15:44
Start Date: 11/Nov/21 15:44
Worklog Time Spent: 10m
Work Description: wilkinsona commented on pull request #3846:
URL: https://github.com/apache/activemq-artemis/pull/3846#issuecomment-966407394
We support both. A standalone server is the default, but we also support
configuring an embedded Artemis broker when the user adds the server dependency
to the classpath:
https://docs.spring.io/spring-boot/docs/2.5.6/reference/htmlsingle/#messaging.jms.artemis.
This won't work with EE 9 dependencies as Spring Boot's dependency management
will ensure that the `jakarta.json.*` classes are on the classpath while
Artemis will be looking for `javax.json`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 680323)
Time Spent: 1.5h (was: 1h 20m)
> ClassNotFoundException: javax.json.JsonValue when creating an
> ActiveMQConnectionFactory using artemis-jakarta-client-all
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: ARTEMIS-3546
> URL: https://issues.apache.org/jira/browse/ARTEMIS-3546
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: JMS
> Affects Versions: 2.19.0
> Reporter: Andy Wilkinson
> Assignee: Clebert Suconic
> Priority: Major
> Fix For: 2.20.0
>
> Time Spent: 1.5h
> Remaining Estimate: 0h
>
> As expected, {{artemis-jakarta-client-all}} contains the various
> {{jakarta.json.\*}} classes from Jakarta EE 9. However, its bytecode still
> references the {{javax.json.\*}} classes from EE 8. This results in a failure
> at runtime when creating an {{ActiveMQConnectionFactory}}:
> {noformat}
> Exception in thread "main" java.lang.IllegalStateException:
> java.lang.NoClassDefFoundError: javax/json/JsonValue
> at
> org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:225)
> at
> org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:218)
> at example.Main.main(Main.java:8)
> Caused by: java.lang.NoClassDefFoundError: javax/json/JsonValue
> at
> org.apache.activemq.artemis.uri.schema.connector.TCPTransportConfigurationSchema.getTransportConfigurations(TCPTransportConfigurationSchema.java:68)
> at
> org.apache.activemq.artemis.uri.schema.serverLocator.TCPServerLocatorSchema.internalNewObject(TCPServerLocatorSchema.java:42)
> at
> org.apache.activemq.artemis.uri.schema.serverLocator.TCPServerLocatorSchema.internalNewObject(TCPServerLocatorSchema.java:33)
> at
> org.apache.activemq.artemis.utils.uri.URISchema.newObject(URISchema.java:86)
> at
> org.apache.activemq.artemis.utils.uri.URISchema.newObject(URISchema.java:30)
> at
> org.apache.activemq.artemis.utils.uri.URIFactory.newObject(URIFactory.java:59)
> at
> org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.newLocator(ServerLocatorImpl.java:333)
> at
> org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.setBrokerURL(ActiveMQConnectionFactory.java:243)
> at
> org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:223)
> ... 2 more
> Caused by: java.lang.ClassNotFoundException: javax.json.JsonValue
> at
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
> at
> java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
> at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
> ... 11 more
> {noformat}
> With artemis-jakarta-client-all-2.19.0.jar on the classpath, the failure
> above was produced by the following main class:
> {code:java}
> package example;
> import org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory;
> public class Main {
>
> public static void main(String[] args) {
> new ActiveMQConnectionFactory();
> }
> }
> {code}
> The shaded Johnzon code also has references to {{javax.json.\*}} classes.
> A similar problem exists with {{artemis-jakarta-client}} when upgrading its
> transitive dependencies to their Jakarta EE 9 versions.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)