-
Bug
-
Resolution: Done
-
Major
-
4.5.8.Final
Following injection fails with an NPE:
@Path("/") public class OptionalConfigPropertyInjectionResource { public static final String OPTIONAL_PROPERTY_NAME = "org.jboss.resteasy.test.optionalProperty"; @Inject @ConfigProperty(name = OPTIONAL_PROPERTY_NAME) private Optional<String> optionalProperty; @GET @Produces("text/plain") public String getOptionalProperty(){ return optionalProperty.orElse(null); } }
Caused by: java.lang.NullPointerException at org.jboss.resteasy.core.InjectorFactoryImpl$OptionalInjections$DelegatingInjector.inject(InjectorFactoryImpl.java:335) at org.jboss.resteasy.core.PropertyInjectorImpl.inject(PropertyInjectorImpl.java:145) at org.jboss.resteasy.cdi.JaxrsInjectionTarget.inject(JaxrsInjectionTarget.java:74) at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:161) at org.jboss.weld.contexts.AbstractContext.get(AbstractContext.java:96) at org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:100) at org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.get(ContextualInstanceStrategy.java:177) at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50) at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:102) at org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:131) at org.jboss.resteasy.test.microprofile.config.resource.OptionalConfigPropertyInjectionResource$Proxy$_$$_WeldClientProxy.getOptionalProperty(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498)