Невозможно отправить подписанный ответ MDN для конкретного сообщения в библиотеке Apache Camel AS2JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Невозможно отправить подписанный ответ MDN для конкретного сообщения в библиотеке Apache Camel AS2

Сообщение Anonymous »

Я использую библиотеку apache Camel as2 в своем Java-проекте, где я реализовал сервер as2.
В настоящее время я генерирую подписанный ответ MDN, настраивая сертификат и алгоритм в конфигурации конечной точки сервера, и он работает нормально , но я хочу подписать MDN на основе запроса As2, где в заголовках я получу алгоритм Mic, запрошенный пользователем, поэтому я хочу подписать, используя один из этих алгоритмов во время выполнения, а не Жесткое кодирование алгоритма при создании конечной точки.
Я также просмотрел код библиотеки и проверил его в Интернете, но до сих пор не смог найти никакого решения.
Я видел онлайн-сервер https://mendelson-e-c.com/as2_testserver, который делает то же самое и подписывает сообщение As2, пожалуйста, помогите мне в реализации этого.
Заранее спасибо, что уделили время!!
Код моего сервера выглядит примерно так, как показано ниже, с подписью, определенной в конфигурации конечной точки.

@Singleton
public class As2Server extends RouteBuilder {
private final CamelContext camelContext;

@Inject
public As2Server(CamelContext camelContext) {
this.camelContext = camelContext;
}

@Override
public void configure() {
try {
from(configureServerEndpoint()).process(exchange -> {

// processing logic

});
} catch (Exception e) {
throw new RuntimeException(e);
}
}

private Endpoint configureServerEndpoint() throws Exception {
AS2Configuration endpointConfiguration = new AS2Configuration();
endpointConfiguration.setApiName(AS2ApiName.SERVER);
endpointConfiguration.setMethodName(AS2ServerManagerApiMethod.LISTEN.name());
endpointConfiguration.setDecryptingPrivateKey(getPrivateKey());
endpointConfiguration.setSigningPrivateKey(getPrivateKey());
endpointConfiguration.setSigningCertificateChain(getCertificateChain());
endpointConfiguration.setSigningAlgorithm(AS2SignatureAlgorithm.MD5WITHRSA);
endpointConfiguration.setMdnMessageTemplate("Your AS2 message has been received");

try (AS2Component as2Component = new AS2Component()) {
as2Component.setCamelContext(camelContext);
as2Component.setConfiguration(endpointConfiguration);
return as2Component.createEndpoint(STR."as2://server/listen?serverPortNumber=11080&requestUriPattern=*");
}
}

}



Подробнее здесь: https://stackoverflow.com/questions/792 ... s2-library
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»