Size: a a a

Spring Framework and more

2020 May 19

AE

Alexandr Emelyanov in Spring Framework and more
У тебя наоборот сейчас
источник

AE

Alexandr Emelyanov in Spring Framework and more
Причем ограничение на два, а если больше?
источник

AK

Anton Krasnov in Spring Framework and more
точнее, у одного персона может быть один акаунт
источник

РН

Роман Нагаев... in Spring Framework and more
Anton Krasnov
Если убрать
   @OneToOne(mappedBy = "accountGoogle")
   private Person primaryAccount;
то все компилируется и работает, но мне нужна двухстороння связь
bag это коллекция а в твоих связях коллекций нет, скорее всего добавление @OneToOne косвенно создаёт ситуацию с загрузкой двух жадных неупорядоченных коллекций одновремменно
источник

РН

Роман Нагаев... in Spring Framework and more
кстати, @OneToOne нельзя сделать LAZY, по крайней мере не применяя хаки
источник

AK

Anton Krasnov in Spring Framework and more
да то что косвенно это факт
Caused by: org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags:
.model.account.Role.privileges]
А вот роли уже коллекция
   @ManyToMany(fetch = FetchType.EAGER)
   @JoinTable(name = "persons_roles_ref", joinColumns = @JoinColumn(
           name = "person_id", referencedColumnName = "id"),
           inverseJoinColumns = @JoinColumn(
                   name = "role_id", referencedColumnName = "id"
           ))
   private Collection<Role> roles;
источник

РН

Роман Нагаев... in Spring Framework and more
ну вот, скорее всего это оно
источник

AK

Anton Krasnov in Spring Framework and more
только оно было задолго до меня, а ядобавляю связи аккаунтов)
источник

AK

Anton Krasnov in Spring Framework and more
да Collection нужно поменять на Set
источник

РН

Роман Нагаев... in Spring Framework and more
ну поздравляю)
я так понимаю даже запрос ролей сам по себе не привёл бы к этой ошибке, а внутри роли есть ещё одна жадная коллекция и вот она уже ломает всё)
обсуди с коллегами что с этим делать
источник

AK

Anton Krasnov in Spring Framework and more
зачем так было делать изначально ))
источник

РН

Роман Нагаев... in Spring Framework and more
#toAdmins
источник

AK

Anton Krasnov in Spring Framework and more
источник

IV

Ilja V in Spring Framework and more
Подскажите в чем ошибка. Поставил в контроллер @autowired поле (ClientService service) при запуске когда программа обращается к этому полю пишет нулл проинтер экспшн. По идее должен бин создаваться но видимо не создаётся по какой то причине.
источник

IV

Ilja V in Spring Framework and more
```@Controller
public class AppControl {

   @Autowired
  private ClientService service;


   @GetMapping("/start")
   public String start() {
       return "index";
   }


   @PostMapping("/login")
   public String loginClient(@ModelAttribute("client") Client client) throws Exception {
       String page = "";
       Client existingClient = service.getClient(client.getUsername());
       if((client.getPostUsername().equals(existingClient.getUsername())&
               (client.getPostPassword().equals(existingClient.getPassword())))){
           page = "Auth";
           SpotifyAPI newApi = new SpotifyAPI();
           newApi.startServer(8081);
       }
       else{
           page = "index";
       }
источник

S

Stanislav in Spring Framework and more
Может там client = null? По умолчанию @Autowired(requires= true) - что означает если нет бина контекст спринга не подымится и до вызова метода уж тем более не дойдет
источник

IV

Ilja V in Spring Framework and more
Доходит ровно до метода login Client и выкидывает экспшн.. Дебагер показывает поле service = null
источник

РН

Роман Нагаев... in Spring Framework and more
Ilja V
Подскажите в чем ошибка. Поставил в контроллер @autowired поле (ClientService service) при запуске когда программа обращается к этому полю пишет нулл проинтер экспшн. По идее должен бин создаваться но видимо не создаётся по какой то причине.
как создаётся экземпляр ClientService?
источник

IV

Ilja V in Spring Framework and more
Не понял вопроса...
источник

IV

Ilja V in Spring Framework and more
Спринг должен бин создавать вроде как..
источник