Cannot open the uploaded file if the file is corrupted or encrypted

Troubleshoot the problem that an event cannot open the upload file if the file is corrupted or encrypted .

Problem

After uploading a file, click the file name and click Edit in Docs , an error page is displayed: The file cannot be imported into Docs, or, The error is not specified. In SystemOut.log of the Conversion server , the following error is displayed:
[11/5/15 10:32:37:484 CST] 00000ad5 StreamGobbler I   CLFAE527I: 384: return code: 520
[11/5/15 10:32:37:578 CST] 00000384 ConversionLib W   CLFAE527W: ConversionLibConverter - invalid file format
                                 com.ibm.symphony.conversion.service.exception.ConversionException: ConversionLibConverter invalid file format exception
	at com.ibm.symphony.conversion.converter.conversionlib.ConversionLibConverter.doConvert(ConversionLibConverter.java:268)
	at com.ibm.symphony.conversion.converter.conversionlib.ConversionLibConverter.convert(ConversionLibConverter.java:44)
	at com.ibm.symphony.conversion.converter.conversionlib.ConversionLibManager.convert(ConversionLibManager.java:150)
	at com.ibm.symphony.conversion.converter.xlsx2json.XLSX2JSONConverter.convertByConvLib(XLSX2JSONConverter.java:274)
	at com.ibm.symphony.conversion.converter.xlsx2json.XLSX2JSONConverter.convert(XLSX2JSONConverter.java:104)
	at com.ibm.symphony.conversion.converter.xlsx2json.XLSX2JSONConverter.convert(XLSX2JSONConverter.java:371)
	at com.ibm.conversion.service.rest.servlet.ConversionWork.run(ConversionWork.java:651)
	at com.ibm.ws.asynchbeans.J2EEContext$RunProxy.run(J2EEContext.java:269)
	at java.security.AccessController.doPrivileged(AccessController.java:298)
	at javax.security.auth.Subject.doAs(Subject.java:495)
	at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:132)
	at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:90)
	at com.ibm.ws.asynchbeans.J2EEContext$DoAsProxy.run(J2EEContext.java:336)
	at java.security.AccessController.doPrivileged(AccessController.java:327)
	at com.ibm.ws.asynchbeans.J2EEContext.run(J2EEContext.java:804)
	at com.ibm.ws.asynchbeans.WorkWithExecutionContextImpl.go(WorkWithExecutionContextImpl.java:222)
	at com.ibm.ws.asynchbeans.ABWorkItemImpl.run(ABWorkItemImpl.java:206)
	at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1862)

Cause

Https is not enabled for Connection Docs and packets loss caused by monitoring software.

Resolving the problem

  1. Configure IHS to enable virtualhost rewrite to HTTPS , the other virtualhost set as default .

    1. Enable 80 and 443 port .
    2. Config NameVirtualHost .
    3. Add VirtualHost for default and for rewrite.
    For example,
    Listen 80
    	Listen 443
    
    	NameVirtualHost *:80
    
    	<VirtualHost *:80>
    		ServerName docs01.cn.ibm.com
    		ServerAlias docs01.cn.ibm.com
    </VirtualHost>
    
    <VirtualHost *:80>
    		ServerName docs02.cn.ibm.com
    		ServerAlias docs02.cn.ibm.com
    		RewriteEngine on
    		RewriteCond %{SERVER_PORT} =80
    		RewriteRule ˆ(.*) https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
    </VirtualHost>
    

    The website of docs01.cn.ibm.com will not be rewrite to HTTPS . You can either use HTTPS or HTTP to open this site .

    The docs02.cn.ibm.com website will be forced to use HTTPS. If you use HTTP to open this site , the request URL will rewrite to HTTPS.
    Note: Monitor of Blue Coat Unified Agent could cause this problem.
  2. If setting http forced to https, you must update concord-config.json, conversion-config.json, viewer-config.json, docs-daemon-config.json, and viewer-daemon-config.json files and change all http to https. Refer to Forcing traffic to be sent over SSL for details.