[Persistence, JBoss/CMP, Hibernate, Database] - Using JPA from web tier
by mikaelstaldal
What is the correct way of accessing a Java Persistence unit from the web tier (no EJB session beans)?
I use JBoss 4.2.0.
I can't get the resource injection annotations @PersistenceUnit or @PersistenceContext to work, so I have done like this:
public class MyServletContextListener implements ServletContextListener {
|
| public void contextInitialized(ServletContextEvent sce) {
| try {
| EntityManagerFactory emf = Persistence.createEntityManagerFactory("myunit");
| sce.getServletContext().setAttribute(EntityManagerFactory.class.getName(), emf);
| }
| catch (RuntimeException e) {
| throw e;
| }
| catch (Exception e) {
| throw new RuntimeException(e);
| }
| }
|
| public void contextDestroyed(ServletContextEvent sce) {
| EntityManagerFactory emf = (EntityManagerFactory)sce.getServletContext().getAttribute(
| EntityManagerFactory.class.getName());
| if (emf != null) {
| emf.close();
| }
| }
|
| }
|
and for each web request I do like this:
EntityManagerFactory emf = (EntityManagerFactory)context.getAttribute(EntityManagerFactory.class.getName());
| EntityManager em = emf.createEntityManager();
| EntityTransaction transaction = em.getTransaction();
| transaction.begin();
|
| try {
| // process the request here...
| transaction.commit();
| } catch (Exception e) {
| transaction.rollback();
| // log the error
| } finally {
| em.close();
| }
|
It seems to work, but is it thread-safe and does it give reasonable performance?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4064944#4064944
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4064944
18Â years, 11Â months
[JCA/JBoss] - Linkage Error While returning the OrderedMap from EJB
by _pankie
I am Using Jboss 4.2.0 GA.
I have deployed the Stateless Session Bean (EJB 2.1) in Jboss 4.2.0 GA
I can lookup the bean can invoke the method properly.
My Method returns the VO Object properly.... but i have a getter & setter for the OrderedMap. OM get set properly but while retriving it i get Linkage error....
Error is mentioned below
| java.lang.LinkageError: loader constraints violated when linking org/apache/commons/collections/OrderedMap class
| at struts.action.aaa.AuthenticateAction.execute(AuthenticateAction.java:108)
| at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
| at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
| at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
| at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
|
While on other side when i use the OrderedMap for fetching the data in my web App. There is no Problem at all.
I am using Common-Collection 3.0
Need Clarification.......
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4064935#4064935
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4064935
18Â years, 11Â months