Я думаю, что у меня проблема с соответствием. Я получаю это исключение:
org.glassfish.jersey.server.ContainerException: java.lang.ExceptionInInitializerError] with root cause java.lang.NullPointerException
at org.eclipse.persistence.indirection.IndirectCollectionsFactory.getProvider(IndirectCollectionsFactory.java:202)
at org.eclipse.persistence.indirection.IndirectCollectionsFactory.<clinit>(IndirectCollectionsFactory.java:45)
at org.eclipse.persistence.internal.helper.ClassConstants.<clinit>(ClassConstants.java:64)
at org.eclipse.persistence.internal.identitymaps.AbstractIdentityMap.getDefaultIdentityMapClass(AbstractIdentityMap.java:339)
at org.eclipse.persistence.sessions.Project.<init>(Project.java:109)
at org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateProject(MappingsGenerator.java:230)
at org.eclipse.persistence.jaxb.compiler.Generator.generateProject(Generator.java:186)
at org.eclipse.persistence.jaxb.JAXBContext$TypeMappingInfoInput.createContextState(JAXBContext.java:1140)
at org.eclipse.persistence.jaxb.JAXBContext$TypeMappingInfoInput.createContextState(JAXBContext.java:1132)
at org.eclipse.persistence.jaxb.JAXBContext.<init>(JAXBContext.java:193)
at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:165)
at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:152)
at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:112)
at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:102)
at org.eclipse.persistence.jaxb.rs.MOXyJsonProvider.getJAXBContext(MOXyJsonProvider.java:325)
at org.eclipse.persistence.jaxb.rs.MOXyJsonProvider.getJAXBContext(MOXyJsonProvider.java:345)
at org.eclipse.persistence.jaxb.rs.MOXyJsonProvider.isReadable(MOXyJsonProvider.java:470)
at org.glassfish.jersey.moxy.json.internal.ConfigurableMoxyJsonProvider.isReadable(ConfigurableMoxyJsonProvider.java:189)
Нулевой указатель здесь:
//try this on JDK 8+ only (see bug 464096)
if (!useJ2SE7IndirectCollections && JavaSEPlatform.CURRENT.atLeast(JavaSEPlatform.v1_8)) {
, поскольку JavaSEPlatform.CURRENT является нулевым с Java 10 (см. Перечисление ниже):
/** Java SE 1.1. */
v1_1(1,1),
/** Java SE 1.2. */
v1_2(1,2),
/** Java SE 1.3. */
v1_3(1,3),
/** Java SE 1.4. */
v1_4(1,4),
/** Java SE 1.5. */
v1_5(1,5),
/** Java SE 1.6. */
v1_6(1,6),
/** Java SE 1.7. */
v1_7(1,7),
/** Java SE 1.8. */
v1_8(1,8),
/** Java SE 9. */
v1_9(1,9),
/** Java SE 9. */
v9_0(9, 0);
Может кто-нибудь подтвердить, что это ошибка? Я не могу сообщить об ошибке, так как это https://github.com/jersey/jersey/issues только для чтения.
Какое исправление я могу применить (кроме понижения до java 9)?
Спасибо за ответы.
Редактировать
Джерси версия 2.27, а не 2.17, как я впервые написал