You are viewing limited content. For full access, please sign in.

Question

Question

Workflow Parameters - Character Limit?

asked on October 8, 2020

Hi All,

We have a client who is looking to pass documents in to Laserfiche via the Workflow API (Workflow Web Service) but we've had a couple of issues with the size of the request, as per my previous post here: https://answers.laserfiche.com/questions/174587/413-Request-Entity-Too-Large--Workflow-Web-Service-API#174599

The above issue was with the total size of the request, and has now been resolved. However we now seem to be stuck with a limitation on the size of each individual parameter. If I try to pass in a parameter value longer than approx. 200,000 characters the API request fails with the following error:

<InstanceCreationResultData xmlns="http://schemas.datacontract.org/2004/07/Laserfiche.Workflow.ComponentModel.DataContracts.Creation" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
    <fault>
        <Status xmlns="">100</Status>
        <Detail xmlns="">An error occurred communicating with the workflow server. View error log for more details. [0604-WFSO0]</Detail>
        <DetailCode xmlns="">0</DetailCode>
    </fault>
    <instanceId i:nil="true"/>
</InstanceCreationResultData>

I assume because shorter parameters work that this is a limitation on the number of characters that can be passed in as a parameter? I've attached a sample request with an example of an API request that fails.

Thanks in advance!

Dan

0 0

Answer

SELECTED ANSWER
replied on October 8, 2020

If the sample request attached to your post is a real license, please remove it. This is a public forum so it's visible to unauthenticated users.

The limit can be increased in the Workflow Server config file. Look for

     <netTcpBinding>
        <binding name="ConfigurationBinding" maxBufferSize="262144" maxReceivedMessageSize="262144">
          <readerQuotas maxStringContentLength="1024000000" maxArrayLength="1024000000" />
        </binding>
      </netTcpBinding>

and increase maxBufferSize and maxReceivedMessageSize.

I would still recommend against using Workflow to pass large files around. Posting them directly to Laserfiche or using Import Agent would be more efficient.

0 0
replied on October 9, 2020

Thanks Miruna, that works perfectly now! laugh And sorry I should have said in the original post - the file in the request isn't a driving license, I replaced it with a document that just contained a load of random text.

We originally suggested Import Agent but the client was keen to keep of the the data and documents as part of the same request. Currently this project is just a proof of concept, and in the future they may look to create their own API endpoint which utilises the Laserfiche SDK to save the documents instead.

Thanks again for your assistance :)

0 0

Replies

You are not allowed to reply in this post.
You are not allowed to follow up in this post.

Sign in to reply to this post.