У меня есть карта Java, которую я хотел бы отобразить, используя DTO в ответ.Я пробовал это:
Служба:
@Service
public class GatewaysService {
public Map<Integer, String> getGatewaysList() {
Map<Integer, String> list = new HashMap<>();
list.put(1, "Bogus");
return list;
}
}
API:
@Autowired
private GatewaysService gatewaysService;
@GetMapping("gateways")
public ResponseEntity<?> getGateways() {
return ok(gatewaysService.getGatewaysList().map(mapper::toGatewayMap));
}
DTO:
public class ContractGatewaysDTO {
private Integer id;
private String gateway;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getGateway() {
return gateway;
}
public void setGateway(String gateway) {
this.gateway = gateway;
}
}
Mapper:
Map<Integer, String> toGatewayMap(ContractGatewaysDTO dto);
Но я получаю ошибку:
The method map(ContractDTO) in the type ContractsMapper is not applicable for the arguments (mapper::toGatewayMap)
Как правильно ее отобразить?Я хочу преобразовать карту Java в ответ ключ-значение.