Strona główna forum Kategoria forum
Black007 2012-02-05 20:34
  • 2003-10-08 21:00
  • 2012-03-24 18:38
Cześć Wszystkim. Mam problem z aplikacją na Tomcat7.
Otóż stworzyłem sobie prosty projekt, bez stereotypu Mavenowego, oparty o Hibernate, dedykowany dla Tomcat7.
Niestety dostaję błąd mówiący, ze moje sterowniki JDBC nie obsługują mojej bazy danych...
Proszę o pomoc gdzie może leżeć błąd.

Mój persistence.xml:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0"
        xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
        <persistence-unit name="DyzurniWEB" transaction-type="RESOURCE_LOCAL">
                <provider>org.hibernate.ejb.HibernatePersistence</provider>
                <class>pl.bgora.entities.Person</class>
                <class>pl.bgora.entities.Week</class>
                <exclude-unlisted-classes></exclude-unlisted-classes>
                <properties>
                        <property name="hibernate.connection.url" value="jdbc://mysql://localhost:3306/dyzurni" />
                        <property name="hibernate.connection.username" value="dyzurny" />
                        <property name="hibernate.connection.password" value="dyzurny123" />
                        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
                        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />
                        <property name="hibernate.hbm2ddl.auto" value="create"/>
                        <property name="hibernate.show.sql" value="true"></property> 
                </properties>
        </persistence-unit>
</persistence>
 


pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>pl.bgora</groupId>
        <artifactId>DyzurniWEB</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>war</packaging>
        <name>DyzurniWEB</name>
        <build>
        <finalName>DyzurniWEB</finalName>
                <plugins>
                        <plugin>
                                <artifactId>maven-compiler-plugin</artifactId>
                                <version>2.1</version>
                                <configuration>
                                        <source>1.6</source>
                                        <target>1.6</target>
                                </configuration>
                        </plugin>
                </plugins>
        </build>
 
        <dependencies>
                <dependency>
                        <groupId>org.hibernate</groupId>
                        <artifactId>hibernate-entitymanager</artifactId>
                        <version>3.3.2.GA</version>
                </dependency>
                <dependency>
                        <groupId>org.hibernate</groupId>
                        <artifactId>hibernate-core</artifactId>
                        <version>3.3.2.GA</version>
                </dependency>
                <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>5.1.12</version>
                </dependency>
                <dependency>
                        <groupId>tomcat</groupId>
                        <artifactId>servlet-api</artifactId>
                        <scope>system</scope>
                        <systemPath>D:\\programy\\apache-tomcat-7.0.19\lib\\servlet-api.jar</systemPath>
                </dependency>
        </dependencies>
</project> 


Output z Tomcata:

2012-02-05 20:25:46 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Programy\Java\jdk1.6.0_25\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;D:/Programy/Java/jdk1.6.0_25/bin/../jre/bin/client;D:/Programy/Java/jdk1.6.0_25/bin/../jre/bin;D:/Programy/Java/jdk1.6.0_25/bin/../jre/lib/i386;C:\Program Files\NVIDIA Corporation\PhysX\Common;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;D:\Programy\Java\jdk1.6.0_25\bin;D:\programy\TortoiseSVN\bin;D:\Programy\apache-maven-2.2.1\bin;C:\Program Files\QuickTime\QTSystem\;D:\Programy\eclipse-jee-indigo-SR1-win32\eclipse;
2012-02-05 20:25:46 org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:DyzurniWEB' did not find a matching property.
2012-02-05 20:25:47 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
2012-02-05 20:25:47 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
2012-02-05 20:25:47 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 527 ms
2012-02-05 20:25:47 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
2012-02-05 20:25:47 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.19
Servlet Context Initialized
2012-02-05 20:25:47 org.hibernate.cfg.annotations.Version <clinit>
INFO: Hibernate Annotations 3.3.1.GA
2012-02-05 20:25:47 org.hibernate.cfg.Environment <clinit>
INFO: Hibernate 3.2.6
2012-02-05 20:25:47 org.hibernate.cfg.Environment <clinit>
INFO: hibernate.properties not found
2012-02-05 20:25:47 org.hibernate.cfg.Environment buildBytecodeProvider
INFO: Bytecode provider name : cglib
2012-02-05 20:25:47 org.hibernate.cfg.Environment <clinit>
INFO: using JDK 1.4 java.sql.Timestamp handling
2012-02-05 20:25:48 org.hibernate.ejb.Version <clinit>
INFO: Hibernate EntityManager 3.3.2.GA
2012-02-05 20:25:49 org.hibernate.cfg.AnnotationBinder bindClass
INFO: Binding entity from annotated class: pl.bgora.entities.Person
2012-02-05 20:25:49 org.hibernate.cfg.annotations.EntityBinder bindTable
INFO: Bind entity pl.bgora.entities.Person on table Person
2012-02-05 20:25:49 org.hibernate.cfg.AnnotationBinder bindClass
INFO: Binding entity from annotated class: pl.bgora.entities.Week
2012-02-05 20:25:49 org.hibernate.cfg.annotations.EntityBinder bindTable
INFO: Bind entity pl.bgora.entities.Week on table Week
2012-02-05 20:25:49 org.hibernate.cfg.annotations.CollectionBinder bindOneToManySecondPass
INFO: Mapping collection: pl.bgora.entities.Person.weeks -> Week
2012-02-05 20:25:49 org.hibernate.cfg.AnnotationConfiguration secondPassCompile
INFO: Hibernate Validator not found: ignoring
2012-02-05 20:25:49 org.hibernate.connection.DriverManagerConnectionProvider configure
INFO: Using Hibernate built-in connection pool (not for production use!)
2012-02-05 20:25:49 org.hibernate.connection.DriverManagerConnectionProvider configure
INFO: Hibernate connection pool size: 20
2012-02-05 20:25:49 org.hibernate.connection.DriverManagerConnectionProvider configure
INFO: autocommit mode: true
2012-02-05 20:25:49 org.hibernate.connection.DriverManagerConnectionProvider configure
INFO: using driver: com.mysql.jdbc.Driver at URL: jdbc://mysql://localhost:3306/dyzurni
2012-02-05 20:25:49 org.hibernate.connection.DriverManagerConnectionProvider configure
INFO: connection properties: {user=dyzurny, password=****, autocommit=true, release_mode=auto}
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
WARNING: Could not obtain connection metadata
java.sql.SQLException: No suitable driver found for jdbc://mysql://localhost:3306/dyzurni
        at java.sql.DriverManager.getConnection(DriverManager.java:602)
        at java.sql.DriverManager.getConnection(DriverManager.java:154)
        at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110)
        at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:84)
        at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2073)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1298)
        at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)
        at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669)
        at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:126)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
        at pl.bgora.db.DBManagerSingleton.getEntityManager(DBManagerSingleton.java:14)
        at pl.bgora.listeners.DyzurniContextListener.contextInitialized(DyzurniContextListener.java:27)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
        at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
        at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
2012-02-05 20:25:49 org.hibernate.dialect.Dialect <init>
INFO: Using dialect: org.hibernate.dialect.MySQLDialect
2012-02-05 20:25:49 org.hibernate.transaction.TransactionFactoryFactory buildTransactionFactory
INFO: Transaction strategy: org.hibernate.transaction.JDBCTransactionFactory
2012-02-05 20:25:49 org.hibernate.transaction.TransactionManagerLookupFactory getTransactionManagerLookup
INFO: No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Automatic flush during beforeCompletion(): disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Automatic session close at end of transaction: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Scrollable result sets: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC3 getGeneratedKeys(): disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Connection release mode: auto
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Maximum outer join fetch depth: 2
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default batch fetch size: 1
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Generate SQL with comments: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Order SQL updates by primary key: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Order SQL inserts for batching: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory createQueryTranslatorFactory
INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
2012-02-05 20:25:49 org.hibernate.hql.ast.ASTQueryTranslatorFactory <init>
INFO: Using ASTQueryTranslatorFactory
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query language substitutions: {}
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JPA-QL strict compliance: enabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Second-level cache: enabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query cache: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory createCacheProvider
INFO: Cache provider: org.hibernate.cache.NoCacheProvider
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Optimize cache for minimal puts: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Structured second-level cache entries: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Statistics: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Deleted entity synthetic identifier rollback: disabled
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default entity-mode: pojo
2012-02-05 20:25:49 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Named query checking : enabled
2012-02-05 20:25:49 org.hibernate.impl.SessionFactoryImpl <init>
INFO: building session factory
2012-02-05 20:25:50 org.hibernate.impl.SessionFactoryObjectFactory addInstance
INFO: Not binding factory to JNDI, no JNDI name configured
2012-02-05 20:25:50 org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: Running hbm2ddl schema export
2012-02-05 20:25:50 org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: exporting generated schema to database
2012-02-05 20:25:50 org.hibernate.tool.hbm2ddl.SchemaExport execute
SEVERE: schema export unsuccessful
java.sql.SQLException: No suitable driver found for jdbc://mysql://localhost:3306/dyzurni
        at java.sql.DriverManager.getConnection(DriverManager.java:602)
        at java.sql.DriverManager.getConnection(DriverManager.java:154)
        at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110)
        at org.hibernate.tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.prepare(SuppliedConnectionProviderConnectionHelper.java:27)
        at org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:180)
        at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:133)
        at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:311)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1300)
        at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)
        at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669)
        at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:126)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
        at pl.bgora.db.DBManagerSingleton.getEntityManager(DBManagerSingleton.java:14)
        at pl.bgora.listeners.DyzurniContextListener.contextInitialized(DyzurniContextListener.java:27)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
        at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
        at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
2012-02-05 20:25:50 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
2012-02-05 20:25:50 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
2012-02-05 20:25:50 org.apache.catalina.startup.Catalina start
INFO: Server startup in 3150 ms
 


Klasa w której się sypie podczas inicjalizacji Fabryki sesji:

 public enum DBManagerSingleton {
 
        INSTANCE;
 
        private EntityManagerFactory emf;
 
        public synchronized EntityManager getEntityManager() {
                emf = Persistence.createEntityManagerFactory("DyzurniWEB");
                return emf.createEntityManager();
        }
 
        public synchronized void destroy() {
                if (emf != null) {
                        emf.close();
                        emf = null;
                }
        }


Proszę o pomoc.
Pozdrawiam.

"Nie popełnia błędów tylko ten, kto nic nie robi"
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
7 odpowiedzi
Shalom 2012-02-05 20:44
  • 2004-01-30 21:49
  • wczoraj, 23:55
  • 4,643
Na oko brakuje sterownika jdbc do mysqla. Czy ten artefakt na pewno się ściągnął? Czy jest dodany do classpatha? (bo jeśli deployujesz z poziomu eclipse a nie mavena to musisz to ręcznie zrobić, tzn możesz użyć zmiennej M2_REPO ale musisz dodać tą zależność z palca)?

Non nascuntur sed fiunt christiani :)
Nie masz kłopotów? Kup komputer...

[Na pw/gg przyjmuje tylko zlecenia. Masz problem? Pisz na forum, nie do mnie]
Edytowany 1 raz: 2012-02-05 20:44 przez Shalom
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
Black007 2012-02-05 20:49
  • 2003-10-08 21:00
  • 2012-03-24 18:38
Hej, na pewno jest ściągnięty, bo jak wpisuję nazwę klasy JDBC w eclipse to mi go znajduje w jarze w lokalnym repo.
Co znaczy dodać zależność z palca? Myślałem ,ze M2Eclipse sam sobie radzi z deployem do tomcata :)

"Nie popełnia błędów tylko ten, kto nic nie robi"
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
Shalom 2012-02-05 21:09
  • 2004-01-30 21:49
  • wczoraj, 23:55
  • 4,643
Radzi sobie ale czy deployujesz za pomocą mavena? Czy klikasz sobie "run on server"? ;)
Jak z palca? Prawy klik na projekt -> build path i tam sobie to ustawiasz

Non nascuntur sed fiunt christiani :)
Nie masz kłopotów? Kup komputer...

[Na pw/gg przyjmuje tylko zlecenia. Masz problem? Pisz na forum, nie do mnie]
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
Black007 2012-02-05 21:41
  • 2003-10-08 21:00
  • 2012-03-24 18:38
Klikam run on server.
Z tego co pamiętam, na tomcacie 6.0 run on server i m2Eclipse z pluginem do wtp potrafił to zdeployować normalnie bez żadnych jazd... :/

"Nie popełnia błędów tylko ten, kto nic nie robi"
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
Freakman 2012-02-07 10:08
  • 2006-12-26 12:42
  • wczoraj, 16:16
a jak rozpakujesz stworzonego wara recznie to masz ten sterownik gdzies?

sprobuj sterownik wrzucic do folderu lib w tomcacie i czy to tak zabangla ( lub zbuduj paczke mvn assembly:assembly i wrzuc na tomcata )

play hard..go pro.
Edytowany 1 raz: 2012-02-07 10:09 przez Freakman
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
Moskitek 2012-02-07 10:22
wydaje mi się że masz literówkę w urlu:
nie jdbc://mysql://
tylko jdbc:mysql://
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
Black007 2012-02-09 12:00
  • 2003-10-08 21:00
  • 2012-03-24 18:38
Fakt, zły url :)

Dzięki za pomoc :)

"Nie popełnia błędów tylko ten, kto nic nie robi"
Głosuj na ten post 0 Głosuj na ten post
Raportuj Cytuj
atom

Ilość odpowiedzi na stronę

1 użytkownik(ów) przegląda ten temat (1 gości)

4programmers.net