users@jersey.java.net

NPE On Jersey 1.1.5 Final, ResourceClass.java

From: Erdinc Yilmazel <erdinc_at_yilmazel.com>
Date: Fri, 22 Jan 2010 15:52:45 +0000

Hi,

I'm trying to use Jersey 1.1.5 Final along with the Google Guice
integration. I am getting a NullPointerException on ResourceClass.java..


WARNING: failed GuiceFilter
java.lang.NullPointerException
at
com.sun.jersey.server.impl.model.ResourceClass.processOptions(ResourceClass.java:374)
at
com.sun.jersey.server.impl.model.ResourceClass.processMethods(ResourceClass.java:323)
at
com.sun.jersey.server.impl.model.ResourceClass.<init>(ResourceClass.java:133)
at
com.sun.jersey.server.impl.application.WebApplicationImpl.newResourceClass(WebApplicationImpl.java:554)
at
com.sun.jersey.server.impl.application.WebApplicationImpl.getResourceClass(WebApplicationImpl.java:459)
at
com.sun.jersey.server.impl.application.WebApplicationImpl.getResourceClass(WebApplicationImpl.java:481)
at
com.sun.jersey.server.impl.application.WebApplicationImpl$9.getInjectable(WebApplicationImpl.java:709)
at
com.sun.jersey.server.impl.application.WebApplicationImpl$9.getInjectable(WebApplicationImpl.java:705)
at
com.sun.jersey.core.spi.factory.InjectableProviderFactory.getInjectable(InjectableProviderFactory.java:202)
at
com.sun.jersey.core.spi.factory.InjectableProviderFactory.getInjectable(InjectableProviderFactory.java:216)
at
com.sun.jersey.core.spi.component.ComponentInjector.inject(ComponentInjector.java:89)
at
com.sun.jersey.core.spi.component.ProviderFactory.injectOnProviderInstance(ProviderFactory.java:240)
at
com.sun.jersey.core.spi.component.ProviderFactory.injectOnProviderInstances(ProviderFactory.java:228)
at
com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:907)


The problem is at this method, where this.wadlFactory is null.

    private void processOptions(ResourceMethodMap methodMap,
            AbstractResource resource, PathPattern p) {
        List<ResourceMethod> l = methodMap.get("OPTIONS");
        if (l != null) {
            return;
        }

        ResourceMethod optionsMethod =
this.wadlFactory.createWadlOptionsMethod(methodMap, resource, p);
        if (optionsMethod == null)
            optionsMethod = new ResourceHttpOptionsMethod(methodMap);
        methodMap.put(optionsMethod);
    }

Any thoughts? I am currently trying to deploy my application locally using
the Google Appengine Dev Server. Could it be something about appengine
restrictions?

Erdinc