package pl.zgora.uz.wmie.fe.service.impl;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebResult;
import javax.jws.WebService;
import org.hibernate.Hibernate;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
import pl.zgora.uz.wmie.fe.hbm.classes.Stanowisko;
import pl.zgora.uz.wmie.fe.service.DzialService;
/**
* @author Miro007
*/
@Stateless
public class StanowiskoService extends BaseService<Stanowisko, Integer> implements
pl.zgora.uz.wmie.fe.service.StanowiskoService {
@EJB
private DzialService dzialService;
public List<Stanowisko> getStanowiskaWithPracownicy() throws Exception {
List<Stanowisko> result = new ArrayList<Stanowisko>();
try {
Session session = getSession();
// pobranie seta
result = session.createCriteria(Stanowisko.class).list();
for (Stanowisko stanowisko : result) {
Hibernate.initialize(stanowisko.getPracowniks());
session.evict(stanowisko);
}
} catch (HibernateException e) {
handleException(e);
} finally {
closeSession();
}
return result;
}
public void mutliTransactionDemo() throws Exception {
Session session = getSession();
Transaction tx = beginManualTransaction();
try {
this.deleteById(45);
// DzialService d = (DzialService) BusinessUtil
// .findBusiness("DzialService");
// d.deleteById(6);
// dzialService = (DzialService) BusinessUtil
// .findBusiness("DzialService");
this.deleteById(2);
commitManualTransaction();
} catch (HibernateException e) {
rollback(tx);
handleException(e);
} finally {
closeSession();
}
}
public String getStanowiskoName(Integer id) throws Exception {
String result = "error";
Stanowisko stanowisko = this.load(id);
result = stanowisko.getNazwa();
return result;
}
}