EJB injection into Restful service (NullPointerException)



我'在将StoreBean注入Restful服务时遇到问题。我有一点点的 reduecd 代码来得到一个点。

这是代码(DataStoreBean):

@Local(DataStore.class)
@Stateless
public class DataStoreBean implements DataStore
{
     public String get()
     {
        return "works";
     }
}

以下是 RestEndpoint 的代码:

@RequestScoped
@Path("/DataStore")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public class DataStoreRestEndpoint
{
@EJB
DataStoreBean dataStore;

    @GET
    @Path("/test")
    public String get()
    {
       return dataStore.get();
    }
 }

当我执行时,我总是得到一个NPE。

     Caused by: java.lang.NullPointerException
   at org.it.datastore.DataStoreRestEndpoint.get(DataStoreRestEndpoint.java:112) [classes:]
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_25]
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.7.0_25]
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.7.0_25]
   at java.lang.reflect.Method.invoke(Unknown Source) [rt.jar:1.7.0_25]
   at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:155) [resteasy-jaxrs-2.3.1.GA.jar:]
   at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:257) [resteasy-jaxrs-2.3.1.GA.jar:]
   at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:222) [resteasy-jaxrs-2.3.1.GA.jar:]
   at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:211) [resteasy-jaxrs-2.3.1.GA.jar:]
   at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:525) [resteasy-jaxrs-2.3.1.GA.jar:]
... 19 more

我正在使用 JBoss 7.1 和 EJB3

也用 @Stateless 声明 restful 类。下面是一个示例:将 EJB 注入 JAX-RS(RESTful 服务)

相关内容

最新更新