[
https://issues.jboss.org/browse/WFWIP-51?page=com.atlassian.jira.plugin.s...
]
Gail Badner commented on WFWIP-51:
----------------------------------
[~simkam], the {{org.hibernate.type}} package was intentionally not included when we were
looking into binary incompatibilities because the classes contained in that package are
considered SPIs that applications can extend. Since they are SPIs, we don't need to
ensure binary compatibility.
That said, I understand it is a very commonly used feature, so I'll look into the
feasibility of making that package binary compatible.
java.lang.AbstractMethodError:
org.hibernate.test.cut.MonetoryAmountUserType.nullSafeSet(Ljava/sql/PreparedStatement;Ljava/lang/Object;ILorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Key: WFWIP-51
URL:
https://issues.jboss.org/browse/WFWIP-51
Project: WildFly WIP
Issue Type: Bug
Components: JPA
Reporter: Martin Simka
Assignee: Gail Badner
Priority: Blocker
Attachments: App.java
Test from Hibernate test suite CompositeUserTypeTest.testCompositeUserType(compiled with
5.1.x and run 5.3.2-SNAPSHOT) throws
{noformat}
java.lang.AbstractMethodError:
org.hibernate.test.cut.MonetoryAmountUserType.nullSafeSet(Ljava/sql/PreparedStatement;Ljava/lang/Object;ILorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
at org.hibernate.type.CompositeCustomType.nullSafeSet(CompositeCustomType.java:236)
at
org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2833)
at
org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2808)
at
org.hibernate.persister.entity.AbstractEntityPersister$4.bindValues(AbstractEntityPersister.java:3029)
at
org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:41)
at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3037)
at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3628)
at
org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:81)
at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:645)
at
org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:282)
at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263)
at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:317)
at
org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:359)
at
org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:292)
at
org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:200)
at
org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:131)
at
org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:192)
at
org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:135)
at
org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:62)
at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:800)
at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:785)
at
org.hibernate.test.cut.CompositeUserTypeTest.testCompositeUserType(CompositeUserTypeTest.java:47)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at
org.hibernate.testing.junit4.ExtendedFrameworkMethod.invokeExplosively(ExtendedFrameworkMethod.java:45)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at
org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
{noformat}
Scenario is something like:
{code:java}
CompositeUserType t = new CompositeUserType(){ ...};
CompositeCustomType cct = new CompositeCustomType(t);
cct.nullSafeSet(preparedStatement, "value", 1, sessionImplementor);
{code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)