[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-6018) Loading data via XML Mapping not properly handling empty XML elements

Don Smith (JIRA) noreply at atlassian.com
Tue Mar 15 11:53:08 EDT 2011


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-6018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=40213#action_40213 ] 

Don Smith commented on HHH-6018:
--------------------------------

Workaround:  remove the empty nodes from the XML data file

> Loading data via XML Mapping not properly handling empty XML elements
> ---------------------------------------------------------------------
>
>                 Key: HHH-6018
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-6018
>             Project: Hibernate Core
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 3.6.2
>            Reporter: Don Smith
>         Attachments: AFPROCESS.xml, Process.hbm.xml, ProcessImpl.java
>
>
> An XML data file that worked with Hibernate 3.3 now throws "org.hibernate.HibernateException: could not parse timestamp string" for an empty XML node corresponding to a timestamp column.
> Example Class, hbm mapping and XML data file attached.
> com.novell.soa.persist.PersistenceException: org.hibernate.HibernateException: could not parse timestamp string
> 	at com.novell.soa.persist.HibernateDAO.loadData(HibernateDAO.java:533)
> 	at com.novell.soa.persist.HibernateDAO.loadData(HibernateDAO.java:479)
> 	at com.novell.soa.af.impl.persist.ProcessDAOTest.setUp(ProcessDAOTest.java:92)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
> 	at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
> 	at junit.extensions.TestSetup.run(TestSetup.java:23)
> 	at com.intellij.junit3.TestRunnerUtil$SuiteMethodWrapper.run(TestRunnerUtil.java:262)
> 	at com.intellij.junit3.JUnit3IdeaTestRunner.doRun(JUnit3IdeaTestRunner.java:109)
> 	at com.intellij.junit3.JUnit3IdeaTestRunner.startRunnerWithArgs(JUnit3IdeaTestRunner.java:43)
> 	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:196)
> 	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115)
> Caused by: org.hibernate.HibernateException: could not parse timestamp string
> 	at org.hibernate.type.descriptor.java.JdbcTimestampTypeDescriptor.fromString(JdbcTimestampTypeDescriptor.java:76)
> 	at org.hibernate.type.descriptor.java.JdbcTimestampTypeDescriptor.fromString(JdbcTimestampTypeDescriptor.java:42)
> 	at org.hibernate.type.AbstractStandardBasicType.fromString(AbstractStandardBasicType.java:66)
> 	at org.hibernate.type.AbstractStandardBasicType.fromXMLNode(AbstractStandardBasicType.java:300)
> 	at org.hibernate.property.Dom4jAccessor$ElementGetter.get(Dom4jAccessor.java:229)
> 	at org.hibernate.property.Dom4jAccessor$Dom4jGetter.getForInsert(Dom4jAccessor.java:116)
> 	at org.hibernate.tuple.entity.AbstractEntityTuplizer.getPropertyValuesToInsert(AbstractEntityTuplizer.java:497)
> 	at org.hibernate.persister.entity.AbstractEntityPersister.getPropertyValuesToInsert(AbstractEntityPersister.java:3975)
> 	at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:289)
> 	at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:203)
> 	at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:143)
> 	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
> 	at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:56)
> 	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
> 	at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:50)
> 	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
> 	at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:713)
> 	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:701)
> 	at com.novell.soa.persist.HibernateDAO.loadData(HibernateDAO.java:510)
> 	... 27 more
> Caused by: java.text.ParseException: Unparseable date: ""
> 	at java.text.DateFormat.parse(DateFormat.java:337)
> 	at org.hibernate.type.descriptor.java.JdbcTimestampTypeDescriptor.fromString(JdbcTimestampTypeDescriptor.java:73)
> 	... 45 more

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list