Fix ArrayStoreException caused by JerseyAutoConfiguration again
This is a follow-on from the changes made in2b7bf3e. In addition to the problematic use of @ConditionalOnClass that was addressed in2b7bf3e, JerseyAutoConfiguration also used @ConditionalOnBean referencing a Jersey class. This has the same problem when used on a class that implements WebApplicationInitializer. Implementing WebApplicationInitializer causes the class’s annotations to be introspected during servlet container initialiser processing. If a @ConditionalOnBean annotation references a Class that cannot be loaded an ArrayStoreException occurs. This commit updates JerseyAutoConfiguration to reference ResourceConfig as a String. This allows it annotations to be introspected without attempting to load a Jersey class that may not be on the classpath. Fixes gh-1733 Fixes gh-1719
This commit is contained in:
parent
9984939c47
commit
31874090b8
|
|
@ -52,7 +52,7 @@ import org.springframework.web.filter.RequestContextFilter;
|
|||
@ConditionalOnClass(name = {
|
||||
"org.glassfish.jersey.server.spring.SpringComponentProvider",
|
||||
"javax.servlet.ServletRegistration" })
|
||||
@ConditionalOnBean(ResourceConfig.class)
|
||||
@ConditionalOnBean(type = "org.glassfish.jersey.server.ResourceConfig")
|
||||
@ConditionalOnWebApplication
|
||||
@Order(Ordered.HIGHEST_PRECEDENCE)
|
||||
@AutoConfigureBefore(DispatcherServletAutoConfiguration.class)
|
||||
|
|
|
|||
Loading…
Reference in New Issue