Biorąc pod uwagę dwa fasola adnotacją z @Startup:Czy @DependsOn jest niezbędne dla innego wstrzykiwanego ziaren CDI?
@Singleton
@Startup
@DependsOn("B")
public A {
@Inject
private B b;
}
@Singleton
@Startup
public B {}
Czy @DependsOn neccessary w tej sytuacji, aby zapewnić, że B jest zainicjowany przed Ap Czy istnieje pewna konwencja dotycząca konfiguracji, która w takiej sytuacji kolejność zastrzyków określa kolejność inicjowania?
Oficjalny tutorial nie obejmuje tego przypadku, ale tylko fasole, które są tylko semantycznie pokryte bez żadnego połączenia syntaktycznego/okablowania przez @Inject.
Zawsze przeszkadzało mi, gdy naprawdę potrzebuję adnotacji @DependsOn. Ponieważ jeśli SecondaryBean potrzebuje PrimaryBean, prawdopodobnie oznacza to, że PB jest wstrzykiwany w SB i używany gdzieś, więc PB ma gwarancję, że zostanie zainicjowany przed pierwszym użyciem go w SB.Czy istnieje jakikolwiek rzeczywisty przypadek, w którym SB zależy od PB, ale go nie używa? – rychu