openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ignacio Andreu" <plunch...@gmail.com>
Subject Re: <openjpa-1.1.0-r422266:657916 nonfatal general error> ????
Date Wed, 30 Jul 2008 10:11:11 GMT
Hi Anish,

As far as I can read in the stack trace Caused by:

*java.lang.ClassNotFoundException: com.mysql.jdbc.Driver*

The JDBC driver isn't in your classpath.

Regards,

On Wed, Jul 30, 2008 at 12:03 PM, Anish <ab206@doc.ic.ac.uk> wrote:

>
> Hey i have made a little test program using openjpa... this seemed to work
> when i did it in windows but somehow doesent work in linux... i am
> basically
> trying to test openjpa with mysql...
>
> the code is as follows:
>
> Main.java
> /*
>  * Licensed to the Apache Software Foundation (ASF) under one
>  * or more contributor license agreements.  See the NOTICE file
>  * distributed with this work for additional information
>  * regarding copyright ownership.  The ASF licenses this file
>  * to you under the Apache License, Version 2.0 (the
>  * "License"); you may not use this file except in compliance
>  * with the License.  You may obtain a copy of the License at
>  *
>  * http://www.apache.org/licenses/LICENSE-2.0
>  *
>  * Unless required by applicable law or agreed to in writing,
>  * software distributed under the License is distributed on an
>  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>  * KIND, either express or implied.  See the License for the
>  * specific language governing permissions and limitations
>  * under the License.
>  */
> package hellojpa;
>
> import java.util.*;
> import javax.persistence.*;
>
>
> /**
>  * A very simple, stand-alone program that stores a new entity in the
>  * database and then performs a query to retrieve it.
>  */
> public class Main {
>
>    @SuppressWarnings("unchecked")
>    public static void main(String[] args) {
>        // Create a new EntityManagerFactory using the System properties.
>        // The "hellojpa" name will be used to configure based on the
>        // corresponding name in the META-INF/persistence.xml file
>       // EntityManagerFactory factory = Persistence.
>                EntityManagerFactory emf =
> Persistence.createEntityManagerFactory("hellojpa");
>        // Create a new EntityManager from the EntityManagerFactory. The
>        // EntityManager is the main object in the persistence API, and is
>        // used to create, delete, and query objects, as well as access
>        // the current transaction
>
>        EntityManager em = emf.createEntityManager();
>        // Begin a new local transaction so that we can persist a new entity
>        em.getTransaction().begin();
>
>        // Create and persist a new Message entity
>        em.persist(new Message("Hello Persistence!"));
>
>        // Commit the transaction, which will cause the entity to
>        // be stored in the database
>        em.getTransaction().commit();
>
>        // It is always good practice to close the EntityManager so that
>        // resources are conserved.
>        em.close();
>
>        // Create a fresh, new EntityManager
>        EntityManager em2 = emf.createEntityManager();
>
>        // Perform a simple query for all the Message entities
>        Query q = em2.createQuery("select m from Message m");
>
>        // Go through each of the entities and print out each of their
>        // messages, as well as the date on which it was created
>        for (Message m : (List<Message>) q.getResultList()) {
>            System.out.println(m.getMessage()
>                + " (created on: " + m.getCreated() + ")");
>        }
>
>        // Again, it is always good to clean up after ourselves
>        em2.close();
>        emf.close();
>    }
> }
>
> Message.java
> /*
>  * Licensed to the Apache Software Foundation (ASF) under one
>  * or more contributor license agreements.  See the NOTICE file
>  * distributed with this work for additional information
>  * regarding copyright ownership.  The ASF licenses this file
>  * to you under the Apache License, Version 2.0 (the
>  * "License"); you may not use this file except in compliance
>  * with the License.  You may obtain a copy of the License at
>  *
>  * http://www.apache.org/licenses/LICENSE-2.0
>  *
>  * Unless required by applicable law or agreed to in writing,
>  * software distributed under the License is distributed on an
>  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>  * KIND, either express or implied.  See the License for the
>  * specific language governing permissions and limitations
>  * under the License.
>  */
> package hellojpa;
>
> import java.util.*;
> import javax.persistence.*;
>
>
> /**
>  * A very simple persistent entity that holds a "message", has a
>  * "created" field that is initialized to the time at which the
>  * object was created, and an id field that is initialized to the
>  * current time.
>  */
> @Entity
> public class Message {
>    @Id
>    private long id = System.currentTimeMillis();
>
>    @Basic
>    private String message;
>
>    @Basic
>    private Date created = new Date();
>
>    public Message() {
>    }
>
>    public Message(String msg) {
>        message = msg;
>    }
>
>    public void setId(long val) {
>        id = val;
>    }
>
>    public long getId() {
>        return id;
>    }
>
>    public void setMessage(String msg) {
>        message = msg;
>    }
>
>    public String getMessage() {
>        return message;
>    }
>
>    public void setCreated(Date date) {
>        created = date;
>    }
>
>    public Date getCreated() {
>        return created;
>    }
> }
>
>
> persistence.xml
> <?xml version="1.0" encoding="UTF-8"?>
> <!--
>  Licensed to the Apache Software Foundation (ASF) under one
>  or more contributor license agreements.  See the NOTICE file
>  distributed with this work for additional information
>  regarding copyright ownership.  The ASF licenses this file
>  to you under the Apache License, Version 2.0 (the
>  "License"); you may not use this file except in compliance
>  with the License.  You may obtain a copy of the License at
>
>  http://www.apache.org/licenses/LICENSE-2.0
>
>  Unless required by applicable law or agreed to in writing,
>  software distributed under the License is distributed on an
>  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>  KIND, either express or implied.  See the License for the
>  specific language governing permissions and limitations
>  under the License.
> -->
> <persistence xmlns="http://java.sun.com/xml/ns/persistence"
>    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>    version="1.0">
>
>    <!--
>        We need to enumerate each persistent class first in the
> persistence.xml
>        See: http://issues.apache.org/jira/browse/OPENJPA-78
>    -->
>    <persistence-unit name="none" transaction-type="RESOURCE_LOCAL">
>        <mapping-file>reversemapping/orm.xml</mapping-file>
>        <class>hellojpa.Message</class>
>        <class>relations.Deity</class>
>    </persistence-unit>
>
>    <!--
>        A persistence unit is a set of listed persistent entities as well
>        the configuration of an EntityManagerFactory. We configure each
>        example in a separate persistence-unit.
>    -->
>    <persistence-unit name="hellojpa" transaction-type="RESOURCE_LOCAL">
>        <!--
>            The default provider can be OpenJPA, or some other product.
>            This element is optional if OpenJPA is the only JPA provider
>            in the current classloading environment, but can be specified
>            in cases where there are multiple JPA implementations available.
>        -->
>        <!--
>        <provider>
>            org.apache.openjpa.persistence.PersistenceProviderImpl
>        </provider>
>        -->
>
>        <!-- We must enumerate each entity in the persistence unit -->
>        <class>hellojpa.Message</class>
>
>        <properties>
>            <!--
>                We can configure the default OpenJPA properties here. They
>                happen to be commented out here since the provided examples
>                all specify the values via System properties.
>            -->
>
>
>            <property name="openjpa.ConnectionURL"
>                value="jdbc:mysql://localhost:3306/jpa"/>
>            <property name="openjpa.ConnectionDriverName"
>                value="com.mysql.jdbc.Driver"/>
>            <property name="openjpa.ConnectionUserName"
>                value="root"/>
>            <property name="openjpa.ConnectionPassword"
>                value="admin"/>
>
>        </properties>
>    </persistence-unit>
>
>    <!-- persistence unit for the "relations" example -->
>    <persistence-unit name="relations" transaction-type="RESOURCE_LOCAL">
>        <class>relations.Deity</class>
>    </persistence-unit>
>
>    <!-- persistence unit for the "reversemapping" example -->
>    <persistence-unit name="reversemapping"
> transaction-type="RESOURCE_LOCAL">
>        <mapping-file>reversemapping/orm.xml</mapping-file>
>    </persistence-unit>
> </persistence>
>
>
> the stack trace...
>     [java] Exception in thread "main" <openjpa-1.1.0-r422266:657916
> nonfatal general error>
> org.apache.openjpa.persistence.PersistenceException:
> There were errors initializing your configuration:
> <openjpa-1.1.0-r422266:657916 fatal store error>
> org.apache.openjpa.util.StoreException: com.mysql.jdbc.Driver
>     [java]     at
>
> org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource(DataSourceFactory.java:123)
>     [java]     at
>
> org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.createConnectionFactory(JDBCConfigurationImpl.java:776)
>     [java]     at
>
> org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getConnectionFactory(JDBCConfigurationImpl.java:683)
>     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>     [java]     at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     [java]     at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     [java]     at java.lang.reflect.Method.invoke(Method.java:597)
>     [java]     at
>
> org.apache.openjpa.lib.conf.ConfigurationImpl.instantiateAll(ConfigurationImpl.java:288)
>     [java]     at
>
> org.apache.openjpa.conf.OpenJPAConfigurationImpl.instantiateAll(OpenJPAConfigurationImpl.java:1409)
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(AbstractBrokerFactory.java:646)
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:183)
>     [java]     at
>
> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:56)
>     [java]     at hellojpa.Main.main(Main.java:44)
>     [java] Caused by: java.lang.ClassNotFoundException:
> com.mysql.jdbc.Driver
>     [java]     at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>     [java]     at java.security.AccessController.doPrivileged(Native
> Method)
>     [java]     at
> java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>     [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>     [java]     at
> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
>     [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>     [java]     at
> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>     [java]     at java.lang.Class.forName0(Native Method)
>     [java]     at java.lang.Class.forName(Class.java:169)
>     [java]     at
>
> org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource(DataSourceFactory.java:85)
>     [java]     ... 15 more
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:196)
>     [java]     at
>
> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:56)
>     [java]     at hellojpa.Main.main(Main.java:44)
>     [java] Caused by: java.lang.RuntimeException: There were errors
> initializing your configuration: <openjpa-1.1.0-r422266:657916 fatal store
> error> org.apache.openjpa.util.StoreException: com.mysql.jdbc.Driver
>     [java]     at
>
> org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource(DataSourceFactory.java:123)
>     [java]     at
>
> org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.createConnectionFactory(JDBCConfigurationImpl.java:776)
>     [java]     at
>
> org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getConnectionFactory(JDBCConfigurationImpl.java:683)
>     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>     [java]     at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     [java]     at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     [java]     at java.lang.reflect.Method.invoke(Method.java:597)
>     [java]     at
>
> org.apache.openjpa.lib.conf.ConfigurationImpl.instantiateAll(ConfigurationImpl.java:288)
>     [java]     at
>
> org.apache.openjpa.conf.OpenJPAConfigurationImpl.instantiateAll(OpenJPAConfigurationImpl.java:1409)
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(AbstractBrokerFactory.java:646)
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:183)
>     [java]     at
>
> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145)
>     [java]     at
>
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:56)
>     [java]     at hellojpa.Main.main(Main.java:44)
>     [java] Caused by: java.lang.ClassNotFoundException:
> com.mysql.jdbc.Driver
>     [java]     at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>     [java]     at java.security.AccessController.doPrivileged(Native
> Method)
>     [java]     at
> java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>     [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>     [java]     at
> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
>     [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>     [java]     at
> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>     [java]     at java.lang.Class.forName0(Native Method)
>     [java]     at java.lang.Class.forName(Class.java:169)
>     [java]     at
>
> org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource(DataSourceFactory.java:85)
>     [java]     ... 15 more
>     [java]     at
>
> org.apache.openjpa.lib.conf.ConfigurationImpl.instantiateAll(ConfigurationImpl.java:302)
>     [java]     at
>
> org.apache.openjpa.conf.OpenJPAConfigurationImpl.instantiateAll(OpenJPAConfigurationImpl.java:1409)
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(AbstractBrokerFactory.java:646)
>     [java]     at
>
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:183)
>     [java]     ... 5 more
>
> Can any one tell me why i am getting this error? or what it means? and how
> to fix it...
>
> --
> View this message in context:
> http://n2.nabble.com/%3Copenjpa-1.1.0-r422266%3A657916-nonfatal-general-error%3E------tp642040p642040.html
> Sent from the OpenJPA Users mailing list archive at Nabble.com.
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message