- Step 0: Prerequisites
- Step 1: Make the files to be imported (the Documents folder) accessible
- Step 2: Download & Configure Import Script
- Step 3: Create Nuxeo Folders
- Step 4: Generate Import URLs
- Step 5: Import the Documents
- Step 6: Monitor the Logs
- Step 7: Run the post import finalizer
Step 0: Prerequisites
Before running the importer, you should have installed the pi-nuxeo-marketplace-x.x.x-mp.zip package into Nuxeo.
You should also have logged into the Nuxeo GUI, and created a workspace called 'Patricia' and a folder named 'Documents' in 'Patricia' workspace.
Change nuxeo.conf file and make JVM parameters are set properly. For example:
JAVA_OPTS=-Xms1024m -Xmx2048m -XX:MaxPermSize=2048m -server -Dfile.encoding=UTF-8
References:
- http://stackoverflow.com/questions/5839359/java-lang-outofmemoryerror-gc-overhead-limit-exceeded
- http://stackoverflow.com/questions/12847151/setting-xxdisableexplicitgc-in-production-what-could-go-wrong
Also execute the following (if needed) in the Patricia database:
update PAT_DMS_SETTINGS set DMS_SETTING_VALUE='false' where DMS_SETTING_KEY='file.import.completed'
Step 1: Make the files to be imported (the Documents folder) accessible
The files to be imported must be accessible by the Nuxeo server. In order for the importer to have access to the files, you must mount or copy the old Patricia (P:) file share onto the nuxeo machine. It's more reliable to copy the files to the Nuxeo server instead of mounting.
Example Mount Commands
Example mount command: linux (dom=YOURWINDOMAIN may not be needed):
mount -t cifs //server_ip_address/Patricia -o user=username,pass=mypass,dom=YOURWINDOMAIN /mnt/Patricia
Example mount command: MS Windows
net use p: \\server_ip_address\\patricia
Step 2: Download & Configure Import Script
Download pi-nuxeo-importer.zip from here: pi-nuxeo-importer.zip
After the pi-nuxeo-importer.zip is downloaded, unzip it to a folder, e.g: $HOME/pi-nuxeo-importer/
Edit config.py file, and change parameters according to the Nuxeo server information.
Step 3: Create Nuxeo Folders
The first step is to create top level Nuxeo folders, for example:
- /default-domain/workspaces/Patricia/Documents/0
- /default-domain/workspaces/Patricia/Documents/2
- /default-domain/workspaces/Patricia/Documents/4
by simply using a script:
cd ~/pi-nuxeo-importer python create_folders.py
Step 4: Generate Import URLs
In this step, we run a script to generate import URLs in a text file.
cd ~/pi-nuxeo-importer python generate_urls.py
Step 5: Import the Documents
In this step, we run a script to import documents by using the URLs text file generated in previous step.
cd ~/pi-nuxeo-importer python import_urls.py
Step 6: Monitor the Logs
You can access the logs via the following command. You can also just use a web browser to accessing: http://127.0.0.1:8080/nuxeo/site/fileImporter/log.
cd ~/pi-nuxeo-importer python log_monitor.py
You will know that the import is finished when the content of the log remains static, and ends with an import summary referencing 'SimonWatch' toolset, on the console.
Step 7: Run the post import finalizer
After the import is finished, the import finalization operation should be started (or, it will be run automatically at midnight).
curl -H 'Content-Type:application/json+nxrequest' -X POST -d '{"params":{},"context":{}}' -u 'Administrator:Administrator' "http://127.0.0.1:8080/nuxeo/site/automation/SetFileImportComplete"
The expected result is "Import mode closed & post-import services commenced successfully.".
This completes the import - your documents should now be accessible in the Patricia workspace in the DMS.
Completing step 7 without curl
If you do not have curl installed, you can use RESTClient as an alternative. The screenshots below action the same RESTful call in a graphical manner:
- Set the header to Content-Type application/json+nxrequest
2. Set the body to: {"params":{},"context":{}}
3. Set the auth tab (note select preemptive auth)
4. Set the request method to post
5. After pressing green arrows to execute the request, the result should be "Import mode closed & post-import services commenced successfully.".