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

Embedding an attachment via the ! shortcut causes a storage format error

    XMLWordPrintable

Details

    Description

      NOTE: This bug report is for Confluence Server. Using Confluence Cloud? See the corresponding bug report.

      When inserting an Excel macro into a Confuence page via the ! (exclamation mark) shortcut will cause the Editor to be unable to save the page.

      Inserting it via the Macro Browser UI won't cause this error.

      Steps to reproduce:

      1. Attach an Excel file to the Confluence page
      2. Type ! to bring up the Media Suggestions list, select the Excel file you just uploaded
      3. try to save or preview the page

      Result
      The following error will be shown.
      Failure when converting editor format to storage format.

      Workaround
      Use the Macro browser to insert the Excel file

      The following stacktrace is shown in the Logs:

      013-11-07 12:35:14,729 WARN [TP-Processor6] [confluence.tinymceplugin.rest.DraftsResource] save The supplied editor content could not be converted to storage format.
      @40000000527b7afc2bf3944c  -- url: /wiki/rest/tinymce/1/drafts | userName: sysadmin | referer: https://instance.atlassian.net/wiki/pages/editpage.action?pageId=1234567
      @40000000527b7afc2bf39c1c com.atlassian.confluence.content.render.xhtml.XhtmlException: RuntimeException occurred while transforming editor format to storage format (java.lang.IllegalArgumentException: filename cannot be null or blank.)
      @40000000527b7afc2bf3a004 	at com.atlassian.confluence.content.render.xhtml.editor.EditorXhtmlTransformer.transform(EditorXhtmlTransformer.java:70)
      @40000000527b7afc2bf3a7d4 	at com.atlassian.confluence.content.render.xhtml.TransformerChain.transform(TransformerChain.java:41)
      @40000000527b7afc2bf3a7d4 	at com.atlassian.confluence.content.render.xhtml.PluggableTransformerChain.transform(PluggableTransformerChain.java:53)
      @40000000527b7afc2bf3abbc 	at com.atlassian.confluence.content.render.xhtml.editor.DefaultEditorConverter.convert(DefaultEditorConverter.java:40)
      @40000000527b7afc2bf3afa4 	at com.atlassian.confluence.content.service.DefaultDraftService.saveDraftFromEditor(DefaultDraftService.java:90)
      
      Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException: filename cannot be null or blank.
      @40000000527b7afc2bf83f9c 	at com.atlassian.confluence.content.render.xhtml.transformers.ThrowExceptionOnFragmentTransformationError.handle(ThrowExceptionOnFragmentTransformationError.java:13)
      @40000000527b7afc2bf84f3c 	at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:169)
      @40000000527b7afc2bf85324 	at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transform(DefaultFragmentTransformer.java:123)
      @40000000527b7afc2bf85af4 	at com.atlassian.confluence.content.render.xhtml.editor.EditorXhtmlTransformer.transform(EditorXhtmlTransformer.java:49)
      @40000000527b7afc2bf85edc 	... 267 more
      @40000000527b7afc2bf85edc Caused by: java.lang.IllegalArgumentException: filename cannot be null or blank.
      @40000000527b7afc2bf862c4 	at com.atlassian.confluence.content.render.xhtml.model.resource.identifiers.AttachmentResourceIdentifier.<init>(AttachmentResourceIdentifier.java:20)
      @40000000527b7afc2bf86a94 	at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseSingleMacroParameter(MacroParameterTypeParserImpl.java:208)
      @40000000527b7afc2bf86a94 	at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseMacroParameter(MacroParameterTypeParserImpl.java:96)
      @40000000527b7afc2bf87264 	at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseMacroParameter(MacroParameterTypeParserImpl.java:77)
      @40000000527b7afc2bf8764c 	at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroNameAndParameterSubParser.parse(MacroNameAndParameterSubParser.java:57)
      @40000000527b7afc2bf87e1c 	at com.atlassian.confluence.content.render.xhtml.editor.macro.EditorMacroUnmarshaller.unmarshal(EditorMacroUnmarshaller.java:73)
      @40000000527b7afc2bf885ec 	at com.atlassian.confluence.content.render.xhtml.editor.macro.EditorMacroUnmarshaller.unmarshal(EditorMacroUnmarshaller.java:31)
      @40000000527b7afc2bf889d4 	at com.atlassian.confluence.content.render.xhtml.UnmarshalMarshalFragmentTransformer.transform(UnmarshalMarshalFragmentTransformer.java:30)
      @40000000527b7afc2bf88dbc 	at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:147)
      

      This also affect other types of content such as videos.

      Attachments

        Issue Links

          Activity

            People

              gvotruong Giang Vo
              imaduro Ivan Maduro (Inactive)
              Votes:
              15 Vote for this issue
              Watchers:
              21 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: