Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

201
Vistas
Especificación del orden de ServiceActivator en un canal de publicación-suscripción en Spring Integration (usando javaConfig)

Actualmente estoy especificando un activador de servicio y un canal de publicación y suscripción relacionado en un archivo de integración-contexto.xml. Algo como esto (versión abreviada):

 <int:publish-subscribe-channel id="notificationChannel" task-executor="executor" /> <int:gateway service-interface="com.integration.gateway.RestClientGateway" default-request-channel="notificationChannel" async-executor="executor"/> <int:service-activator ref="restClient" method="sendRequest" **order="1"** input-channel="notificationChannel"/> <int:service-activator ref="actionPersistor" method="persistNotification" **order="2"** input-channel="notificationChannel"/>

Ahora necesito especificar una clase de ejecutor personalizada (para el registro de MDC), así que comencé a jugar con mover esto a un enfoque basado en anotaciones. Algo parecido a esto:

 @Bean @Description("PubSub channel for notification") public MessageChannel notificationChannel() { return new PublishSubscribeChannel(mdcTaskExecutor()); } @Bean public TaskExecutor mdcTaskExecutor() { return MDCThreadPoolTaskExecutor.newWithInheritedMdc(10, 20, 25); } @MessagingGateway(name = "restClientGateway", defaultRequestChannel = "notificationChannel", asyncExecutor = "mdcExecutor") public interface RestClientGateway { Future<Message<String>> sendRequest(Message<BlEvent> message); } @ServiceActivator(inputChannel = "notificationChannel") public Message<String> sendRequest(Message<BlEvent> message) { @ServiceActivator(inputChannel="notificationChannel") public void persistNotification(Message<BlEvent> message) {

Mi pregunta es si hay alguna forma de especificar el orden en el que los @ServiceActivators reciben un mensaje del canal pub-sub, similar a la forma en que podría definirlo en el archivo Integration-context.xml.

Muchas gracias por tu ayuda. Y disculpas de antemano si esto fue demasiado simple como establecer una propiedad, porque parece que no pude ubicarla.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Sí, simplemente puede agregar @Order junto con las anotaciones de Messaging.

Supongo que tenemos una omisión en el Manual de referencia, no mencionar eso.

¡Siéntete libre de plantear un ticket de JIRA sobre el asunto!

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda