Я запрашиваю DB в этом EJB. Результат Iterable (я не могу это изменить).Как получить новый Iterable для каждого вызова в Stateless EJB
Но поскольку EJB является @Stateless, он будет «повторно использовать» Iterable <>, и результат запроса просто добавляется к нему. Вместо того, чтобы быть «новым»!
Как я мог избежать этого?
Я не знаю, есть ли «исправление» в Iterable или что-то делать с SessionBean? Это плохая комбинация?
@Stateless
public class StartSessionBean implements Serializable, StartSessionBeanLocal {
...
public Iterable<VType> resultQuery;
...
public List<VType> queryThis(String this) {
...
resultQuery = (Iterable<Type>) "query DB";
//Do Things here
return something;
}
}
Возможно, мне что-то не хватает, но почему бы просто не переместить объявление resultQuery методу queryThis()? –
Вы не правы! Но разве это единственный способ сделать работу с Iterable в EJB без гражданства? – Wozilla