Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-3138

IOException not being caught if java process does not have permission to save attachment

    XMLWordPrintable

Details

    • Bug
    • Resolution: Not a bug
    • Medium
    • None
    • 1.4
    • None

    Description

      If, for some reason, the java process running Confluence fails on the creation of an attachment handle the IOException gracefully.

      The user reporting this had the following stacktrace in their log but the 500 page contained a slightly different error message (see second stacktrace).

      Note - this is after the attachment upload but during the save to a specific directory in conf. home.

      2005-04-28 10:59:11,633 ERROR [atlassian.confluence.pages.AttachmentUtils] Containing folders /opt/confluenceHome/attachments/7576/rms 3.3.2 issues.doc for the attachment rms 3.3.2 issues.doc could not be created
      Apr 28, 2005 10:59:11 AM com.opensymphony.webwork.dispatcher.ServletDispatcher serviceAction
      SEVERE: Could not execute action
      java.io.IOException: Permission denied
      at java.io.UnixFileSystem.createFileExclusively(Native Method)
      at java.io.File.createNewFile(File.java:828)
      at bucket.util.FileUtils.copyFile(FileUtils.java:85)
      at bucket.util.FileUtils.copyFile(FileUtils.java:60)
      at com.atlassian.confluence.pages.DefaultAttachmentManager.saveNewAttachment(DefaultAttachmentManager.java:41)
      at com.atlassian.confluence.pages.AbstractAttachmentManager.saveAttachment(AbstractAttachmentManager.java:79)
      at com.atlassian.confluence.pages.DelegatorAttachmentManager.saveAttachment(DelegatorAttachmentManager.java:70)
      at sun.reflect.GeneratedMethodAccessor590.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
      at $Proxy9.saveAttachment(Unknown Source)

      java.io.IOException: No such file or directory
      at java.io.UnixFileSystem.createFileExclusively(Native Method)
      at java.io.File.createNewFile(File.java:828)
      at bucket.util.FileUtils.copyFile(FileUtils.java:85)
      at bucket.util.FileUtils.copyFile(FileUtils.java:60)
      at com.atlassian.confluence.pages.DefaultAttachmentManager.saveNewAttachmentVersion(DefaultAttachmentManager.java:50)
      at com.atlassian.confluence.pages.AbstractAttachmentManager.saveAttachment(AbstractAttachmentManager.java:83)
      at com.atlassian.confluence.pages.DelegatorAttachmentManager.saveAttachment(DelegatorAttachmentManager.java:70)
      at sun.reflect.GeneratedMethodAccessor590.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
      at $Proxy9.saveAttachment(Unknown Source)
      at com.atlassian.confluence.pages.actions.AttachFileAction.storeAttachment(AttachFileAction.java:128)
      at com.atlassian.confluence.pages.actions.AttachFileAction.execute(AttachFileAction.java:82)

      Attachments

        Activity

          People

            Unassigned Unassigned
            nick@atlassian.com Nick Faiz [OLD] (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: