Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring java.lang.NoClassDefFoundError:org/datanucleus/exceptions/NucleuseException_Spring_Annotations_Jdo - Fatal编程技术网

Spring java.lang.NoClassDefFoundError:org/datanucleus/exceptions/NucleuseException

Spring java.lang.NoClassDefFoundError:org/datanucleus/exceptions/NucleuseException,spring,annotations,jdo,Spring,Annotations,Jdo,我得到了这个错误 java.lang.NoClassDefFoundError: org/datanucleus/exceptions/NucleusException 我的文件: UserDAOImpl.java public class UserDAOImpl implements UserDAO{ static Logger log = Logger.getLogger(UserDAOImpl.class.getName()); @Autowired private DataSourc

我得到了这个错误

java.lang.NoClassDefFoundError: org/datanucleus/exceptions/NucleusException
我的文件: UserDAOImpl.java

public class UserDAOImpl implements UserDAO{
static Logger log = Logger.getLogger(UserDAOImpl.class.getName());

@Autowired
private DataSource dataSource;
private PersistenceManagerFactory persistenceManagerFactory;
HttpServletRequest request;

@Override
public User getUser(String user_name, String user_password) {
    PersistenceManager pm = this.persistenceManagerFactory.getPersistenceManager();
    try {
        Query query = pm.newQuery(User.class);
        query.setFilter("userName == userNameParam && userPassword==userPasswordParam");
        query.declareParameters("String lastNameParam, String userPasswordParam");
        User user = (User) query.execute(user_name,user_password);
        log.info(user.getUserEmail()+"..........."+user.getUserProfileName());
        return user;
    }
    finally {
        pm.close();
    } 
}
dispatcher-servlet.xml

<!-- declare mvc to be annotation driven -->
<mvc:annotation-driven/>
<!-- provide Your Base package to scan annotations for components -->
<context:component-scan base-package="com.titas.controller"></context:component-scan>
<mvc:resources location="static/" mapping="static/**"/>

<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/>
<!--
Most controllers will use the ControllerClassNameHandlerMapping above, but
for the index controller we are using ParameterizableViewController, so we must
define an explicit mapping for it.
-->
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <props>
            <prop key="index">indexController</prop>
        </props>
    </property>
</bean>

<bean id="viewResolver"
      class="org.springframework.web.servlet.view.InternalResourceViewResolver"
      p:prefix="/WEB-INF/jsp/"
      p:suffix=".jsp" />

<!--
The index controller.
-->
<bean name="indexController"
      class="org.springframework.web.servlet.mvc.ParameterizableViewController"
      p:viewName="index" />

<bean id="dataSource"
  class="org.springframework.jdbc.datasource.DriverManagerDataSource"
    p:driverClassName="com.mysql.jdbc.Driver"
    p:url="jdbc:mysql://localhost:3306/login"
    p:username="root"
    p:password="" />

<bean id="myPmf" class="org.datanucleus.api.jdo.JDOPersistenceManagerFactory" destroy-method="close">
  <property name="connectionFactory" ref="dataSource"/>
  <property name="nontransactionalRead" value="true"/>
</bean>

<bean id="userDAO" class="com.titas.dao.UserDAOImpl" >
</bean>
MyController.java

@Controller
//@RequestMapping(value = "/test")
public class MyController{

      static Logger log = Logger.getLogger(MyController.class.getName());
      @Autowired
      private UserDAO userDAO;
      List<User> allUser = new ArrayList<User>();
@控制器
//@请求映射(value=“/test”)
公共类MyController{
静态记录器log=Logger.getLogger(MyController.class.getName());
@自动连线
私有UserDAO UserDAO;
List allUser=new ArrayList();
我使用过类似以下的罐子: mysql-connector-java-5.1.6、ojdbc14、jdo-api-3.0.1、aopalliance-1.0、maven-datanucleus-plugin-3.1.0-release、datanucleus-api-jdo-3.0.0-release

我是JDO的新手。
请帮助!!

您需要将
datanucleus-core-3.1.1.jar
jar添加到您的类路径中。

谢谢。我添加了。现在这行PersistenceManager pm=this.PersistenceManager factory.getPersistenceManager()中是空指针;在daoimpl类中…你能告诉我为什么吗?java.lang.NullPointerException com.titas.dao.UserDAOImpl.getUser(UserDAOImpl.java:38)@MoumitaDasPurba这可能会有帮助。这意味着我应该为PersistenceManager创建一个类。你为什么要使用DataNucleus的古老版本?它目前是v4.0.6和v4.1.0-m3
@Controller
//@RequestMapping(value = "/test")
public class MyController{

      static Logger log = Logger.getLogger(MyController.class.getName());
      @Autowired
      private UserDAO userDAO;
      List<User> allUser = new ArrayList<User>();