Basierend auf der Dokumentation für Spring Cloud-Datenfluss (SCDF) werden nur Eigenschaften mit dem Präfix "bereitgestellt" bezeichnet. oder "App" werden berücksichtigt, wenn eine Anwendung (sei es eine Quelle, ein Prozessor oder eine Senke) als Teil eines Streams bereitgestellt wird.App-Eigenschaften in Spring Cloud Datenflussanwendung
Allerdings habe ich bemerkt, dass neben dem Präfix, alle Eigenschaften als "Strings" zur Verfügung gestellt werden müssen, egal was ihr ursprünglicher Typ ist; andernfalls werden sie einfach nach dieser Codezeile von SCDF verworfen:
propertiesToUse = DeploymentPropertiesUtils.convert(props);
, die tut dies:
public static Map<String, String> convert(Properties properties) {
Map<String, String> result = new HashMap<>(properties.size());
for (String key : properties.stringPropertyNames()) {
result.put(key, properties.getProperty(key));
}
return result;
}
Wie Sie oben vom Schnipsel sehen kann, ist es nur „stringPropertyNames“ betrachtet, die Filter alles aus, was nicht als "String" zur Verfügung gestellt wird.
Ich nehme an, dieses Verhalten ist absichtlich, aber warum? Warum nehmen Sie nicht einfach alle vom Benutzer definierten Eigenschaften mit dem richtigen Präfix auf?
Vielen Dank für Ihre Unterstützung.
Ja, das macht dann vollkommen Sinn. –