Bueno, Instalé Eclipse Version: 3.2.1
Build id: M20060921-0945
y
OX 2.0.3 de Cero, he creado Proyecto Municipio de cero y con un solo componente, CpIntituc.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE componente SYSTEM "dtds/componente.dtd">
La tabla de la base, tiene una relacion tipo arco, te aclaro que esto estaba funcionando bien con OX2.0.2 y Eclipse 3.1.
El Error se presenta al Grabar un nuevo registro:
Ha sido imposible ejecutar la acción Grabar
La Traza:
.4 java.sql.Timestamp handling
49875 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - configuri
ng from resource: /openxava-hibernate.cfg.xml
50578 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - Configura
tion resource: /openxava-hibernate.cfg.xml
50687 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - Reading m
appings from resource: TabUserPreferences.hbm.xml
51187 [http-8092-Processor25] INFO org.hibernate.cfg.HbmBinder - Mapping class
: org.openxava.tab.impl.TabUserPreferences -> OPENXAVA_TABUSERPREFERENCES
51500 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - Configure
d SessionFactory: null
51609 [http-8092-Processor25] INFO org.hibernate.util.NamingHelper - JNDI Init
ialContext properties:{}
52515 [http-8092-Processor25] INFO org.hibernate.connection.DatasourceConnectio
nProvider - Using datasource: java:comp/env/jdbc/OpenXavaDS
52921 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - RDBMS:
HSQL Database Engine, version: 1.8.0
54921 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC dr
iver: HSQL Database Engine Driver, version: 1.8.0
54953 [http-8092-Processor25] INFO org.hibernate.dialect.Dialect - Using diale
ct: org.hibernate.dialect.HSQLDialect
55125 [http-8092-Processor25] INFO org.hibernate.transaction.TransactionFactory
Factory - Using default transaction strategy (direct JDBC transactions)
57078 [http-8092-Processor25] INFO org.hibernate.transaction.TransactionManager
LookupFactory - No TransactionManagerLookup configured (in JTA environment, use
of read-write or transactional second-level cache is not recommended)
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Automat
ic flush during beforeCompletion(): disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Automat
ic session close at end of transaction: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC ba
tch size: 15
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC ba
tch updates for versioned data: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Scrolla
ble result sets: enabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC3 g
etGeneratedKeys(): disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Connect
ion release mode: auto
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Default
batch fetch size: 1
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Generat
e SQL with comments: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Order S
QL updates by primary key: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Query t
ranslator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
57078 [http-8092-Processor25] INFO org.hibernate.hql.ast.ASTQueryTranslatorFact
ory - Using ASTQueryTranslatorFactory
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Query l
anguage substitutions: {}
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Second-
level cache: enabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Query c
ache: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Cache p
rovider: org.hibernate.cache.EhCacheProvider
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Optimiz
e cache for minimal puts: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Structu
red second-level cache entries: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Statist
ics: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Deleted
entity synthetic identifier rollback: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Default
entity-mode: pojo
57156 [http-8092-Processor25] INFO org.hibernate.impl.SessionFactoryImpl - bui
lding session factory
57750 [http-8092-Processor25] WARN net.sf.ehcache.config.Configurator - No con
figuration found. Configuring ehcache from ehcache-failsafe.xml found in the cla
sspath: jar:file:/C:/openxava%202.0.3/intranet/webapps/Municipio/WEB-INF/lib/ehc
ache.jar!/ehcache-failsafe.xml
58296 [http-8092-Processor25] INFO org.hibernate.impl.SessionFactoryObjectFacto
ry - Not binding factory to JNDI, no JNDI name configured
Imposible internacionalizar elemento con id Instituc
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id estadoX
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id estadoX
[JDBCTabProvider.nextBlock] Ejecutando SELECT CP_INSTITUC.ID, CP_INSTITUC.VERSIO
N, CP_INSTITUC.CLAVE_N, CP_INSTITUC.CLAVE, CP_INSTITUC.DESCRIPCION, CP_INSTITUC.
IMPUTABLE, CP_INSTITUC.NIVEL, CP_INSTITUC.CREADA_EL, CP_INSTITUC.ESTADO from CP_
INSTITUC con argumentos
[TableModelBean.getRow] nextChunk=1719
Imposible internacionalizar elemento con id cpInstituc
[ModuleManager.execute] CRUD.new=16 ms
Imposible internacionalizar elemento con id Instituc
Imposible internacionalizar elemento con id cpInstituc
Imposible internacionalizar elemento con id idX
Imposible internacionalizar elemento con id descripcionX
[JDBCTabProvider.nextBlock] Ejecutando SELECT CP_INSTITUC.ID, CP_INSTITUC.ID, CP
_INSTITUC.DESCRIPCION from CP_INSTITUC WHERE CP_INSTITUC.IMPUTABLE = 'N' ORDER B
Y CP_INSTITUC.DESCRIPCION asc con argumentos
[TableModelBean.getRow] nextChunk=0
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id estadoX
Imposible internacionalizar elemento con id estadoX
121484 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - configur
ing from resource: /hibernate.cfg.xml
125500 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - Configur
ation resource: /hibernate.cfg.xml
125515 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - Configur
ed SessionFactory: null
125515 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - Reading
mappings from resource: CpInstituc.hbm.xml
125531 [http-8092-Processor23] INFO org.hibernate.cfg.HbmBinder - Mapping clas
s: org.openxava.municipio.modelo.CpInstituc -> CP_INSTITUC
125546 [http-8092-Processor23] INFO org.hibernate.util.NamingHelper - JNDI Ini
tialContext properties:{}
125546 [http-8092-Processor23] INFO org.hibernate.connection.DatasourceConnecti
onProvider - Using datasource: java:comp/env/jdbc/MuniOraDS
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - RDBMS:
Oracle, version: Oracle Database 10g Release 10.1.0.2.0 - Production
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC d
river: Oracle JDBC driver, version: 10.1.0.4.0
125546 [http-8092-Processor23] INFO org.hibernate.dialect.Dialect - Using dial
ect: org.hibernate.dialect.HSQLDialect
125546 [http-8092-Processor23] INFO org.hibernate.transaction.TransactionFactor
yFactory - Using default transaction strategy (direct JDBC transactions)
125546 [http-8092-Processor23] INFO org.hibernate.transaction.TransactionManage
rLookupFactory - No TransactionManagerLookup configured (in JTA environment, us
e of read-write or transactional second-level cache is not recommended)
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Automa
tic flush during beforeCompletion(): disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Automa
tic session close at end of transaction: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC b
atch size: 15
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC b
atch updates for versioned data: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Scroll
able result sets: enabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC3
getGeneratedKeys(): disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Connec
tion release mode: auto
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Defaul
t batch fetch size: 1
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Genera
te SQL with comments: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Order
SQL updates by primary key: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Query
translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
125546 [http-8092-Processor23] INFO org.hibernate.hql.ast.ASTQueryTranslatorFac
tory - Using ASTQueryTranslatorFactory
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Query
language substitutions: {}
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Second
-level cache: enabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Query
cache: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Cache
provider: org.hibernate.cache.EhCacheProvider
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Optimi
ze cache for minimal puts: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Struct
ured second-level cache entries: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Statis
tics: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Delete
d entity synthetic identifier rollback: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Defaul
t entity-mode: pojo
125562 [http-8092-Processor23] INFO org.hibernate.impl.SessionFactoryImpl - bu
ilding session factory
125593 [http-8092-Processor23] INFO org.hibernate.impl.SessionFactoryObjectFact
ory - Not binding factory to JNDI, no JNDI name configured
125640 [http-8092-Processor23] WARN org.hibernate.util.JDBCExceptionReporter -
SQL Error: 923, SQLState: 42000
128000 [http-8092-Processor23] ERROR org.hibernate.util.JDBCExceptionReporter -
ORA-00923: palabra clave FROM no encontrada donde se esperaba
org.hibernate.exception.SQLGrammarException: could not get next sequence value
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.j
ava:67)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelp
er.java:43)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:96
)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId
(AbstractSaveEventListener.java:91)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGene
ratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrR
equestedId(DefaultSaveEventListener.java:33)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTran
sient(DefaultSaveOrUpdateEventListener.java:175)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(
DefaultSaveEventListener.java:27)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpda
te(DefaultSaveOrUpdateEventListener.java:70)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:530)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:518)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:514)
at org.openxava.model.impl.HibernatePersistenceProvider.persist(Hibernat
ePersistenceProvider.java:33)
at org.openxava.model.impl.BasePOJOPersistenceProvider.create(BasePOJOPe
rsistenceProvider.java:156)
at org.openxava.model.impl.MapFacadeBean.create(MapFacadeBean.java:695)
at org.openxava.model.impl.MapFacadeBean.create(MapFacadeBean.java:38)
at org.openxava.model.MapFacade.create(MapFacade.java:73)
at org.openxava.actions.SaveAction.execute(SaveAction.java:24)
at org.openxava.controller.ModuleManager.executeAction(ModuleManager.jav
a:309)
at org.openxava.controller.ModuleManager.executeAction(ModuleManager.jav
a:238)
at org.openxava.controller.ModuleManager.execute(ModuleManager.java:205)
at org.apache.jsp.xava.module_jsp._jspService(module_jsp.java:327)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
14)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.p
rocessConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo
int.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFol
lowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: ORA-00923: palabra clave FROM no encontrada do
nde se esperaba
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:124)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:304)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:271)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:625)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.
java:181)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPrepa
redStatement.java:499)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleState
ment.java:941)
at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPre
paredStatement.java:531)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:1036)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrep
aredStatement.java:2904)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePrepare
dStatement.java:2945)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(
DelegatingPreparedStatement.java:92)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:75
)
... 39 more
Bueno, a Mi me parece que el Error estár por aquí :
125640 [http-8092-Processor23] WARN org.hibernate.util.JDBCExceptionReporter -
SQL Error: 923, SQLState: 42000
128000 [http-8092-Processor23] ERROR org.hibernate.util.JDBCExceptionReporter -
ORA-00923: palabra clave FROM no encontrada donde se esperaba
Es como si una SELECT está mal construida, sobre todo por que parece no tener un FROM, Puedes guiarme para resolver el Problema?.
Gracias.
Saludos.
Sergio.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
es decir, es el save de Hibernate el que falla. Y falla cuando intenta generar el siguiente Oid, ya que dice:
> org.hibernate.exception.SQLGrammarException: could not get next sequence value
No sé porque puede ser, pero se me ocurren dos posibilidades:
- Que el dialecto de hibernate no sea el correcto, o ...
- que la secuencia no esté bien definida en la base de datos.
Para depurarlo, yo me haría una clase simple con un main que intentara grabar el POJO CpIntituc directamente con las APIs de Hibernate, y corrigiendo el .hbm.xml y el pojo hasta que funcione. De esta forma, al trabajar con puro hibernate, descartamos que pueda ser un problema de OX, y tenemos algo más simple para depurar.
Ve diciendome como te va este problema.
Saludos
Javi
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
<<< No sé porque puede ser, pero se me ocurren dos posibilidades:
- Que el dialecto de hibernate no sea el correcto, >>>
CORRECTO, el dialecto estaba mal, pero... tambien había algo más, es el tipo de dato, por esto,
he intentado usar "clearGeneratedCode" (Para limpiar todo lo viejo), pero da un error, intenta limpiar la carpeta "gen-src" y en mi proyecto, no existe, existe solo la "gen-src-xava". Esto lo hice a mano.
Hola Javier,
Bueno, Instalé Eclipse Version: 3.2.1
Build id: M20060921-0945
y
OX 2.0.3 de Cero, he creado Proyecto Municipio de cero y con un solo componente, CpIntituc.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE componente SYSTEM "dtds/componente.dtd">
<componente nombre="CpInstituc">
<entidad>
<propiedad nombre="idX" longitud="20" clave="true" tipo="java.math.BigDecimal" oculta="true">
<calculador-valor-defecto
clase="org.openxava.calculators.SequenceCalculator" al-crear="true">
<poner propiedad="sequence" valor="CP_INS_SEQ"/>
</calculador-valor-defecto>
</propiedad>
<referencia nombre="cpInstituc" modelo="CpInstituc"/>
<propiedad nombre="versionX" longitud="10" requerido="true" tipo="java.math.BigDecimal"/>
<propiedad nombre="clavenX" longitud="5" tipo="java.math.BigDecimal"/>
<propiedad nombre="claveX" longitud="30" requerido="true" tipo="String"/>
<propiedad nombre="descripcionX" longitud="100" requerido="true" tipo="String"/>
<propiedad nombre="imputableX" longitud="1" requerido="true" tipo="String"/>
<propiedad nombre="nivelX" longitud="2" requerido="true" tipo="java.math.BigDecimal"/>
<propiedad nombre="creadaelX" requerido="true" tipo="java.util.Date">
<calculador-valor-defecto clase="org.openxava.calculators.CurrentDateCalculator"/>
</propiedad>
<propiedad nombre="estadoX" longitud="1" tipo="String"/>
</entidad>
<vista nombre="Simple">
<miembros>descripcionX</miembros>
</vista>
<vista>
<vista-referencia referencia="cpInstituc" crear="false">
<lista-descripciones
propiedad-descripcion="descripcionX"
condicion="${imputableX} = 'N'"
orden="${descripcionX} asc" />
</vista-referencia>
</vista>
<mapeo-entidad tabla="CP@separator@INSTITUC">
<mapeo-propiedad propiedad-modelo="idX" columna-tabla="ID"/>
<mapeo-referencia referencia-modelo="cpInstituc">
<detalle-mapeo-referencia
columna-tabla="PLAN_ID"
propiedad-modelo-referenciado="idX"/>
</mapeo-referencia>
<mapeo-propiedad propiedad-modelo="versionX" columna-tabla="VERSION"/>
<mapeo-propiedad propiedad-modelo="clavenX" columna-tabla="CLAVE_N"/>
<mapeo-propiedad propiedad-modelo="claveX" columna-tabla="CLAVE"/>
<mapeo-propiedad propiedad-modelo="descripcionX" columna-tabla="DESCRIPCION"/>
<mapeo-propiedad propiedad-modelo="imputableX" columna-tabla="IMPUTABLE"/>
<mapeo-propiedad propiedad-modelo="nivelX" columna-tabla="NIVEL"/>
<mapeo-propiedad propiedad-modelo="creadaelX" columna-tabla="CREADA_EL"/>
<mapeo-propiedad propiedad-modelo="estadoX" columna-tabla="ESTADO"/>
</mapeo-entidad>
</componente>
La tabla de la base, tiene una relacion tipo arco, te aclaro que esto estaba funcionando bien con OX2.0.2 y Eclipse 3.1.
El Error se presenta al Grabar un nuevo registro:
Ha sido imposible ejecutar la acción Grabar
La Traza:
.4 java.sql.Timestamp handling
49875 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - configuri
ng from resource: /openxava-hibernate.cfg.xml
50578 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - Configura
tion resource: /openxava-hibernate.cfg.xml
50687 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - Reading m
appings from resource: TabUserPreferences.hbm.xml
51187 [http-8092-Processor25] INFO org.hibernate.cfg.HbmBinder - Mapping class
: org.openxava.tab.impl.TabUserPreferences -> OPENXAVA_TABUSERPREFERENCES
51500 [http-8092-Processor25] INFO org.hibernate.cfg.Configuration - Configure
d SessionFactory: null
51609 [http-8092-Processor25] INFO org.hibernate.util.NamingHelper - JNDI Init
ialContext properties:{}
52515 [http-8092-Processor25] INFO org.hibernate.connection.DatasourceConnectio
nProvider - Using datasource: java:comp/env/jdbc/OpenXavaDS
52921 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - RDBMS:
HSQL Database Engine, version: 1.8.0
54921 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC dr
iver: HSQL Database Engine Driver, version: 1.8.0
54953 [http-8092-Processor25] INFO org.hibernate.dialect.Dialect - Using diale
ct: org.hibernate.dialect.HSQLDialect
55125 [http-8092-Processor25] INFO org.hibernate.transaction.TransactionFactory
Factory - Using default transaction strategy (direct JDBC transactions)
57078 [http-8092-Processor25] INFO org.hibernate.transaction.TransactionManager
LookupFactory - No TransactionManagerLookup configured (in JTA environment, use
of read-write or transactional second-level cache is not recommended)
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Automat
ic flush during beforeCompletion(): disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Automat
ic session close at end of transaction: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC ba
tch size: 15
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC ba
tch updates for versioned data: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Scrolla
ble result sets: enabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - JDBC3 g
etGeneratedKeys(): disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Connect
ion release mode: auto
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Default
batch fetch size: 1
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Generat
e SQL with comments: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Order S
QL updates by primary key: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Query t
ranslator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
57078 [http-8092-Processor25] INFO org.hibernate.hql.ast.ASTQueryTranslatorFact
ory - Using ASTQueryTranslatorFactory
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Query l
anguage substitutions: {}
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Second-
level cache: enabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Query c
ache: disabled
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Cache p
rovider: org.hibernate.cache.EhCacheProvider
57078 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Optimiz
e cache for minimal puts: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Structu
red second-level cache entries: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Statist
ics: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Deleted
entity synthetic identifier rollback: disabled
57093 [http-8092-Processor25] INFO org.hibernate.cfg.SettingsFactory - Default
entity-mode: pojo
57156 [http-8092-Processor25] INFO org.hibernate.impl.SessionFactoryImpl - bui
lding session factory
57750 [http-8092-Processor25] WARN net.sf.ehcache.config.Configurator - No con
figuration found. Configuring ehcache from ehcache-failsafe.xml found in the cla
sspath: jar:file:/C:/openxava%202.0.3/intranet/webapps/Municipio/WEB-INF/lib/ehc
ache.jar!/ehcache-failsafe.xml
58296 [http-8092-Processor25] INFO org.hibernate.impl.SessionFactoryObjectFacto
ry - Not binding factory to JNDI, no JNDI name configured
Imposible internacionalizar elemento con id Instituc
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id estadoX
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id estadoX
[JDBCTabProvider.nextBlock] Ejecutando SELECT CP_INSTITUC.ID, CP_INSTITUC.VERSIO
N, CP_INSTITUC.CLAVE_N, CP_INSTITUC.CLAVE, CP_INSTITUC.DESCRIPCION, CP_INSTITUC.
IMPUTABLE, CP_INSTITUC.NIVEL, CP_INSTITUC.CREADA_EL, CP_INSTITUC.ESTADO from CP_
INSTITUC con argumentos
[TableModelBean.getRow] nextChunk=1719
Imposible internacionalizar elemento con id cpInstituc
[ModuleManager.execute] CRUD.new=16 ms
Imposible internacionalizar elemento con id Instituc
Imposible internacionalizar elemento con id cpInstituc
Imposible internacionalizar elemento con id idX
Imposible internacionalizar elemento con id descripcionX
[JDBCTabProvider.nextBlock] Ejecutando SELECT CP_INSTITUC.ID, CP_INSTITUC.ID, CP
_INSTITUC.DESCRIPCION from CP_INSTITUC WHERE CP_INSTITUC.IMPUTABLE = 'N' ORDER B
Y CP_INSTITUC.DESCRIPCION asc con argumentos
[TableModelBean.getRow] nextChunk=0
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id versionX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id clavenX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id claveX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id descripcionX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id imputableX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id nivelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id creadaelX
Imposible internacionalizar elemento con id estadoX
Imposible internacionalizar elemento con id estadoX
121484 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - configur
ing from resource: /hibernate.cfg.xml
125500 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - Configur
ation resource: /hibernate.cfg.xml
125515 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - Configur
ed SessionFactory: null
125515 [http-8092-Processor23] INFO org.hibernate.cfg.Configuration - Reading
mappings from resource: CpInstituc.hbm.xml
125531 [http-8092-Processor23] INFO org.hibernate.cfg.HbmBinder - Mapping clas
s: org.openxava.municipio.modelo.CpInstituc -> CP_INSTITUC
125546 [http-8092-Processor23] INFO org.hibernate.util.NamingHelper - JNDI Ini
tialContext properties:{}
125546 [http-8092-Processor23] INFO org.hibernate.connection.DatasourceConnecti
onProvider - Using datasource: java:comp/env/jdbc/MuniOraDS
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - RDBMS:
Oracle, version: Oracle Database 10g Release 10.1.0.2.0 - Production
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC d
river: Oracle JDBC driver, version: 10.1.0.4.0
125546 [http-8092-Processor23] INFO org.hibernate.dialect.Dialect - Using dial
ect: org.hibernate.dialect.HSQLDialect
125546 [http-8092-Processor23] INFO org.hibernate.transaction.TransactionFactor
yFactory - Using default transaction strategy (direct JDBC transactions)
125546 [http-8092-Processor23] INFO org.hibernate.transaction.TransactionManage
rLookupFactory - No TransactionManagerLookup configured (in JTA environment, us
e of read-write or transactional second-level cache is not recommended)
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Automa
tic flush during beforeCompletion(): disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Automa
tic session close at end of transaction: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC b
atch size: 15
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC b
atch updates for versioned data: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Scroll
able result sets: enabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - JDBC3
getGeneratedKeys(): disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Connec
tion release mode: auto
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Defaul
t batch fetch size: 1
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Genera
te SQL with comments: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Order
SQL updates by primary key: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Query
translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
125546 [http-8092-Processor23] INFO org.hibernate.hql.ast.ASTQueryTranslatorFac
tory - Using ASTQueryTranslatorFactory
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Query
language substitutions: {}
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Second
-level cache: enabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Query
cache: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Cache
provider: org.hibernate.cache.EhCacheProvider
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Optimi
ze cache for minimal puts: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Struct
ured second-level cache entries: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Statis
tics: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Delete
d entity synthetic identifier rollback: disabled
125546 [http-8092-Processor23] INFO org.hibernate.cfg.SettingsFactory - Defaul
t entity-mode: pojo
125562 [http-8092-Processor23] INFO org.hibernate.impl.SessionFactoryImpl - bu
ilding session factory
125593 [http-8092-Processor23] INFO org.hibernate.impl.SessionFactoryObjectFact
ory - Not binding factory to JNDI, no JNDI name configured
125640 [http-8092-Processor23] WARN org.hibernate.util.JDBCExceptionReporter -
SQL Error: 923, SQLState: 42000
128000 [http-8092-Processor23] ERROR org.hibernate.util.JDBCExceptionReporter -
ORA-00923: palabra clave FROM no encontrada donde se esperaba
org.hibernate.exception.SQLGrammarException: could not get next sequence value
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.j
ava:67)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelp
er.java:43)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:96
)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId
(AbstractSaveEventListener.java:91)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGene
ratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrR
equestedId(DefaultSaveEventListener.java:33)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTran
sient(DefaultSaveOrUpdateEventListener.java:175)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(
DefaultSaveEventListener.java:27)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpda
te(DefaultSaveOrUpdateEventListener.java:70)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:530)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:518)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:514)
at org.openxava.model.impl.HibernatePersistenceProvider.persist(Hibernat
ePersistenceProvider.java:33)
at org.openxava.model.impl.BasePOJOPersistenceProvider.create(BasePOJOPe
rsistenceProvider.java:156)
at org.openxava.model.impl.MapFacadeBean.create(MapFacadeBean.java:695)
at org.openxava.model.impl.MapFacadeBean.create(MapFacadeBean.java:38)
at org.openxava.model.MapFacade.create(MapFacade.java:73)
at org.openxava.actions.SaveAction.execute(SaveAction.java:24)
at org.openxava.controller.ModuleManager.executeAction(ModuleManager.jav
a:309)
at org.openxava.controller.ModuleManager.executeAction(ModuleManager.jav
a:238)
at org.openxava.controller.ModuleManager.execute(ModuleManager.java:205)
at org.apache.jsp.xava.module_jsp._jspService(module_jsp.java:327)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
14)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.p
rocessConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo
int.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFol
lowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: ORA-00923: palabra clave FROM no encontrada do
nde se esperaba
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:124)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:304)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:271)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:625)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.
java:181)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPrepa
redStatement.java:499)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleState
ment.java:941)
at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPre
paredStatement.java:531)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:1036)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrep
aredStatement.java:2904)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePrepare
dStatement.java:2945)
at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(
DelegatingPreparedStatement.java:92)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:75
)
... 39 more
Bueno, a Mi me parece que el Error estár por aquí :
125640 [http-8092-Processor23] WARN org.hibernate.util.JDBCExceptionReporter -
SQL Error: 923, SQLState: 42000
128000 [http-8092-Processor23] ERROR org.hibernate.util.JDBCExceptionReporter -
ORA-00923: palabra clave FROM no encontrada donde se esperaba
Es como si una SELECT está mal construida, sobre todo por que parece no tener un FROM, Puedes guiarme para resolver el Problema?.
Gracias.
Saludos.
Sergio.
Hola Sergio,
el problema está aquí:
> org.hibernate.impl.SessionImpl.save(SessionImpl.java:514)
es decir, es el save de Hibernate el que falla. Y falla cuando intenta generar el siguiente Oid, ya que dice:
> org.hibernate.exception.SQLGrammarException: could not get next sequence value
No sé porque puede ser, pero se me ocurren dos posibilidades:
- Que el dialecto de hibernate no sea el correcto, o ...
- que la secuencia no esté bien definida en la base de datos.
Para depurarlo, yo me haría una clase simple con un main que intentara grabar el POJO CpIntituc directamente con las APIs de Hibernate, y corrigiendo el .hbm.xml y el pojo hasta que funcione. De esta forma, al trabajar con puro hibernate, descartamos que pueda ser un problema de OX, y tenemos algo más simple para depurar.
Ve diciendome como te va este problema.
Saludos
Javi
Hola Javier,
<<< No sé porque puede ser, pero se me ocurren dos posibilidades:
- Que el dialecto de hibernate no sea el correcto, >>>
CORRECTO, el dialecto estaba mal, pero... tambien había algo más, es el tipo de dato, por esto,
he intentado usar "clearGeneratedCode" (Para limpiar todo lo viejo), pero da un error, intenta limpiar la carpeta "gen-src" y en mi proyecto, no existe, existe solo la "gen-src-xava". Esto lo hice a mano.
Lo cierto es que probé con :
<propiedad nombre="idX" longitud="20" clave="true" tipo="java.math.BigDecimal" ...
No funciona
<propiedad nombre="idX" longitud="20" clave="true" tipo="java.math.BigInteger" ...
No funciona
<propiedad nombre="idX" longitud="20" clave="true" tipo="long"
Funciona Bien
En la Tabla Oracle 10G está como un NUMBER(20,0).
Gracias.
Saludos.
Sergio.
Hola Sergio,
me alegro de que te funcione.
El problema que me comentas está arreglado desde OpenXava_20061117,
y por lo tanto estará disponible el arreglo en OX2.0.4
Miralo en
http://sourceforge.net/mailarchive/forum.php?thread_id=30948144&forum_id=46880
Pero modificar OX para arreglar esto es trivial, sustituye la tarea ant de OpenXava/build.xml por:
<target name="clearGeneratedCode">
<delete failonerror="false">
<fileset dir="../${project}/gen-src"/>
<fileset dir="../${project}/gen-src-xava"/>
<fileset dir="../${project}/${meta-inf.dir}" excludes="MANIFEST.MF"/>
</delete>
</target>
El truco está en failonerror="false"
Saludos
Javi