0

Мне нужно вызвать из 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.

ответ

0

XSL-трансформация выполняется только на стороне сервера (для нее нет «активации» вручную). Что бы вы могли сделать, возможно, если вам все еще нужно преобразовать XSL, запустите XSL через JavaScript. См., Например: how to run XSL file using JavaScript/HTML file

Смежные вопросы