There's nothing wrong with the client code. The exception is thrown in
the servlet. Quite possible that there is an unknown bug because
nobody ever tried to get a range out of Slide before you.

Would you file a bug report in Bugzilla, please.

Regards,
Ingo

> hi,
> 
> I read the WebdavSource class and try to write my own getMethod() method. I 
> add a new line to get some part of a file, not the whole file, by 
> setRequestHeader("Range","byte = XXX-XXX"). But the new getMehtod does work 
> correctly after I add this new line. If I delete the new line, the method 
> works ok. So I wonder is it a bug of client API??
> 
> my code is here:
> 
>         HttpURL hrl = new 
> HttpURL("http://localhost:8080/slide/files/test.text";);
>         hrl.setUserinfo(username,password);
>         WebdavResource wdr =  new WebdavResource(hrl);
>     try{
>         HttpClient client = wdr.getSessionInstance(hrl);
> 
>        GetMethod getMethod = new 
> GetMethod(URIUtil.encodePathQuery("http://localhost:8080/slide/files/test.text";));
>        getMethod1.setRequestHeader("Range", "bytes="0-1024");
>        int status1 = client.executeMethod(getMethod);
>        if (status1 == 206) {
>               InputStream in = getMethod1.getResponseBodyAsStream();
>               int len = (int)(1024);
>               byte[] filePart = new byte[len];
>               in.read(filePart);
>               in.close() ;
>        }
> 
> 
>         wdr.close() ;
>      }
>         catch(Exception e){
>               wdr.close() ;
>      }
> 
> The exception is following:
> 
> 10:18:53,195 ERROR [Engine] StandardWrapperValve[webdav]: Servlet.service() 
> for servlet webdav threw exception
> java.lang.NullPointerException
>         at java.lang.StringBuffer.replace(StringBuffer.java:717)
>         at 
> org.apache.slide.webdav.filter.LogFilter.logLine(LogFilter.java:184)
>         at 
> org.apache.slide.webdav.filter.LogFilter.doFilter(LogFilter.java:150)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>         at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>         at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>         at 
> org.jboss.web.catalina.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:227)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>         at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:551)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>         at 
> org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>         at 
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
>         at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>         at 
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>         at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>         at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>         at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>         at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>         at 
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
>         at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
>         at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
>         at 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
>         at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
>         at java.lang.Thread.run(Thread.java:534)
> 
> _________________________________________________________________
> The new MSN 8: advanced junk mail protection and 2 months FREE* 
> http://join.msn.com/?page=features/junkmail


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to