Petr
Petr

Reputation: 45

Spring Integradion DSL answer to frontend

Good day! If i use transformer in my integration flow, i didn`t recieve answer to frontend, just waiting for responce. If i remove transformer, all is ok. Here is my controller method:

    @GetMapping("/get/{name}")
public ResponseEntity<String> getSpaceShip(@PathVariable String name) {
    SpaceShip spaceShip = new SpaceShip(name, 0);
    gateway.spaceShipCreated(spaceShip);
    return ResponseEntity.ok("Started!");
}

and Configuration:

@Configuration
public class SpaceShipConfiguration {

    @MessagingGateway(defaultRequestChannel = "rename")
    public interface Gateway {

        SpaceShip spaceShipCreated(SpaceShip spaceShip);
    }

    @Bean
    public IntegrationFlow spaceShipMoving() {
        return IntegrationFlows.from("rename")
                .handle("renameService", "rename")
                .handle("fuelService", "addFuel")
                //.transform(Transformers.toJson())
                .handle("debug", "printMessage")
                .get();
    }
}

Upvotes: 0

Views: 33

Answers (1)

Petr
Petr

Reputation: 45

I got the error - my gateway

    @MessagingGateway(defaultRequestChannel = "rename")
public interface Gateway {

    SpaceShip spaceShipCreated(SpaceShip spaceShip);
}

must return the Object, but after transformation can't. Need just return void in my case.

Upvotes: 1

Related Questions