users@jersey.java.net

Resolved <was> Re: null pointer in resources scan

From: Paul Sandoz <Paul.Sandoz_at_Sun.COM>
Date: Thu, 31 Jan 2008 15:00:03 +0100

Fixed it in the latest build.

URL.getPath() returns the *unencoded* path component. So a URL.getPath()
on the URL:

  file:/C:/Documents%20and%20Settings/legal/Mes%20documents/

returns:

  /C:/Documents%20and%20Settings/legal/Mes%20documents/

and not:

  /C:/Documents and Settings/legal/Mes documents/


Moral of the story: do not use java.net.URL. Immediately convert any URL
instance to a URI instance using URL.toURI();

Paul.

guilhem legal wrote:
> hi!
>
> I have a little issue with the maven plugin of netbeans, when i build my
> project with maven command line all work fine.
> But when i build my jersey WS with the netbeans maven plugin and try to
> deploy it with NB i get the folowing error :
>
> javax.servlet.ServletException: java.lang.reflect.InvocationTargetException
> com.sun.ws.rest.spi.container.servlet.ServletContainer.createResourceConfig(ServletContainer.java:172)
>
> com.sun.ws.rest.spi.container.servlet.ServletContainer.init(ServletContainer.java:104)
>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
>
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
>
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> java.lang.Thread.run(Thread.java:595)
>
> java.lang.reflect.InvocationTargetException
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>
> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> com.sun.ws.rest.spi.container.servlet.ServletContainer.createResourceConfig(ServletContainer.java:168)
>
> com.sun.ws.rest.spi.container.servlet.ServletContainer.init(ServletContainer.java:104)
>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
>
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
>
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> java.lang.Thread.run(Thread.java:595)
>
> java.lang.NullPointerException
> com.sun.ws.rest.impl.container.config.ResourceClassScanner.indexDir(ResourceClassScanner.java:149)
>
> com.sun.ws.rest.impl.container.config.ResourceClassScanner.index(ResourceClassScanner.java:135)
>
> com.sun.ws.rest.impl.container.config.ResourceClassScanner.scan(ResourceClassScanner.java:97)
>
> com.sun.ws.rest.api.core.PackagesResourceConfig.init(PackagesResourceConfig.java:88)
>
> com.sun.ws.rest.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:64)
>
> com.sun.ws.rest.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:72)
>
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>
> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> com.sun.ws.rest.spi.container.servlet.ServletContainer.createResourceConfig(ServletContainer.java:168)
>
> com.sun.ws.rest.spi.container.servlet.ServletContainer.init(ServletContainer.java:104)
>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
>
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
>
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> java.lang.Thread.run(Thread.java:595)
>
> I see in the log the scan starting :
>
> INFO: Scanning for root resource classes in the packages:
> net.seagis.coverage.wms
>
> but it never find the resources.
>
> any idea what this happen? (i'm using tomcat 6 with JDK5, I have maybe a
> problem with JDK6/5 compilation)
>
> Guilhem Legal
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
> For additional commands, e-mail: users-help_at_jersey.dev.java.net
>

-- 
| ? + ? = To question
----------------\
    Paul Sandoz
         x38109
+33-4-76188109