У меня есть приложение весенней загрузки, которое отлично работает локально.Использование Postman для отправки строки JSON и успешного выполнения запроса.
Я развернул приложение в нашей среде PCF для разработки.Приложение, которое использует сервис, успешно вызывает его.В журналах сервисов он правильно определяет стратегию использования и отлично работает.Затем следует позвонить в DAO, но ничего не происходит.Нет ошибок, нет операторов записи в DAO до вызова какой-либо операции базы данных.Он просто останавливается.
Есть 2 других приложения, которые были разработаны и развернуты для использования этой службы, и они работают нормально.Это область, в которой служба перестает работать:
@Component
public class LoadStrategy implements CloseStrategy {
private static final Logger LOGGER = LoggerFactory.getLogger(LoadStrategy.class);
private LoadDao loadDao;
private MapperTranslator<Map<String, Object>, CloseRequest> mapperTranslatorToInputStream;
private MapperTranslator<CloseResponse, Map<String, Object>> mapperTranslatorToCloseTrailerResponse;
@Autowired
public Load Strategy(LoadDao loadDao,
@Qualifier("loadRequestMapper")MapperTranslator<Map<String, Object>, CloseRequest> mapperTranslatorToInputStream,
@Qualifier("loadResponseMapper")MapperTranslator<CloseResponse, Map<String, Object>> mapperTranslatorToCloseResponse) {
this.loadDao = loadDao;
this.mapperTranslatorToInputStream = mapperTranslatorToInputStream;
this.mapperTranslatorToCloseResponse = mapperTranslatorToCloseResponse;
}
public CloseResponse close(CloseRequest input) {
LOGGER.info("Before call to loadDao");
Map<String, Object> translator = mapperTranslatorToInputStream.translate(input);
LOGGER.info("Completed input stream mapper. Before calling loadDao");
Map<String, Object> result = loadDao.close(translator);
return mapperTranslatorToCloseTrailerResponse.translate(result);
}
}
Служба печатает инструкцию регистратора «Завершено отображение входного потока. Перед вызовом loadDao» ничего.В DAO есть оператор logger в начале этого метода, который не печатается.
Это класс DAO ..
@Repository
public class LoadDao implements CloseDao {
private SimpleJdbcCall simpleJdbcCall;
private static final Logger LOGGER = LoggerFactory.getLogger(LoadDao.class);
@Autowired
public LoadDao(@Qualifier("loadSummaryJdbcCall") SimpleJdbcCall simpleJdbcCall) {
this.simpleJdbcCall = simpleJdbcCall;
}
@HystrixCommand(fallbackMethod = "closeFallback")
public Map<String, Object> close(Map<String, Object> input) {
Map<String, Object> result;
LOGGER.debug("In loadDao Before {}.{} Procedure. Input Stream: {}", PACKAGE, PROCEDURE, input.get(P_INPUT_STREAM));
... остаток класса ...
Я не знаю, с чего начать устранение этой проблемы. Это мое первое применение Spring Boot и в среде PCF.Будем весьма благодарны за любые области, в которых я смогу разобраться.