Мое приложение использует версии 2.19.0 camel-core и camel-spring-ws. Мне нужно отправить ответное сообщение в службу Клиента с помощью Camel SpringWebserviceComponent.
Это все довольно стандартно, кроме URL клиента, в конце он содержит параметр без значения, например https://client -service.com / путь / index.php? Протокол + web_service
Я никогда раньше не видел такой URL, но клиент заявляет, что параметр в конце (после знака вопроса и без значения) сопоставляется с контроллером в их приложении.
Когда я пытаюсь вставить это в свое приложение, я получаю исключение org.apache.camel.ResolveEndpointFailedException.
Я просмотрел исходный код SpringWebserviceComponent и строку 129 org.apache.camel.impl.DefaultComponent (который расширяет SpringWebServiceComponent) проверяет параметры URL-адреса и выдает исключение ResolveEndpointFailedException, если какой-либо из параметров не является допустимым параметром для компонента веб-службы Spring, как указано здесь: https://camel.apache.org/spring-web-services.html. Конечно, протокол + web_service не является допустимым параметром для SpringWebserviceComponent, поэтому возникает исключение.
Эта проверка выполняется только в том случае, если метод isWenientProperties () SpringWebServiceEndpoint возвращает значение false, что жестко закодировано.
Кто-нибудь может предложить какие-либо другие способы заставить SpringWebServiceComponent принимать этот URL, включая его нестандартный параметр?