I've upload a web service that has something that inherits system$filedocument as input (list). When calling the web service I get the error below.
I debugged the soap request and that looks just fine. The included file, base64, is just a simple mailfooter.html example.
Update: it seems that filedocument.content as input parameter for a service is broken. Work around for now is to create base64 myself and put is as a string.
Update 2: got it reproduced with soap UI as well, by forcing MTOM. I can see that Mendix tries to handle this as the incoming request:
Update 3: narrowed down the issue. It goes wrong with a input parameter in your web service of type list Filedocument. If you use Object Filedocument then it works fine with the same file. Obviously that's not a real solution, so I will file a bug report
------=_Part_4_15190296.1492801011197
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <rootpart@soapui.org>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
Note the data before the SOAPenv start. After that Mendix gives this error:
org.apache.axiom.om.OMException: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '-' (code 45) in prolog; expected '<'
SOAPUI test
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<ns1:authentication xmlns:ns1="http://www.example.com/" xsi:type="ns1:authentication">
<username>***/username>
<password>***</password>
</ns1:authentication>
</soapenv:Header>
<soapenv:Body>
<ns1:UpdateVerwachteDocumentenHaircut xmlns:ns1="http://www.example.com/">
<DiasDocumenten>
<UploadStuk>
<Description>Type document b</Description>
<Name>mailfooter.html</Name>
<Contents>
<xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include">PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6QXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZToxMXB4Ij4NCk1haWxjb250ZW50IGhpZXIuIA0KPC9kaXY+DQo8YnIgLz4NCjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OkFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6MTFweCI+DQpNZXQgdnJpZW5kZWxpamtlIGdyb2V0LDxiciAvPg0KCTxiciAvPg0KDQoJPGI+QmVoZWVyPC9iPg0KCTxiciAvPg0KCTxiciAvPg0KCTxiciAvPg0KDQoJPHRhYmxlPg0KCQk8dHI+DQoJCQk8dGQ+DQoNCgkJCQk8aW1nIHNyYz0iaHR0cDovL3d3dy5iZW5ldmlhLm5sL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE1LzA1L05IRy1sb2dvLmpwZyIgd2lkdGg9IjE0MHB4cHgiIC8+DQoJCQk8L3RkPg0KCQkJPHRkPg0KCQkJCTxkaXYgc3R5bGU9ImZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5OkFyaWFsLCBzYW5zLXNlcmlmOyI+DQoJCQkJCTxkaXYgc3R5bGU9ImNvbG9yOiNkMTAwMTg7IGZvbnQtd2VpZ2h0OmJvbGQ7Ij5OYXRpb25hbGUgSHlwb3RoZWVrIEdhcmFudGllPC9kaXY+DQoJCQkJCQ0KCQkJCQkNCgkJCQkJUG9zdGJ1cyAzMDkgPGJyIC8+DQoJCQkJCTI3MDAgQUggWm9ldGVybWVlcjxiciAvPiANCgkJCQkJPGI+VDwvYj46IDA3OSAzNjggMjggMjY8YnIgLz4NCgkJCQkJPGI+RjwvYj46IDA3OSAzNjEgMDcgODMgPGJyIC8+DQoJCQkJCTxiPkU8L2I+OiA8YSBocmVmPSJtYWlsdG86YmVoZWVyQG5oZy5ubCI+YmVoZWVyQG5oZy5ubDwvYT4NCgkJCQkJPGJyIC8+DQoJCQkJCTxiPkk8L2I+OiA8YSBocmVmPSJodHRwOi8vd3d3Lm5oZy5ubCI+d3d3Lm5oZy5ubDwvYT4NCgkJCQkJPGJyIC8+DQoJCQkJCTxiciAvPg0KCQkJCTwvZGl2Pg0KCQkJPC90ZD4NCgkJPC90cj4NCgk8L3RhYmxlPg0KCTxiciAvPg0KCTxkaXYgc3R5bGU9ImNvbG9yOiNkMTAwMTg7Zm9udC1zaXplOjlweCI+TkhHIGlzIGVlbiBwcm9kdWN0IHZhbiBkZSBTdGljaHRpbmcgV2FhcmJvcmdmb25kcyBFaWdlbiBXb25pbmdlbjwvZGl2Pg0KCTxkaXYgc3R5bGU9ImNvbG9yOiNjY2M7Zm9udC1zaXplOjlweCI+RGUgU3RpY2h0aW5nIFdhYXJib3JnZm9uZHMgRWlnZW4gV29uaW5nZW4gKFdFVykgaGVlZnQgYWFuIGhldCBvcHN0ZWxsZW4gZW4gdmVyemVuZGVuIHZhbiBkaXQgYmVyaWNodCBkZSBncm9vdHN0IG1vZ2VsaWprZSB6b3JnIGJlc3RlZWQuIEhldCBXRVcgc2x1aXQgZXZlbndlbCBpZWRlcmUgYWFuc3ByYWtlbGlqa2hlaWQgdWl0IHZvb3Igc2NoYWRlIGRvb3IgbmlldCwgbmlldCBiZWhvb3JsaWprIG9mIG5pZXQgdGlqZGlnIG92ZXJrb21lbiB2YW4gZGUgaW5mb3JtYXRpZSB2YW4gZGV6ZSBlLW1haWwsIGFsc21lZGUgZG9vciBhYW53ZXppZ2UgdmlydXNzZW4gb2YgYW5kZXJlIG1hbmlwdWxhdGllIGRvb3IgZGVyZGVuLjwvZGl2Pg0KDQo8L2Rpdj4=</xop:Include>
</Contents>
</UploadStuk>
</DiasDocumenten>
<HaircutNummer>101</HaircutNummer>
</ns1:UpdateVerwachteDocumentenHaircut>
</soapenv:Body>
</soapenv:Envelope>