eB Web uses an activeX control to upload file data to eB. Although this process uses HTTP, it is not a classic form upload - rather there is a handshake between the control and a listening endpoint that recieves the files. This is done to allow users who have unreliable connections to upload files more repeatably and to handle very large files (with sizes in Gb) to be uploaded more safely. During transfer the process creates a signature for each block and the block is verified on the server to ensure that it was not modified in transit.
The client ActiveX keeps a log of each transfer in it's scratch folder using .tsv files. The log is deleted a few minutes after a successful request completes, so be prompt. To find the file look in: %userprofile%\AppData\Local\Temp\Bentley\eB.Control.IEControl\.
The log file is a tsv format log of the actions the control takes, and can be read in Excel or notepad. If an error is reported by the server check this file to see if a 500 error was reported during the transfer of a block of the file.
During the upload process the ActiveX control is communicating with a server endpoint called UploadFile.ashx. This endpoint keeps information about each upload in a temporary log in the working folder. You will see temporary files containing the state of the transfer within the temporary folder. If a problem occurs it is possible to enable logging of the transfer by adding an extra config setting:
<eB.PlugIn.Core.Properties.Settings> <setting name="CreateLogFile" serializeAs="String"> <value>true</value> </setting>
This will create a log file for each transfer.
Sometimes the control will report an error that looks like a page full of HTML, or the client log will contain an ERROR entry that is a HTML file. In both cases the HTML will contain a platitude about a server error, but no actual information about what the error was. This is a "friendly" server error, and is generated when IIS 7 or 8 detects that the status was set to 500 by the page. The upload file endpoint sets the status to 500 if an error occurs and includes some information about the error state. To get the information you must turn off "friendly" errors for the endpoint folder.