Confluence import has mostly blank pages

Describe the issue / Steps to reproduce:
Got a BlueSpice instance up and running, and tried importing a test space from Confluence by following the instructions laid out here.
The process seems to have gone smoothly (no errors in the console), however the pages are mostly blank. Some do have a comment inside when you try to edit them, but most are just blank pages with the title, hierarchy and attachments imported.

Are there any troubleshooting steps I can do to get the content of the pages imported as well?

Expected behavior:
Expected the page content to be imported.

What was the error message/error log?
N/A

Screenshots
Cannot add embeds due to new account.
Imgur link: Imgur: The magic of the Internet

System info:

  • OS: Debian 6.1.128-1
  • Server: Apache 2.4.62
  • PHP: 8.2.26
  • Database: 10.11.6-MariaDB-0+deb12u1
  • BlueSpice version: 4.5.4
  • Browser version: Firefox 135.0

Hi Gabriel,

it seems that the migration script treats the embedded files as attachments:
a Confluence page can hold files as attachments, but attachments in BlueSpice are managed in a standalone place.

For Gliffy-formatted diagrams I am not totally sure how they are formatted, but BlueSpice do provide support for .bpmn diagrams, with which the maintenance script might be able to support Gliffy diagrams with some conversion.

Would it be possible for you to share the dump files of your test Confluence workspace, or perhaps describe how you build the test workspace? I am interested to have a try.

Hi Hua!

Unfortunately I wouldn’t be able to share the dump files as they still contain Personally Identifiable Information.

The problem isn’t affecting only pages with Gliffy diagrams, I should have provided more screenshots. All pages are basically blank.

More examples: Imgur: The magic of the Internet

I may be able to provide parts of the logs if helpful (after redacting PII from them). I have saved the logs of every command I’ve run.

Can you please confirm you have pandoc [1] installed on the machine you are running migrate-confluence on?

[1] GitHub - hallowelt/migrate-confluence: Tool to migrate content from Confluence export files into a MediaWiki compatible import source

Hi! Sorry for the late reply.
Yes, pandoc is installed.

Since my last reply I have created a new space without any kind of PII, which I am able to share.

However, I think I might have identified the issue, but I don’t know how to fix it yet.

Step 3 is the only one which shows errors (which is easier to see now on the smaller Confluence export).

Here are the logs:

Source: /home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export
Destination: /home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export

Fetching file list ...done.
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/98316.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/98331.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131076.mraw
PHP Warning:  Undefined array key -1 in phar:///home/gabriel/bin/migrate-confluence/src/Converter/ConfluenceConverter.php on line 804
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
PHP Warning:  Undefined array key -1 in phar:///home/gabriel/bin/migrate-confluence/src/Converter/ConfluenceConverter.php on line 804
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131172.mraw
NODE: 
<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="a1094ebb05173bfa77ab39da352f5f6f">
  <ac:parameter ac:name="">On-this-page</ac:parameter>
</ac:structured-macro>
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131194.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131197.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131200.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131203.mraw
NODE: 
<ac:structured-macro ac:name="blog-posts" ac:schema-version="1" ac:macro-id="45110fb0-b1a0-433b-a707-39944dddecb0">
  <ac:parameter ac:name="max">5</ac:parameter>
  <ac:parameter ac:name="content">titles</ac:parameter>
</ac:structured-macro>
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131205.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/131224.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/163842.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/163845.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262147.mraw
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262151.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262160.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262170.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262176.mraw
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262178.mraw
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262187.mraw
NODE: 
<ac:macro ac:name="create-from-template">
  <ac:parameter ac:name="contentBlueprintId">e25ed705-40ad-40e5-83d3-4dae9c882e88</ac:parameter>
  <ac:parameter ac:name="blueprintModuleCompleteKey">com.atlassian.confluence.plugins.confluence-business-blueprints:meeting-notes-blueprint</ac:parameter>
  <ac:parameter ac:name="createButtonLabel">Create meeting note</ac:parameter>
</ac:macro>
NODE: 
<ac:macro ac:name="decisionreport">
  <ac:parameter ac:name="cql">space = "~606dcf5fef87dd00686697d0" and label = "meeting-notes"</ac:parameter>
</ac:macro>
NODE: 
<ac:macro ac:name="content-report-table">
  <ac:parameter ac:name="contentBlueprintId">e25ed705-40ad-40e5-83d3-4dae9c882e88</ac:parameter>
  <ac:parameter ac:name="analyticsKey">meeting-notes</ac:parameter>
  <ac:parameter ac:name="blankDescription">Set meeting agendas, take notes, and share action items with your team.</ac:parameter>
  <ac:parameter ac:name="blankTitle">Meeting notes</ac:parameter>
  <ac:parameter ac:name="spaces">~606dcf5fef87dd00686697d0</ac:parameter>
  <ac:parameter ac:name="createButtonLabel">Create meeting note</ac:parameter>
  <ac:parameter ac:name="labels">meeting-notes</ac:parameter>
</ac:macro>
pandoc: /home/gabriel/confluence: withBinaryFile: does not exist (No such file or directory)
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262192.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262198.mraw
/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content/raw/262203.mraw
Done.

Is there something obvious I should do that I missed?

The outputs you see are related to macros that are currently not supported by the tool. E.g. blog-posts and decisionreport.

Please check your workspace/ directory. It should have a subfolders contents/raw and contents/wikitext. Can you please check if they contain files and if so, if they have contents? You should see *.mraw, *.mprep and *.wiki files.

Hi! The directories do contain files, the files do contain content, however the content is just empty HTML and XML.

Shell output:

gabriel@bluespice-dev:/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content$ ls
raw  wikitext
gabriel@bluespice-dev:/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content$ ls raw/
131076.mprep  131172.mprep  131194.mraw  131200.mraw   131203.mraw  131224.mraw  163845.mraw   262147.mraw  262160.mraw  262176.mprep  262178.mprep  262187.mprep  262192.mraw	262203.mraw  98331.mraw
131076.mraw   131172.mraw   131197.mraw  131203.mprep  131205.mraw  163842.mraw  262147.mprep  262151.mraw  262170.mraw  262176.mraw   262178.mraw   262187.mraw   262198.mraw	98316.mraw
gabriel@bluespice-dev:/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content$ ls wikitext/
131076.wiki  131172.wiki  131194.wiki  131197.wiki  131200.wiki  131203.wiki  131205.wiki  131224.wiki	163842.wiki  163845.wiki  262147.wiki  262151.wiki  262160.wiki  262170.wiki  262176.wiki  262178.wiki	262187.wiki  262192.wiki  262198.wiki  262203.wiki  98316.wiki	98331.wiki
gabriel@bluespice-dev:/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content$ cat raw/131076.mraw
<html><body></body></html>
gabriel@bluespice-dev:/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content$ cat raw/131076.mprep
<xml xmlns:ac="some" xmlns:ri="thing" xmlns:bs="bluespice"><html><body></body></html></xml>
gabriel@bluespice-dev:/home/gabriel/confluence migration/working-directory/tmp/confluence/gabriel-export/content$ cat wikitext/131076.wiki

 <!-- From bodyContent 131076.mraw -->

If necessary I could share the last Confluence export, as it’s from a space with just filler content.

If the .mraw files are empty there was already an issue with the extract phase. Yes, If you can share the export, please do so.

Hi! Here’s the Confluence export:

Well, migration worked for me.

confluence1
confluence2
confluence3
confluence4

Looks like there is something odd in your environment.
Can you maybe share more information about the PHP installation, you are running the migrate-confluence tool with? Especially enabled modules and configuration. See also GitHub - hallowelt/migrate-confluence: Tool to migrate content from Confluence export files into a MediaWiki compatible import source

Hi!

PHP is installed as a standard Debian package.
Here is some more information:

gabriel@bluespice-dev:~$ php -v
PHP 8.2.28 (cli) (built: Mar 13 2025 18:21:38) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.28, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.28, Copyright (c), by Zend Technologies

The docs mention that the xml extension must be installed, which seems to be the case from the output of php -m.

gabriel@bluespice-dev:~$ php -m
[PHP Modules]
calendar
Core
ctype
curl
date
dom
exif
FFI
fileinfo
filter
ftp
gd
gettext
hash
iconv
intl
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
Phar
posix
random
readline
Reflection
session
shmop
SimpleXML
sockets
sodium
SPL
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

The php.ini file is the default one, though I’ll add the contents of it here as well, just in case.

Indeed strange. You could try a different environment. Unfortunately, I can not give better advice at the moment.