>код из одного класса
try {
CFG.getDeploymentArchitecture().getApplicationSystems().forEach(appSys -> {
if (appSys.getGitConfig() == null) {
appSys.setGitConfig(new GitConfig());
}
verticalLayout.addComponent(createGitSettingsPanel(
"Репозиторий прикладной системы " + appSys.getName(),
appSys.getName(),
getGitConfig(),
resourceBundle));
});
} catch (Exception e) {
LOGGER.severe(e.getMessage());
Notification.show("Какие-то проблемы :" + e, Notification.Type.ERROR_MESSAGE);
LOGGER.severe(e.toString());
}
> вот метод из другого класса, который я вызываю
private List<AppSystem> applicationSystems;
public List<AppSystem> getApplicationSystems() {
applicationSystems = Collections.EMPTY_LIST;
if (applicationSystems == null) {
applicationSystems = new ArrayList<>();
}
return applicationSystems;
}
почему возникает ошибка? Collections.EMPTY_LIST; это же должно ее предотвратить
На самом деле, applicationSystems = Collections.EMPTY_LIST; при каждом вызове метода getApplicationSystems() будет присваивать значение неизменяемого пустого списка полю applicationSystems. Скорее всего эта строчка лишняя.
А NPE ошибка падает из-за того, что либо CFG , либо СFG.getDeploymentArchitecture() возвращают null.
Попробуй поставить debug на этой строчке и посмотреть какие значения у них.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости