HTML and CSS Reference
In-Depth Information
Listing 13-8. MegaUserManager EJB Class
package com.jsfprohtml5.megaapp.service;
import com.jsfprohtml5.megaapp.model.Constants;
import com.jsfprohtml5.megaapp.model.MegaUser;
import com.jsfprohtml5.megaapp.model.UserGroup;
import com.jsfprohtml5.megaapp.service.exception.UserAlreadyExists;
import com.jsfprohtml5.megaapp.service.exception.UserNotFound;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
@Stateless
public class MegaUserManager implements MegaUserManagerLocal {
@PersistenceContext(unitName = "megaAppUnit")
EntityManager em;
@Override
public MegaUser getMegaUser(String userID) throws UserNotFound {
Query query = em.createQuery("select megaUser.id, megaUser.firstName"
+ ", megaUser.lastName from MegaUser megaUser where "
+ "megaUser.id = :id");
query.setParameter("id", userID);
Object[] megaUserInfo;
try {
megaUserInfo = (Object[]) query.getSingleResult();
} catch (NoResultException exception) {
throw new UserNotFound(exception.getMessage());
}
MegaUser megaUser = new MegaUser(
(String) megaUserInfo[0],
(String) megaUserInfo[1],
(String) megaUserInfo[2],
null);
return megaUser;
}
@Override
public MegaUser registerMegaUser(MegaUser user) throws UserAlreadyExists {
Search WWH ::




Custom Search