Why embedded OpenEJB fails to deploy my application? - java

I can't understand why an embedded OpenEJB container fails at the beginning with very un-informative message (sorry for a long log):
Running com.XXX.MyTest
Apache OpenEJB 3.1.3 build: 20101015-05:42
http://openejb.apache.org/
INFO - openejb.home = [skipped...]
INFO - openejb.base = [skipped...]
INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
INFO - Found PersistenceModule in classpath: [skipped...]/target/classes
INFO - Found EjbModule in classpath: [skipped...]/target/test-classes
INFO - Beginning load: [skipped...]/target/classes
INFO - AltDD persistence.xml -> file:[skipped...]/target/classes/META-INF/test.persistence.xml
INFO - AltDD persistence.xml -> file:[skipped...]/target/classes/META-INF/test.persistence.xml
INFO - Beginning load: [skipped...]/target/test-classes
INFO - Configuring enterprise application: classpath.ear
INFO - Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container)
INFO - Auto-creating a container for bean Finder: Container(type=STATELESS, id=Default Stateless Container)
INFO - Configuring PersistenceUnit(name=wid, provider=org.hibernate.ejb.HibernatePersistence)
INFO - Configuring Service(id=Default JDBC Database, type=Resource, provider-id=Default JDBC Database)
INFO - Auto-creating a Resource with id 'Default JDBC Database' of type 'DataSource for 'abc'.
INFO - Configuring Service(id=Default Unmanaged JDBC Database, type=Resource, provider-id=Default Unmanaged JDBC Database)
INFO - Auto-creating a Resource with id 'Default Unmanaged JDBC Database' of type 'DataSource for 'abc'.
INFO - Adjusting PersistenceUnit abc <jta-data-source> to Resource ID 'Default JDBC Database' from 'null'
INFO - Adjusting PersistenceUnit abc <non-jta-data-source> to Resource ID 'Default Unmanaged JDBC Database' from 'null'
INFO - Enterprise application "classpath.ear" loaded.
INFO - Assembling app: classpath.ear
Oct 28, 2010 2:00:20 PM org.hibernate.cfg.annotations.Version <clinit>
INFO: Hibernate Annotations 3.5.6-Final
Oct 28, 2010 2:00:20 PM org.hibernate.cfg.Environment <clinit>
INFO: Hibernate 3.5.6-Final
Oct 28, 2010 2:00:20 PM org.hibernate.cfg.Environment <clinit>
INFO: hibernate.properties not found
Oct 28, 2010 2:00:20 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: Bytecode provider name : javassist
Oct 28, 2010 2:00:20 PM org.hibernate.cfg.Environment <clinit>
INFO: using JDK 1.4 java.sql.Timestamp handling
Oct 28, 2010 2:00:20 PM org.hibernate.annotations.common.Version <clinit>
INFO: Hibernate Commons Annotations 3.2.0.Final
Oct 28, 2010 2:00:20 PM org.hibernate.ejb.Version <clinit>
INFO: Hibernate EntityManager 3.5.6-Final
Oct 28, 2010 2:00:20 PM org.hibernate.ejb.Ejb3Configuration configure
INFO: Processing PersistenceUnitInfo [
name: abc
...]
INFO - PersistenceUnit(name=abc, provider=org.hibernate.ejb.HibernatePersistence) - provider time 328ms
INFO - Undeploying app: classpath.ear
ERROR - Application could not be deployed: classpath.ear
org.apache.openejb.OpenEJBException: Creating application failed: classpath.ear: org.apache.openejb.persistence.PersistenceUnitInfoImpl.getValidationMode()Ljavax/persistence/ValidationMode;
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:679)
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:450)
at org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:368)
at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:280)
at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:125)
at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:60)
at org.apache.openejb.OpenEJB.init(OpenEJB.java:271)
at org.apache.openejb.OpenEJB.init(OpenEJB.java:250)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[skipped...]
Could you please help? Thanks.

That's because you're using JPA 2.0 which is AFAIK not yet supported by OpenEJB, see this thread and OPENEJB-1236. If you look closely at the Jira issue, it looks like this is fixed in the trunk. I just don't if the subtask is blocking or if it would work with a SNAPSHOT version of the trunk.

Related

Spring Boot app not starting

I have a Spring Boot application which was running fine. I just added another column in table and specified it in entity. Now I am running it and the application getting stuck at one point and not starting. It seems to be a Hibernate issue with Spring Boot. Following are the logs:
Nov 18, 2016 8:45:53 PM org.hibernate.jpa.internal.util.LogHelper logPersistenceUnitInformation
INFO: HHH000204: Processing PersistenceUnitInfo [
name: default
...]
Nov 18, 2016 8:45:54 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {5.0.9.Final}
Nov 18, 2016 8:45:54 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Nov 18, 2016 8:45:54 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Nov 18, 2016 8:45:54 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
Nov 18, 2016 8:45:56 PM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.Oracle10gDialect
Nov 18, 2016 8:45:58 PM org.hibernate.id.SequenceGenerator configure
WARN: HHH90000014: Found use of deprecated [org.hibernate.id.SequenceHiLoGenerator] sequence-based id generator;
Nov 18, 2016 8:46:00 PM org.hibernate.tool.hbm2ddl.SchemaValidator validate
INFO: HHH000229: Running schema validator
Nov 18, 2016 8:46:13 PM org.hibernate.hql.internal.QueryTranslatorFactoryInitiator initiateService
INFO: HHH000397: Using ASTQueryTranslatorFactory

Deployed Tomcat app on Openshift returns 404

I've deployed my app under following url: https://migawka-hatak.rhcloud.com/,
but constantly I get a 404 status.
The same app works on my local Tomcat or Jetty. When accessing localhost:8080/ROOT/ it returns the default Openshift index page.
From the logs on openshift I can see that it's started:
INFO: Starting Servlet Engine: Apache Tomcat/7.0.54
Nov 05, 2014 4:14:32 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive /var/lib/openshift/5458e7d3500446ea91000597/app-root/runtime/dependencies/jbosse
ws/webapps/ROOT.war
SLF4J: The requested version 1.5.8 by your slf4j binding is not compatible with [1.6]
SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
47 [localhost-startStop-1] INFO org.quartz.impl.StdSchedulerFactory - Using default implementation for ThreadExecutor
53 [localhost-startStop-1] INFO org.quartz.simpl.SimpleThreadPool - Job execution threads will use class loader of threa
d: localhost-startStop-1
148 [localhost-startStop-1] INFO org.quartz.core.SchedulerSignalerImpl - Initialized Scheduler Signaller of type: class
org.quartz.core.SchedulerSignalerImpl
150 [localhost-startStop-1] INFO org.quartz.core.QuartzScheduler - Quartz Scheduler v.2.2.1 created.
158 [localhost-startStop-1] INFO org.quartz.simpl.RAMJobStore - RAMJobStore initialized.
160 [localhost-startStop-1] INFO org.quartz.core.QuartzScheduler - Scheduler meta-data: Quartz Scheduler (v2.2.1) 'Defau
ltQuartzScheduler' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
161 [localhost-startStop-1] INFO org.quartz.impl.StdSchedulerFactory - Quartz scheduler 'DefaultQuartzScheduler' initial
ized from default resource file in Quartz package: 'quartz.properties'
161 [localhost-startStop-1] INFO org.quartz.impl.StdSchedulerFactory - Quartz scheduler version: 2.2.1
Nov 05, 2014 4:14:40 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive /var/lib/openshift/5458e7d3500446ea91000597/app-root/runtime/dependencies/jb
ossews/webapps/ROOT.war has finished in 7,523 ms
Nov 05, 2014 4:14:40 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-127.9.148.1-8080"]
Nov 05, 2014 4:14:40 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 7825 ms
I'm using quartz in the context listener, also my app is based on the RestEasy framework.
Any idea what is going on?
I've solved problem, by recreating app from scratch, only difference is that I've used web.xml from from tmplate instead of mine.
What is different on web.xml now:
<web-app version="3.0"
xmlns="java.sun.com/xml/ns/javaee"
xmlns:xsi="w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="java.sun.com/xml/ns/javaee java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
metadata-complete="false">
</web-app>

Error 404 after deploying a simple Spring MVC app (without web.xml)

I want to learn some basics of Spring MVC based fully on annotations. I started with this tutorial.
After cloning the repository
hg clone https://bitbucket.org/arnelism/snoutbook
and building the war file
mvn package
I am deploying the app by simply copying the war file to the webapps directory of my Apache Tomcat 7.0.12 instance. I am stopping and starting the server.
INFORMATION: Starting Servlet Engine: Apache Tomcat/7.0.12
Sep 12, 2014 3:37:18 PM org.apache.catalina.startup.HostConfig deployWAR
INFORMATION: Deploying web application archive Snoutbook-1.0.0-SNAPSHOT.war
Sep 12, 2014 3:37:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFORMATION: Deploying web application directory docs
Sep 12, 2014 3:37:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFORMATION: Deploying web application directory examples
Sep 12, 2014 3:37:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFORMATION: Deploying web application directory host-manager
Sep 12, 2014 3:37:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFORMATION: Deploying web application directory manager
Sep 12, 2014 3:37:27 PM org.apache.catalina.startup.HostConfig deployDirectory
INFORMATION: Deploying web application directory ROOT
Sep 12, 2014 3:37:27 PM org.apache.coyote.AbstractProtocolHandler start
INFORMATION: Starting ProtocolHandler ["http-bio-8080"]
Sep 12, 2014 3:37:27 PM org.apache.coyote.AbstractProtocolHandler start
INFORMATION: Starting ProtocolHandler ["ajp-bio-8009"]
Sep 12, 2014 3:37:27 PM org.apache.catalina.startup.Catalina start
INFORMATION: Server startup in 8826 ms
Unfortunately after this operation I am receiving the error 404 by displaying the page.
http://localhost:8080/Snoutbook-1.0.0-SNAPSHOT/
I have been looking for a solution for over 2 hours and have not been able to find the cause. Did somebody have a similar issue?
EDIT
I tried with the newest Tomcat version apache-tomcat-8.0.12. The problem persists. There is however more info printed in the console while deploying the web app.
12-Sep-2014 17:13:20.038 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployWAR Deploying web application archive D:\Users\b21090094\apac
he-tomcat-8.0.12\webapps\Snoutbook-1.0.0-SNAPSHOT.war
12-Sep-2014 17:13:23.132 INFO [localhost-startStop-1] org.apache.catalina.util.S
essionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for s
ession ID generation using [SHA1PRNG] took [255] milliseconds.
12-Sep-2014 17:13:23.169 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.FrameworkServlet.initServletBean FrameworkServlet 'dispatcher': initializa
tion started
12-Sep-2014 17:13:23.182 INFO [localhost-startStop-1] org.springframework.contex
t.support.AbstractApplicationContext.prepareRefresh Refreshing WebApplicationCon
text for namespace 'dispatcher-servlet': startup date [Fri Sep 12 17:13:23 CEST
2014]; root of context hierarchy
12-Sep-2014 17:13:23.278 INFO [localhost-startStop-1] org.springframework.contex
t.annotation.ClassPathScanningCandidateComponentProvider.registerDefaultFilters
JSR-250 'javax.annotation.ManagedBean' found and supported for component scannin
g
12-Sep-2014 17:13:23.281 INFO [localhost-startStop-1] org.springframework.web.co
ntext.support.AnnotationConfigWebApplicationContext.loadBeanDefinitions Register
ing annotated classes: [class com.zeroturnaround.snoutbook.init.WebappConfigJpa]
12-Sep-2014 17:13:23.429 INFO [localhost-startStop-1] org.springframework.contex
t.annotation.ClassPathScanningCandidateComponentProvider.registerDefaultFilters
JSR-250 'javax.annotation.ManagedBean' found and supported for component scannin
g
12-Sep-2014 17:13:23.921 INFO [localhost-startStop-1] org.springframework.beans.
factory.support.DefaultListableBeanFactory.preInstantiateSingletons Pre-instanti
ating singletons in org.springframework.beans.factory.support.DefaultListableBea
nFactory#7169a1: defining beans [org.springframework.context.annotation.internal
ConfigurationAnnotationProcessor,org.springframework.context.annotation.internal
AutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequ
iredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnn
otationProcessor,org.springframework.context.annotation.internalPersistenceAnnot
ationProcessor,webappConfigJpa,org.springframework.context.annotation.Configurat
ionClassPostProcessor$ImportAwareBeanPostProcessor#0,addPetForm,snoutContoller,s
noutDao,org.springframework.aop.config.internalAutoProxyCreator,delegatingWebMvc
Configuration,requestMappingHandlerMapping,viewControllerHandlerMapping,beanName
HandlerMapping,resourceHandlerMapping,defaultServletHandlerMapping,requestMappin
gHandlerAdapter,mvcConversionService,mvcValidator,httpRequestHandlerAdapter,simp
leControllerHandlerAdapter,handlerExceptionResolver,proxyTransactionManagementCo
nfiguration,org.springframework.transaction.config.internalTransactionAdvisor,tr
ansactionAttributeSource,transactionInterceptor,transactionManager,entityManager
Factory,setupViewResolver,getDataSource]; root of factory hierarchy
12-Sep-2014 17:13:24.225 INFO [localhost-startStop-1] org.springframework.orm.jp
a.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory Buildi
ng JPA container EntityManagerFactory for persistence unit 'default'
12-Sep-2014 17:13:24.657 INFO [localhost-startStop-1] org.hibernate.annotations.
common.Version. HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
12-Sep-2014 17:13:24.676 INFO [localhost-startStop-1] org.hibernate.Version.logV
ersion HHH000412: Hibernate Core {4.1.2}
12-Sep-2014 17:13:24.681 INFO [localhost-startStop-1] org.hibernate.cfg.Environm
ent. HHH000206: hibernate.properties not found
12-Sep-2014 17:13:24.686 INFO [localhost-startStop-1] org.hibernate.cfg.Environm
ent.buildBytecodeProvider HHH000021: Bytecode provider name : javassist
12-Sep-2014 17:13:24.772 INFO [localhost-startStop-1] org.hibernate.ejb.Ejb3Conf
iguration.configure HHH000204: Processing PersistenceUnitInfo [
name: default
...]
12-Sep-2014 17:13:25.524 INFO [localhost-startStop-1] org.hibernate.service.jdbc
.connections.internal.ConnectionProviderInitiator.instantiateExplicitConnectionP
rovider HHH000130: Instantiating explicit connection provider: org.hibernate.ejb
.connection.InjectedDataSourceConnectionProvider
12-Sep-2014 17:13:26.275 INFO [localhost-startStop-1] org.hibernate.dialect.Dial
ect. HHH000400: Using dialect: org.hibernate.dialect.HSQLDialect
12-Sep-2014 17:13:26.356 INFO [localhost-startStop-1] org.hibernate.engine.trans
action.internal.TransactionFactoryInitiator.initiateService HHH000268: Transacti
on strategy: org.hibernate.engine.transaction.internal.jdbc.JdbcTransactionFacto
ry
12-Sep-2014 17:13:26.374 INFO [localhost-startStop-1] org.hibernate.hql.internal
.ast.ASTQueryTranslatorFactory. HHH000397: Using ASTQueryTranslatorFactory
12-Sep-2014 17:13:26.498 INFO [localhost-startStop-1] . HV0000
01: Hibernate Validator 4.3.0.Final
12-Sep-2014 17:13:27.699 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.handler.AbstractHandlerMethodMapping.registerHandlerMethod Mapped "{[/addP
et],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto
public java.lang.String com.zeroturnaround.snoutbook.controllers.AddPetForm.setu
pForm(org.springframework.ui.Model)
12-Sep-2014 17:13:27.700 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.handler.AbstractHandlerMethodMapping.registerHandlerMethod Mapped "{[/addP
et],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto
public java.lang.String com.zeroturnaround.snoutbook.controllers.AddPetForm.han
dleSubmit(com.zeroturnaround.snoutbook.form.PetForm,org.springframework.validati
on.BindingResult,org.springframework.web.bind.support.SessionStatus)
12-Sep-2014 17:13:27.701 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.handler.AbstractHandlerMethodMapping.registerHandlerMethod Mapped "{[/pet/
{petId}],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" ont
o public java.lang.String com.zeroturnaround.snoutbook.controllers.SnoutContolle
r.pet(java.lang.Long,org.springframework.ui.Model)
12-Sep-2014 17:13:27.702 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.handler.AbstractHandlerMethodMapping.registerHandlerMethod Mapped "{[/owne
rs],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto pub
lic java.lang.String com.zeroturnaround.snoutbook.controllers.SnoutContoller.lis
tOwners(org.springframework.ui.Model)
12-Sep-2014 17:13:27.762 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.handler.AbstractUrlHandlerMapping.registerHandler Mapped URL path [/**] on
to handler of type [class org.springframework.web.servlet.resource.DefaultServle
tHttpRequestHandler]
12-Sep-2014 17:13:28.129 INFO [localhost-startStop-1] org.springframework.web.se
rvlet.FrameworkServlet.initServletBean FrameworkServlet 'dispatcher': initializa
tion completed in 4960 ms
12-Sep-2014 17:13:28.140 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployWAR Deployment of web application archive D:\Users\b21090094\
apache-tomcat-8.0.12\webapps\Snoutbook-1.0.0-SNAPSHOT.war has finished in 8,103
ms
12-Sep-2014 17:13:28.141 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deploying web application directory D:\Users\b21090
094\apache-tomcat-8.0.12\webapps\docs
12-Sep-2014 17:13:28.167 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deployment of web application directory D:\Users\b2
1090094\apache-tomcat-8.0.12\webapps\docs has finished in 26 ms
12-Sep-2014 17:13:28.168 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deploying web application directory D:\Users\b21090
094\apache-tomcat-8.0.12\webapps\examples
12-Sep-2014 17:13:28.537 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deployment of web application directory D:\Users\b2
1090094\apache-tomcat-8.0.12\webapps\examples has finished in 370 ms
12-Sep-2014 17:13:28.538 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deploying web application directory D:\Users\b21090
094\apache-tomcat-8.0.12\webapps\host-manager
12-Sep-2014 17:13:28.572 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deployment of web application directory D:\Users\b2
1090094\apache-tomcat-8.0.12\webapps\host-manager has finished in 34 ms
12-Sep-2014 17:13:28.573 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deploying web application directory D:\Users\b21090
094\apache-tomcat-8.0.12\webapps\manager
12-Sep-2014 17:13:28.633 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deployment of web application directory D:\Users\b2
1090094\apache-tomcat-8.0.12\webapps\manager has finished in 61 ms
12-Sep-2014 17:13:28.633 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deploying web application directory D:\Users\b21090
094\apache-tomcat-8.0.12\webapps\ROOT
12-Sep-2014 17:13:28.659 INFO [localhost-startStop-1] org.apache.catalina.startu
p.HostConfig.deployDirectory Deployment of web application directory D:\Users\b2
1090094\apache-tomcat-8.0.12\webapps\ROOT has finished in 26 ms
12-Sep-2014 17:13:28.663 INFO [main] org.apache.coyote.AbstractProtocol.start St
arting ProtocolHandler ["http-nio-8080"]
12-Sep-2014 17:13:28.676 INFO [main] org.apache.coyote.AbstractProtocol.start St
arting ProtocolHandler ["ajp-nio-8009"]
12-Sep-2014 17:13:28.682 INFO [main] org.apache.catalina.startup.Catalina.start
Server startup in 8701 ms
After that I am still getting Error 404.
Try to use http://localhost:8080/Snoutbook-1.0.0-SNAPSHOT/owners
When you upload war file to webapp folder of tomcat, by default tomcat let you access the webapp with the war's name. And then when you look at the web app initializer (the subtitute of web.xml), it's registering the DispatcherServlet with / mapping. Next, you look at the controller, it have #RequestMapping pointed to /owners.
Hence, the path is:
host:port + war-name + servlet-mapping + controller-mapping
equals to
localhost:8080/ + Snoutbook-1.0.0-SNAPSHOT/ + / + owners
equals to
http://localhost:8080/Snoutbook-1.0.0-SNAPSHOT/owners

Hibernate MappingException in java

I am curious about this error
org.hibernate.MappingException: Unknown entity: xyz
I am new to hibernate. Any suggestions are welcome. Thanks in advance.
Hibernate maps your DB tables to the classes in your project that you have created. In order to load and update values in the DB using these classes, you need to tell Hibernate wich class is mapped to which table. This is where the hibernate configuration file and the Hibernate mapping file comes into picture.
Mapping can be done using annotations or with with a mapping file and include the mapping file name in the hibernate config file.
Read here for more information about these initial steps to setup your environment before you start running your project.
I think you might be trying to store/load an object of class xyz which is not properly mapped with #Entity annotation. Any class that you want to use with Hibernate should be mapped either with annotations or using an XML descriptor.
Other possibility is that your mapping is correct, but you didn't neither explicitly list xyz in hibernate.cfg.xml file nor enabled autodetection of entities.
And as mentioned above, without seeing some actual code it's really hard to give an definitive answer.
Put #Entity in your class.
#Entity
#Table(name="tableName")
public class XYZ {
}
you need to check mappings if using hbm files then check you have included then in config file.and if using annotations then check if you have placed correct annotation type. More details required to provide exact solution.
Dec 11, 2013 4:03:07 PM org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.2.Final}
Dec 11, 2013 4:03:07 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.2.8.Final}
Dec 11, 2013 4:03:07 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Dec 11, 2013 4:03:07 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Dec 11, 2013 4:03:07 PM org.hibernate.cfg.Configuration configure
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
Dec 11, 2013 4:03:07 PM org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
Dec 11, 2013 4:03:07 PM org.hibernate.cfg.Configuration doConfigure
INFO: HHH000041: Configured SessionFactory: null
Dec 11, 2013 4:03:07 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!)
Dec 11, 2013 4:03:07 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000115: Hibernate connection pool size: 20
Dec 11, 2013 4:03:07 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000006: Autocommit mode: false
Dec 11, 2013 4:03:07 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000401: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost/testdb]
Dec 11, 2013 4:03:07 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000046: Connection properties: {user=root, password=****}
Dec 11, 2013 4:03:08 PM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQLDialect
Dec 11, 2013 4:03:08 PM org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService
INFO: HHH000399: Using default transaction strategy (direct JDBC transactions)
Dec 11, 2013 4:03:08 PM org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init>
INFO: HHH000397: Using ASTQueryTranslatorFactory
Dec 11, 2013 4:03:08 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: HHH000227: Running hbm2ddl schema export
Dec 11, 2013 4:03:08 PM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: HHH000230: Schema export complete
org.hibernate.MappingException: Unknown entity: com.sanjay.UserDetails
at org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:1145)
at org.hibernate.internal.SessionImpl.getEntityPersister(SessionImpl.java:1358)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:116)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:206)
at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:55)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:191)
at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:49)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:90)
at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:683)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:675)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:671)
at com.sanjay.UserTest.main(UserTest.java:21)

configuration file is not getting detected

I am new in Hibernate and Maven. I want to use hibernateOGM. I can successfully build my code but if I run it I see these Information:
Aug 12, 2013 12:00:15 PM org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
Aug 12, 2013 12:00:15 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.1.9.Final}
Aug 12, 2013 12:00:15 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Aug 12, 2013 12:00:15 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
my hibernate.cfg.xml and hbm.xml are located in src/main/resources . How can I solve this problem
Did you try placing hibernate.cfg.xml in src/main/resources/META-INF ?
As per your comments you are using
OgmConfiguration cfgogm=new OgmConfiguration();
SessionFactory sessionfactory= cfgogm.buildSessionFactory();
try changing it to:
SessionFactory sessionfactory= new AnnotationConfiguration().configure().buildSessionFactory();
Source: http://www.mkyong.com/hibernate/hibernate-error-an-annotationconfiguration-instance-is-required-to-use/

Categories

Resources