Я создаю приложение с функцией передачи файлов на/с моего сервера с использованием протокола AS2. Он создан с использованием Apache Camel и SpringBoot.
Я начал с отправки файла через AS2 с помощью Apache Camel. Я использовал онлайн-приложение Мендельсона для проверки своих запросов AS2. (https://mendelson-e-c.com/as2_testserver)
Все работало хорошо, мне удалось передать файл на сервер AS2 Mendelson. Я проверил их консоль и также подтвердил имя отправленного файла.
Теперь я пытаюсь построить логику для сервера AS2, поскольку мое приложение также должно принимать файлы через AS2.
Теперь я пытаюсь построить логику для сервера AS2. p>
Вот как я отправляю файл. Он работает нормально, поскольку я тестировал сервер Mendelson, и ему также удалось получить имя файла.
exchange.setProperty("FileName", exchange.getIn().getHeader("FileName"));
.toD("inhouseas2://client/send?targetHostName=" + targetHostName
+ "&targetPortNumber="// + targetPort
+ "&inBody=ediMessage"
+ "&ediMessageContentType=" + XML_CONTENT_TYPE
+ "&attachedFileName=${exchangeProperty.FileName}" --- sending the file name here.
Теперь я также построил логику для работы в качестве сервера AS2. Я могу правильно получить тело сообщения, но не могу получить свойство AttachFileName.
Все остальные свойства сообщений доступны, как показано ниже.
.process(exchange -> {
System.out.println("Message in: " + exchange.getIn().getBody().getClass() + "headers:" + exchange.getIn().getHeaders() + "header-file-name:" + exchange.getIn().getHeader("FileName") + "message-header-file-name:" + exchange.getMessage().getHeader("FileName") + "exchange-property-file-name:" + exchange.getProperty("FileName"));
System.out.print("All Query Params" + exchange.getIn().getHeader(Exchange.HTTP_QUERY, String.class));
HttpCoreContext context = exchange.getProperty(org.apache.camel.component.as2.internal.AS2Constants.AS2_INTERCHANGE, HttpCoreContext.class);
String ediMessage = exchange.getIn().getBody(String.class);
String as2From = "", as2To = "";
if (context != null) {
HttpRequest request = context.getRequest();
BasicHttpRequest basicRequest = (BasicHttpRequest) context.getRequest();
LOGGER.info("Pre Processer valdiation - Headers.." + request.getHeaders().toString() + "..params..." + request.getRequestUri() + context.getEndpointDetails());
for (org.apache.hc.core5.http.Header header : request.getHeaders()) {
System.out.println(header.getName() + ": " + header.getValue());
if(AS2Header.AS2_FROM.equals(header.getName())) {
as2From = header.getValue();
} else if(AS2Header.AS2_TO.equals(header.getName())) {
as2To = header.getValue();
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... springboot
Отсутствует прикрепленное свойство FileName — Apache Camel AS2 в качестве сервера — Spring Boot ⇐ JAVA
Программисты JAVA общаются здесь
1735232002
Anonymous
Я создаю приложение с функцией передачи файлов на/с моего сервера с использованием протокола AS2. Он создан с использованием Apache Camel и SpringBoot.
Я начал с отправки файла через AS2 с помощью Apache Camel. Я использовал онлайн-приложение Мендельсона для проверки своих запросов AS2. (https://mendelson-e-c.com/as2_testserver)
Все работало хорошо, мне удалось передать файл на сервер AS2 Mendelson. Я проверил их консоль и также подтвердил имя отправленного файла.
Теперь я пытаюсь построить логику для сервера AS2, поскольку мое приложение также должно принимать файлы через AS2.
Теперь я пытаюсь построить логику для сервера AS2. p>
Вот как я отправляю файл. Он работает нормально, поскольку я тестировал сервер Mendelson, и ему также удалось получить имя файла.
exchange.setProperty("FileName", exchange.getIn().getHeader("FileName"));
.toD("inhouseas2://client/send?targetHostName=" + targetHostName
+ "&targetPortNumber="// + targetPort
+ "&inBody=ediMessage"
+ "&ediMessageContentType=" + XML_CONTENT_TYPE
+ "&attachedFileName=${exchangeProperty.FileName}" --- sending the file name here.
Теперь я также построил логику для работы в качестве сервера AS2. Я могу правильно получить тело сообщения, но не могу получить свойство AttachFileName.
Все остальные свойства сообщений доступны, как показано ниже.
.process(exchange -> {
System.out.println("Message in: " + exchange.getIn().getBody().getClass() + "headers:" + exchange.getIn().getHeaders() + "header-file-name:" + exchange.getIn().getHeader("FileName") + "message-header-file-name:" + exchange.getMessage().getHeader("FileName") + "exchange-property-file-name:" + exchange.getProperty("FileName"));
System.out.print("All Query Params" + exchange.getIn().getHeader(Exchange.HTTP_QUERY, String.class));
HttpCoreContext context = exchange.getProperty(org.apache.camel.component.as2.internal.AS2Constants.AS2_INTERCHANGE, HttpCoreContext.class);
String ediMessage = exchange.getIn().getBody(String.class);
String as2From = "", as2To = "";
if (context != null) {
HttpRequest request = context.getRequest();
BasicHttpRequest basicRequest = (BasicHttpRequest) context.getRequest();
LOGGER.info("Pre Processer valdiation - Headers.." + request.getHeaders().toString() + "..params..." + request.getRequestUri() + context.getEndpointDetails());
for (org.apache.hc.core5.http.Header header : request.getHeaders()) {
System.out.println(header.getName() + ": " + header.getValue());
if(AS2Header.AS2_FROM.equals(header.getName())) {
as2From = header.getValue();
} else if(AS2Header.AS2_TO.equals(header.getName())) {
as2To = header.getValue();
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79309986/attachedfilename-property-missing-apache-camel-as2-as-a-server-springboot[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия