Options

Message size limit for communication component?

XMLXML Member Posts: 10
I'm using the NAV Communication Component to transfer data from one NAV database to another (technical version 5.0 SP1). But it seems that the message arrives incomplete if it exceeds a certain size (about 107 KB).

The data is first exported by XMLPort to a temporary BLOB field, then loaded to an v6.0 Microsoft XML DOMDocument60 and the InStream for the Communication Message is then extracted from this DOM Document:
...
OutStream := OutMessage.GetStream;

CREATE(DOMDocument);
TempBlob.Blob.CREATEOUTSTREAM(BlobOutStream);
DataXMLPort.SETDESTINATION(BlobOutStream);
DataXMLPort.EXPORT;

TempBlob.Blob.CREATEINSTREAM(BlobInStream);
DOMDocument.load(BlobInStream);
DOMDocument.save(OutStream);

InMessage := OutMessage.SendWaitForReply(GetTimeout);
...
Receiving the message looks like this:

Communication Component Event trigger "Messag" has a VAR parameter InMessage.
InStream := InMessage.GetStream;
CREATE(DOMDocument);
DOMDocument.load(InStream);
...
On loading the InStream to the DOMDocument an error occurs that the Elements are not closed correctly as if the InStream was not transferred completely. I don't know why. Messages with less content are transferred perfectly.

Does anybody know if there is a size restriction for Communication Component messages?

Comments

  • Options
    XMLXML Member Posts: 10
    The problem seems to be the DOMDocument which is not able to load the InStream of the InMessage correctly.
    When the InStream is loaded directly into a File or imported to a Table by an XMLPort everything works fine - even if large content is transferred.
Sign In or Register to comment.