Мне нужно вызвать из HTTP-адаптера SOAP-службу с типом содержимого multipart/related
.IBM Mobile First 7.1: многостраничное/связанное преобразование Content-Type и XSL
Если я использую этот объект в качестве параметра WL.Server.invokeHttp
{
method : 'post',
returnedContentType : 'xml',
returnedContentEncoding : 'utf-8',
path : servicePath,
body : {
content : MY_REQUEST,
contentType : "text/xml; charset=utf-8"
},
transformation: {
type: 'xslFile',
xslFile: 'myXsl.xsl'
}
};
Я получил эту ошибку:
"Runtime: Failed to read the HTTP response to: /MyService
\njava.lang.IllegalArgumentException: Http content type 'multipart/related' not supported.
Supported types are: [json, css, csv, javascript, plain, xml, html]"
Так я изменил параметр returnedContentType: 'plain'
для получения результата. Теперь ответ выглядит так:
{
"isSuccessful": true,
"errors": [],
"warnings": [],
"info": [],
"text": "--uuid:85c87f37-9436-41d1-94d4-0b944c3618b1\nContent-Type: application/xop+xml; charset=UTF-8; type=\"text/xml\";\nContent-Transfer-Encoding: binary\nContent-ID: <[email protected]>\n\n
MY SOAP RESPONSE
\n--uuid:85c87f37-9436-41d1-94d4-0b944c3618b1--",
"responseHeaders": {
...
"Content-Type": "multipart/related; type=\"application/xop+xml\"; boundary=\"uuid:85c87f37-9436-41d1-94d4-0b944c3618b1\"; start=\"<[email protected]>\"; start-info=\"text/xml\""
...
}
}
Но преобразование xsl не выполняется. С некоторыми строковыми манипуляциями по текстовому параметру я могу получить ответ SOAP в виде строки, но я не нашел способ (какой-то API) вручную вызвать XSL-преобразование для получения json.