Я подвергаю SOAP-услугу с помощью Tomcat, Apache CXF и Spring Boot. В веб-службе включен MTOM, и он работает, как ожидается, при тестировании его из пользовательского интерфейса SOAP.Сделать MTOM Дополнительно
Проблема заключается в том, что когда я пытаюсь получить сообщение с отключенным MTOM из интерфейса SOAP, я до сих пор получаю сообщение с приложением XOP. Параметры из пользовательского интерфейса SOAP, которые я использую: Включить MTOM: false; Force MTOM: false.
Я попытался установить заголовок Accept на запрос к приложению/xml вместо application/xop + xml, но я все равно получаю то же самое.
Единственный раз, когда я получаю поток Byte64, когда я проверяю с файлом, который меньше, чем порог, который я настроил:
@MTOM(enabled = true, threshold = 2048)
Что я должен был бы это MTOM быть необязательным, если его установлен для включения и зависит от запроса не только от порога, может быть, это проблема с интерфейсом SOAP или моя текущая конфигурация игнорирует параметры запроса?
Мне это нужно, потому что некоторые клиенты веб-службы не поддерживают MTOM.
Вот объект, который я вернулся из выставленного метода:
public class Document {
private DataHandler fileData;
public DataHandler getFileData() {
return fileData;
}
public void setFileData(DataHandler fileData) {
this.fileData = fileData;
}
}
Благодарим за отзыв. Я пришел к такому же выводу после нескольких часов поиска и тестирования. – Andrei