Ich habe eine Situation, eine <int-http:outbound-channel-adapter ... />
zu verwenden, um ein Objekt mit Informationen in der Kopfzeile gespeichert senden.Spring-Integration: Using Cusom-Header für http: Outbound-Kanal-Adapter
Werke nach, wenn ich die <int-http:inbound-channel-adapter ... />
nennen wie folgt:
public void openTicket(final Profile profile, final Ticket ticket) {
final HttpHeaders headers = new HttpHeaders();
headers.set("profile", profile.toString());
final HttpEntity<Ticket> entity = new HttpEntity<Ticket>(ticket, headers);
template.exchange(URL, HttpMethod.PUT, entity, Ticket.class);
}
Dies ruft mein inboung-Kanal-Adapter erfolgreich mit dem angegebenen Profil in den Headern:
<int-http:inbound-channel-adapter
channel="api_app_integration_request_channel"
supported-methods="PUT"
path="/process/ticket"
request-payload-type="*.model.Ticket"
mapped-request-headers="profile"
error-channel="internal-client-rest-ticket-error-channel"
>
<int-http:request-mapping consumes="application/json" />
</int-http:inbound-channel-adapter>
Was nicht funktioniert ruft der Dienst über Outbound-Channel-Adapter, der Anruf selbst funktioniert, aber mein Header 'Profil' ist weg.
<int-http:outbound-channel-adapter
channel="client_rest_ticket_outbound_channel"
http-method="PUT"
url="http://localhost:8080/process/ticket"
mapped-request-headers="profile"
/>
Ich bin mit Frühlings-Boot 1.3.6.RELEASE.
Hey Gary, vielen Dank für Ihre Antwort. Was gilt als gute Praxis? Ich denke, ich behalte "X-" vor. Wird es zum Markieren benutzerdefinierter Kopfzeilenschlüssel verwendet oder wie lautet der Mittelwert von "X-"? –
Ich glaube, die ursprüngliche Absicht war, Kollisionen mit zukünftigen Standardüberschriften zu vermeiden. Ich glaube mich daran zu erinnern, dass der aktuelle Gedanke daran liegt, benutzerdefinierte Header nicht zu präfixieren, so dass wir daran denken, den Standard in 5.0 zu ändern. –
Danke Gary, cos Ich kann Code in Kommentaren nicht formatieren Ich habe deine Antwort mit der Konfiguration bearbeitet, die ich gemacht habe. Hoffe, das ist in Ordnung –