es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Java 17 no puede invocar “java.lang.reflect.Method.invoke(Object, Object[])” porque com.sun.xml.bind.v2.runtime.reflect.opt.Injector.defineClass es nulo.

Tengo un pequeño proyecto en Spring Boot con oauth2, quiero ejecutar el servidor de recursos.

Configuraciones:
– Java 17
– Versión de spring-boot-starter-parent 2.5.6
– Versión de spring-cloud-dependencies 2020.0.4
– spring-boot-starter-oauth2-resource-server
– spring-security-oauth2-autoconfigure

Cuando intento ejecutar mi aplicación, tengo una excepción:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘springSecurityFilterChain’ defined in class path resource [org/springframework/security/config/annotation/web/configuration/WebSecurityConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.servlet.Filter]: Factory method ‘springSecurityFilterChain’ threw exception; nested exception is java.lang.NullPointerException: Cannot invoke “java.lang.reflect.Method.invoke(Object, Object[])” because “com.sun.xml.bind.v2.runtime.reflect.opt.Injector.defineClass” is null
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944) ~[spring-beans-5.3.12.jar:5.3.12]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.12.jar:5.3.12]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.12.jar:5.3.12]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.5.6.jar:2.5.6]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) ~[spring-boot-2.5.6.jar:2.5.6]

¿Tienes alguna idea de lo que podría estar mal?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    La excepción que estás recibiendo sugiere que hay un problema con la instancia de bean a través del método de fábrica, y puede ser causado debido a la excepción de puntero nulo. Esto puede ser causado por una variedad de razones como una configuración incorrecta o una incompatibilidad de versión entre componentes.

    Para solucionar este problema, puedes intentar los siguientes pasos:

    1. Verifica si todas las dependencias en tu proyecto son compatibles entre sí. Verifica la versión de spring-cloud-dependencies y otras dependencias específicamente. Las versiones de tus dependencias deben ser compatibles entre sí.
    2. Asegúrate de que tu configuración sea correcta. Verifica la configuración de tu servidor de recursos, Spring Security y otros componentes.

    3. Verifica si alguna anotación en el código de tu proyecto está causando problemas con el servidor de recursos. Las anotaciones como @EnableWebSecurity y @EnableGlobalMethodSecurity pueden causar problemas de instancia de bean.

    4. Revisa cuidadosamente los registros para encontrar la causa raíz de la excepción. Busca cualquier información adicional de la traza de la pila o mensajes de error.

    Siguiendo estos pasos, podrás solucionar el problema y resolverlo.

Comments are closed.