在Web项目

时间:2017-05-12 11:58:14

标签: hibernate jsp tomcat jpa servlets

我们使用JavaFX作为前端实现了Java SE程序,使用Microsoft SQL Server作为后端实现了JPA / Hibernate。我们的模型是从数据库自动生成的。 我们现在想要使用相同的技术和访问方法在JSP上构建Web界面,而无需在新项目中再次配置Hibernate。

使用DAO接口对服务类进行数据库访问。访问方法看起来像这样:

public Address findAddressById(AddressPK id) {
    Address address = null;
    EntityManager em = EntityManagerUtil.getEntityManager();
    EntityTransaction tx = null;
    try {
        tx = em.getTransaction();
        tx.begin();
        address = (Address) addressDAO.findByID(em, Address.class, id);

        tx.commit();
    } catch (RuntimeException e) {
        if ( tx != null && tx.isActive() ) tx.rollback();
        e.printStackTrace();
    } finally {
        em.close();
    }

    return address;
}

我们将Hibernate / JavaFx项目添加到新的Web项目并尝试访问相同的方法。一切看起来都很好,但在执行Web项目时,我们得到以下异常:

Servlet.service() for servlet [ssad.dsds.mobile.LoginServlet] in context with path [/ssad] threw exception [Servlet execution threw an exception] with root cause
java.lang.ClassNotFoundException: sop.lba.relaunch.utility.search.MainSearchResult
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
    at sop.lba.mobile.LoginServlet.doPost(LoginServlet.java:37)
    ...

我们如何解决这个问题?通常可以在Tomcat JSP项目中重用Java SE Hibernate项目中的方法吗?

0 个答案:

没有答案