Верблюд и т. д. Смотри / получи действие не удалось с sslContextParameter

При написании корня camel-etcd для действия watch Если я использую sslContextParameter в качестве параметра OPTION, заканчивающегося ошибкой ниже

    SSLContextParameters sslContextParam = new SSLContextParameters();
    KeyStoreParameters keyStoreParam = new KeyStoreParameters();
    keyStoreParam.setResource(caCertFile);

    TrustManagersParameters trustMgr = new TrustManagersParameters();
    trustMgr.setKeyStore("\etcd-ca.crt");

    sslContextParam.setTrustManagers(trustMgr);
    sslContextParam.setSessionTimeout("10000");
     parentalRatingWatchRouteEndPoint = 
   "etcd:watch"+etcdHeaderPath+parentalRatingKey+"?recursive=true"+"&uris="+etcdRestEndPoint+"&sslContextParameter"+sslContextParam;

    from(parentalRatingWatchRouteEndPoint).startupOrder(2).autoStartup(true)
    .routeId(parentalRatingWatchRouteId)
    .onCompletion()

.....

из-за: Не удалось найти подходящий установщик для свойства: sslContextParameters, так как не существует метода установщика с таким же типом: java.lang.String, ни преобразование типа невозможно: нет доступных преобразователей типа для преобразования из типа: java.lang.String to Обязательный тип: org.apache.camel.util.jsse.SSLContextParameters со значением SSLContextParameters[keyManagers=null, trustManagers=TrustManagerType[keyStore=KeyStoreParameters[type=null, password=********, provider=null, resource=etcd-ca.crt], provider=null, алгоритма =null], secureRandom=null, clientParameters=null, serverParameters=null, provider=null, secureSocketProtocol=null, certAlias ​​= null, getCipherSuites () = null, getCipherSuitesFilter () = null, getSecureSocketProtocols () = null, getSecureSocketProtocolsFilter () = null, getSessionTimeout () = 10000]

etcd: // часы / развертывания / прод / конфигурация /parentalRatings/v1 рекурсивные = истина &sslContextParameters=SSLContextParameters%5BkeyManagers%3Dnull%2C+trustManagers%3DTrustManagerType%5BkeyStore%3DKeyStoreParameters%5Btype%3Dnull% пароль% 2C + 3D*****? ***%2C+% поставщик 3Dnull% 2C + ресурс%3D%2Fetcd-ca.crt%5D%2C+% поставщик 3Dnull% 2C + алгоритм%3Dnull%5D%2C+ SecureRandom%3Dnull%2C+clientParameters%3Dnull%2C+serverParameters%3Dnull%2C+ поставщик%3Dnull%2C+secureSocketProtocol%3Dnull%2C+certAlias%3Dnull%2C+getCipherSuites%28%29%3Dnull%2C+getCipherSuitesFilter%28%29%3Dnull%2C+getSecureSocketProtocols%28%29%3Dnull%2C+getSecureSocketProtocolsFilter%28%29%3Dnull%2C+getSessionTimeout%28%29%3D10000%5D& URIs = HTTPS%3A%2F%2Flocalhost%3A2379%2Fv2%2Fkeys

Он должен подключиться к серверу ETCD с помощью sslContextParameter.

1 ответ

Вам нужно поместить хранилище ключей ssl в реестр верблюдов и ссылаться на него как "etcd:...&sslContextParameter=#yourSslContextParameter"

Другие вопросы по тегам