cancel
Showing results for 
Search instead for 
Did you mean: 

Webdav Rename / moving Failure

hasi_webmail
Champ in-the-making
Champ in-the-making
Hi, While i'm trying to rename or move the content via webdav, I'm getting the following error. different messages appear but the most common message is "Can't read from the source file or disk."

Stack trace

12:07:54,945 ERROR [org.alfresco.webdav.protocol] Internal Server Error:
org.alfresco.service.cmr.repository.ContentIOException: 0120117471 Failed to copy content to output stream:
   accessor: ContentAccessor[ contentUrl=store://2012/6/13/10/58/ee747d2f-8b47-41e8-afc7-ab324f2504a9.bin, mimetype=application/msword, size=40960, encoding=utf-8, locale=en_GB]
    at org.alfresco.repo.content.AbstractContentReader.getContent(AbstractContentReader.java:352)
    at org.alfresco.repo.webdav.GetMethod.executeImpl(GetMethod.java:219)
    at org.alfresco.repo.webdav.WebDAVMethod$2.execute(WebDAVMethod.java:329)
    at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:381)
    at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:272)
    at org.alfresco.repo.webdav.WebDAVMethod.execute(WebDAVMethod.java:337)
    at org.alfresco.repo.webdav.WebDAVServlet.service(WebDAVServlet.java:124)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.alfresco.repo.webdav.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:172)
    at sun.reflect.GeneratedMethodAccessor1251.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:116)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
    at $Proxy220.doFilter(Unknown Source)
    at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:58)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:662)
Caused by: ClientAbortException:  java.net.SocketException: Broken pipe
5 REPLIES 5

rushingbee
Champ in-the-making
Champ in-the-making
I have the same problem I think, Alfresco Community 4.2c on Debian Squeeze.  Can't rename or move files or directories on alfresco's webdav share as admin user.  Tried with both OS X native client and Cadaver.  I can create, modify, and delete the files without any error.

And I might add, Webdav protocol support for the content store is a marvelous feature!
Here's catalina.out:
<blockcode>ERROR [alfresco.webdav.protocol] [http-apr-8443-exec-5] java.io.PrintWriter@1f36fa16
HTTP Status Code: 500 caused by: org.alfresco.error.AlfrescoRuntimeException: 02122067 Exception in Transaction.
   at org.alfresco.repo.webdav.WebDAVMethod.execute(WebDAVMethod.java:451)
   at org.alfresco.repo.webdav.WebDAVServlet.service(WebDAVServlet.java:140)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.alfresco.repo.webdav.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:233)
   at sun.reflect.GeneratedMethodAccessor446.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:601)
   at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:116)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at com.sun.proxy.$Proxy236.doFilter(Unknown Source)
   at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
   at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
   at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
   at org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:1810)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
   at java.lang.Thread.run(Thread.java:722)
Caused by: org.alfresco.error.AlfrescoRuntimeException: 02122067 Exception in Transaction.
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:518)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:323)
   at org.alfresco.repo.webdav.WebDAVMethod.execute(WebDAVMethod.java:399)
   … 32 more
Caused by: ClientAbortException:  java.io.IOException
   at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:388)
   at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:371)
   at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:413)
   at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:401)
   at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:91)
   at org.alfresco.repo.web.util.HttpRangeProcessor.streamRangeBytes(HttpRangeProcessor.java:348)
   at org.alfresco.repo.web.util.HttpRangeProcessor.processSingleRange(HttpRangeProcessor.java:143)
   at org.alfresco.repo.web.util.HttpRangeProcessor.processRange(HttpRangeProcessor.java:76)
   at org.alfresco.repo.webdav.GetMethod.executeImpl(GetMethod.java:258)
   at org.alfresco.repo.webdav.WebDAVMethod$2.execute(WebDAVMethod.java:391)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:433)
   … 34 more
Caused by: java.io.IOException
   at org.apache.coyote.http11.InternalAprOutputBuffer.flushBuffer(InternalAprOutputBuffer.java:205)
   at org.apache.coyote.http11.InternalAprOutputBuffer.access$100(InternalAprOutputBuffer.java:37)
   at org.apache.coyote.http11.InternalAprOutputBuffer$SocketOutputBuffer.doWrite(InternalAprOutputBuffer.java:235)
   at org.apache.coyote.http11.filters.IdentityOutputFilter.doWrite(IdentityOutputFilter.java:84)
   at org.apache.coyote.http11.AbstractOutputBuffer.doWrite(AbstractOutputBuffer.java:192)
   at org.apache.coyote.Response.doWrite(Response.java:505)
   at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:383)
   … 44 more</blockcode>

Alfresco log looks basically identical.

rushingbee
Champ in-the-making
Champ in-the-making
I'm on a deadline here so I've got to start hacking away at this.  I probably don't have the skill to fix it (i'm totally new to java and pretty green with coding in general)… but I need it working.

The problem may possibly be related to the bug fix implemented in 4.13?
https://issues.alfresco.com/jira/browse/ALF-16756

I will try to catch up and start hunting through these magic "beans" to figure out what it all "means".  In the meantime it would be awesome if someone who's been on this project a while could look into this or at least give me somewhere to look.  TY!

How to reproduce:
Manually install sun java 7 and Alfresco 4.2c on Debian Squeeze.
Add content to content store as admin user.
Connect to webdav as admin user.
Rename or move a folder.

rushingbee
Champ in-the-making
Champ in-the-making
My problem was actually related to this bug here.  https://issues.alfresco.com/jira/browse/ALF-736
There's a workaround at the end of the thread at apple support (i would have included a link, but the smiley parser breaks it.  Is there any way to turn that off?)
More diagnostic information:
http alfresco webdav port 8080 on OS X – Renaming Works
https apache mod_dav port 443 on OS X – Renaming Works (connection requires manual SSL cert trust)
https alfresco webdav port 8443 on KDE/Dolphin – Renaming Works
https alfresco webdav port 8443 on OS X – Renaming fails

There's probably something analogous that will work for Tomcat without proxying through Apache, but since we're using an Apache proxy I just added this to the virtualhost conf:

BrowserMatch "^WebDAVFS/*" redirect-carefully


OS X plays nice now.

ioudas
Champ in-the-making
Champ in-the-making
I have this problem with 5.0.b and still cant get this to work with the browser match. Clients are using windows 7.

mathias_lin
Star Contributor
Star Contributor
Still having the issue with Alfresco CE 5.0.d, but only on Windows 2012 RC server, while it works fine on my Windows 8.1 localhost.
See my SuperUser post here: http://superuser.com/questions/970946/renaming-a-file-on-mapped-webdav-drive-does-not-work-with-wind...

<strong>Update:</strong> I found out that it was related to the reverse proxy (Apache httpd) in front of the Tomcat.