Open joshuapsteele opened 1 year ago
ValidationClientModuleFactoryTest > test FAILED
jakarta.validation.ValidationException: HV000183: Unable to initialize 'jakarta.el.ExpressionFactory'. Check that you have the EL dependencies on the classpath, or use ParameterMessageInterpolator instead
at app//org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.buildExpressionFactory(ResourceBundleMessageInterpolator.java:211)
at app//org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:97)
at app//org.hibernate.validator.internal.engine.AbstractConfigurationImpl.getDefaultMessageInterpolator(AbstractConfigurationImpl.java:575)
at app//org.hibernate.validator.internal.engine.AbstractConfigurationImpl.getDefaultMessageInterpolatorConfiguredWithClassLoader(AbstractConfigurationImpl.java:834)
at app//org.hibernate.validator.internal.engine.AbstractConfigurationImpl.getMessageInterpolator(AbstractConfigurationImpl.java:485)
at app//org.hibernate.validator.internal.engine.ValidatorFactoryImpl.<init>(ValidatorFactoryImpl.java:157)
at app//org.hibernate.validator.HibernateValidator.buildValidatorFactory(HibernateValidator.java:38)
at app//org.hibernate.validator.internal.engine.AbstractConfigurationImpl.buildValidatorFactory(AbstractConfigurationImpl.java:453)
at app//jakarta.validation.Validation.buildDefaultValidatorFactory(Validation.java:103)
at app//io.crnk.validation.ValidationModule.<init>(ValidationModule.java:23)
at app//io.crnk.validation.ValidationModule.create(ValidationModule.java:36)
at app//io.crnk.validation.ValidationModule.create(ValidationModule.java:32)
at app//io.crnk.validation.internal.ValidationClientModuleFactory.create(ValidationClientModuleFactory.java:10)
at app//io.crnk.validation.internal.ValidationClientModuleFactory.create(ValidationClientModuleFactory.java:6)
at app//io.crnk.validation.internal.ValidationClientModuleFactoryTest.test(ValidationClientModuleFactoryTest.java:25)
Caused by:
java.lang.NoClassDefFoundError: com/sun/el/ExpressionFactoryImpl
at org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.buildExpressionFactory(ResourceBundleMessageInterpolator.java:203)
... 14 more
Caused by:
java.lang.ClassNotFoundException: com.sun.el.ExpressionFactoryImpl
at org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.buildExpressionFactory(ResourceBundleMessageInterpolator.java:203)
... 14 more
Getting this error from many tests - I tried adding 'jakarta.el:jakarta.el-api:5.0.1'
based on stackoverflow questions about the same error (but of the javax
variety), but no change. Also open to suggestions.
@jsteelepfpt Have started some more changes which once I get the Junit 4 -> 5 changes done I'll raise a PR into your branch.. My changes are on https://github.com/whgibbo/crnk-framework/tree/CRNK-JAKARTA-WHG currently.
Next focus is Spring MVC changes. WebMvcMetricsAutoConfiguration
seems to be gone, and WebMvcTagsProvider
/DefaultWebMvcTagsProvider
is marked for removal in Spring Boot 3.2.
From what I can tell, Crnk only overrode the DefaultWebMvcTagsProvider to "enhance" the URL in MVC metrics. We may be able to do the same with DefaultServerRequestObservationConvention
, if necessary. @remmeier was the original author of this section in WebMvcTagsProvider
.
See: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-Metrics-3.0
I've been excluding crnk-setup-cdi
to work on other failures, but when including it, I get test errors when running. I can't figure out where this javax
dependency is coming from. Any assistance here would be appreciated!
Edit: see https://stackoverflow.com/questions/77319334/java-lang-noclassdeffounderror-javax-enterprise-context-spi-contextual-when-swi/77512767#77512767, this may be because an external dependency isn't using jakarta yet.
For example:
CdiTransactionRunnerTest > initializationError FAILED
java.lang.NoClassDefFoundError: javax/enterprise/context/spi/Contextual
at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3373)
at java.base/java.lang.Class.getConstructor0(Class.java:3578)
at java.base/java.lang.Class.getConstructor(Class.java:2271)
at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
at org.junit.vintage.engine.discovery.DefensiveAllDefaultPossibilitiesBuilder$DefensiveAnnotatedBuilder.buildRunner(DefensiveAllDefaultPossibilitiesBuilder.java:114)
at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
at org.junit.vintage.engine.discovery.DefensiveAllDefaultPossibilitiesBuilder.runnerForClass(DefensiveAllDefaultPossibilitiesBuilder.java:57)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
at org.junit.vintage.engine.discovery.ClassSelectorResolver.resolveTestClass(ClassSelectorResolver.java:66)
at org.junit.vintage.engine.discovery.ClassSelectorResolver.resolve(ClassSelectorResolver.java:47)
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.lambda$resolve$2(EngineDiscoveryRequestResolution.java:135)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1602)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:189)
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:126)
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:92)
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.run(EngineDiscoveryRequestResolution.java:83)
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.resolve(EngineDiscoveryRequestResolver.java:113)
at org.junit.vintage.engine.discovery.VintageDiscoverer.discover(VintageDiscoverer.java:42)
at org.junit.vintage.engine.VintageTestEngine.discover(VintageTestEngine.java:64)
at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverEngineRoot(EngineDiscoveryOrchestrator.java:152)
at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discoverSafely(EngineDiscoveryOrchestrator.java:134)
at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discover(EngineDiscoveryOrchestrator.java:108)
at org.junit.platform.launcher.core.EngineDiscoveryOrchestrator.discover(EngineDiscoveryOrchestrator.java:80)
at org.junit.platform.launcher.core.DefaultLauncher.discover(DefaultLauncher.java:110)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:118)
at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:93)
at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:88)
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source)
at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
Caused by:
java.lang.ClassNotFoundException: javax.enterprise.context.spi.Contextual
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 59 more
Hello! is this still being worked on? im open to help finish this but i dont want to duplicate work if youre working your way through this already
Hello! is this still being worked on? im open to help finish this but i dont want to duplicate work if youre working your way through this already
@byrondaniels Hi! I haven't been able to work on this recently, so feel free to help out if you'd like!
Could someone invite me to the repository? Would like to help.
just wanted to give :+1: for very much looking forward to see Crnk moved to Jakarta
Neither @kjthorpe18 nor I have touched this in quite some time. We welcome others to join in and carry this forward!
Neither @kjthorpe18 nor I have touched this in quite some time. We welcome others to join in and carry this forward!
I see it hasn't been touched in some time and also notice the certificates or ownership on the documentation website is changed/no longer working. Do any of you know what needs to be done to fix this or can we consider this orphaned?
Neither @kjthorpe18 nor I have touched this in quite some time. We welcome others to join in and carry this forward!
I see it hasn't been touched in some time and also notice the certificates or ownership on the documentation website is changed/no longer working. Do any of you know what needs to be done to fix this or can we consider this orphaned?
I think nobody has access to this repository to merge PR so I think it was orphaned. Maybe we need create fork from this repo and start new product. Idea with crnk was preaty good but we have to migrate it to spring 3.
Our team has prepared a separate PR with build fixes for the current PR. Could anyone please review and merge it? https://github.com/joshuapsteele/crnk-framework/pull/3
@joshuapsteele @kjthorpe18 @whgibbo
Our team have prepared a separate PR with build fixes for the current PR. Could anyone please review and merge it? joshuapsteele#3
I think nobody have permission to accept and merge it.
I've merged @tory-kk's fixes into this branch, but as mentioned above I think the overall project is unmaintained, and I'm not sure who will have permission to approve & merge this PR.
@kjthorpe18 thank you :) What else remains to be done to prepare the branch for the merge and release? @remmeier would you be able to merge and release a new version when the PR is ready?
Branch and PR inspired by Issue 869: https://github.com/crnk-project/crnk-framework/issues/869
The goal is to support Spring Boot 3.
javax
tojakarta
dependencies