<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.3059" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN
class=349144921-04042007>Hi,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=349144921-04042007></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=349144921-04042007>I am writing an
application which Hibernate to map spatial objects like geometry to postgis.
That works very well with a Hibernate User Type for Geometry types such as
Point, etc.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=349144921-04042007>Now, I am trying to
adapt the org.postgis.hibernate.GeometryType implementation to make it work for
org.postgis.PGbox3d. However since the BinaryParser and Writer doesn't support
boxes I don't know which type mapping I should use. For example just writing a
string in the <FONT size=2>nullSafeGet and <FONT size=2>nullSafeSet doesn't
work. I always get a SQLGrammerException. </FONT></FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=349144921-04042007>Does anyone has
similar problems or ideas. Thanks for help!!</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=349144921-04042007>Here is the detailed
implementation of my <FONT size=2>Box3DType hibernate custom type and the
exception I get.</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=349144921-04042007></SPAN></FONT> </DIV>
<DIV><FONT><SPAN class=349144921-04042007><B><FONT color=#7f0055>
<P align=left><FONT face=Arial size=2>public</FONT></B></FONT><FONT
face=Arial><FONT size=2> <B><FONT
color=#7f0055>class</B></FONT></FONT></FONT><FONT face=Arial><FONT size=2>
Box3DType <B><FONT color=#7f0055>implements</B></FONT></FONT></FONT><FONT
face=Arial size=2> UserType {</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>private</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>static</B></FONT></FONT></FONT><FONT face=Arial><FONT size=2>
<B><FONT color=#7f0055>final</B></FONT></FONT></FONT><FONT face=Arial><FONT
size=2> <B><FONT color=#7f0055>int</B></FONT></FONT></FONT><FONT
face=Arial><FONT size=2>[] <I><FONT
color=#0000c0>SQL_TYPES</I></FONT></FONT></FONT><FONT face=Arial><FONT size=2> =
{ Types.<I><FONT color=#0000c0>OTHER</I></FONT></FONT></FONT><FONT face=Arial
size=2> };</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial size=2> Object
assemble(Serializable cached, Object owner)</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>throws</FONT></B></FONT><FONT face=Arial size=2> HibernateException
{</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> cached;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> Object
deepCopy(Object value) <B><FONT
color=#7f0055>throws</B></FONT></FONT></FONT><FONT face=Arial size=2>
HibernateException {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> value;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> Serializable
disassemble(Object value) <B><FONT
color=#7f0055>throws</B></FONT></FONT></FONT><FONT face=Arial size=2>
HibernateException {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> (Serializable)
value;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>boolean</B></FONT></FONT></FONT><FONT face=Arial><FONT size=2>
equals(Object x, Object y) <B><FONT
color=#7f0055>throws</B></FONT></FONT></FONT><FONT face=Arial size=2>
HibernateException {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>if</FONT></B></FONT><FONT face=Arial size=2> (x == y) {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>true</B></FONT></FONT></FONT><FONT face=Arial size=2>;</FONT></P>
<P align=left><FONT size=2><FONT face=Arial>} </FONT><B><FONT
color=#7f0055><FONT face=Arial>else</FONT></B></FONT></FONT><FONT
face=Arial><FONT size=2> <B><FONT color=#7f0055>if</B></FONT></FONT></FONT><FONT
face=Arial><FONT size=2> (x == <B><FONT
color=#7f0055>null</B></FONT></FONT></FONT><FONT face=Arial><FONT size=2> || y
== <B><FONT color=#7f0055>null</B></FONT></FONT></FONT><FONT face=Arial size=2>)
{</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>false</B></FONT></FONT></FONT><FONT face=Arial size=2>;</FONT></P>
<P align=left><FONT size=2><FONT face=Arial>} </FONT><B><FONT
color=#7f0055><FONT face=Arial>else</FONT></B></FONT></FONT><FONT face=Arial
size=2> {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> x.equals(y);</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>int</B></FONT></FONT></FONT><FONT face=Arial><FONT size=2>
hashCode(Object arg0) <B><FONT
color=#7f0055>throws</B></FONT></FONT></FONT><FONT face=Arial size=2>
HibernateException {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> 0;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>boolean</B></FONT></FONT></FONT><FONT face=Arial size=2>
isMutable() {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>false</B></FONT></FONT></FONT><FONT face=Arial size=2>;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT><FONT color=#3f7f5f></P></FONT>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial size=2> Object
nullSafeGet(ResultSet resultSet, String[] names, Object owner)</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>throws</FONT></B></FONT><FONT face=Arial size=2> HibernateException,
SQLException {</FONT></P>
<P align=left><FONT size=2><FONT face=Arial>PGbox3d result = </FONT><B><FONT
color=#7f0055><FONT face=Arial>null</FONT></B></FONT></FONT><FONT face=Arial
size=2>;</FONT></P>
<P align=left><FONT face=Arial size=2>String box3d =
resultSet.getString(names[0]);</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>if</FONT></B></FONT><FONT face=Arial><FONT size=2> (box3d != <B><FONT
color=#7f0055>null</B></FONT></FONT></FONT><FONT face=Arial size=2>)
{</FONT></P>
<P align=left><FONT size=2><FONT face=Arial>result = </FONT><B><FONT
color=#7f0055><FONT face=Arial>new</FONT></B></FONT></FONT><FONT face=Arial
size=2> PGbox3d(box3d);</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> result;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>void</B></FONT></FONT></FONT><FONT face=Arial><FONT size=2>
nullSafeSet(PreparedStatement statement, Object value, <B><FONT
color=#7f0055>int</B></FONT></FONT></FONT><FONT face=Arial size=2>
index)</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>throws</FONT></B></FONT><FONT face=Arial size=2> HibernateException,
SQLException {</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>if</FONT></B></FONT><FONT face=Arial><FONT size=2> (value == <B><FONT
color=#7f0055>null</B></FONT></FONT></FONT><FONT face=Arial size=2>)
{</FONT></P>
<P align=left><FONT size=2><FONT face=Arial>statement.setString(index,
</FONT><B><FONT color=#7f0055><FONT
face=Arial>null</FONT></B></FONT></FONT><FONT face=Arial size=2>);</FONT></P>
<P align=left><FONT size=2><FONT face=Arial>} </FONT><B><FONT
color=#7f0055><FONT face=Arial>else</FONT></B></FONT></FONT><FONT face=Arial
size=2> {</FONT></P>
<P align=left><FONT face=Arial size=2>PGbox3d box = (PGbox3d) value;</FONT></P>
<P align=left><FONT face=Arial size=2>statement.setString(index,
box.getValue());</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial size=2> Object replace(Object
original, Object target, Object owner)</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>throws</FONT></B></FONT><FONT face=Arial size=2> HibernateException
{</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial size=2> original;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial size=2> Class returnedClass()
{</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial><FONT size=2> PGbox3d.<B><FONT
color=#7f0055>class</B></FONT></FONT></FONT><FONT face=Arial size=2>;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>public</FONT></B></FONT><FONT face=Arial><FONT size=2> <B><FONT
color=#7f0055>int</B></FONT></FONT></FONT><FONT face=Arial size=2>[] sqlTypes()
{</FONT></P>
<P align=left><B><FONT color=#7f0055><FONT face=Arial
size=2>return</FONT></B></FONT><FONT face=Arial><FONT size=2> Box3DType.<I><FONT
color=#0000c0>SQL_TYPES</I></FONT></FONT></FONT><FONT face=Arial
size=2>;</FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT></P>
<P align=left><FONT face=Arial size=2>}</FONT></P>
<P align=left><FONT face=Arial size=2></FONT> </P>
<P align=left><SPAN class=349144921-04042007><FONT face=Arial size=2>Exception
Output:</FONT></SPAN></P>
<P align=left><SPAN class=349144921-04042007></SPAN><SPAN
class=349144921-04042007><U><FONT color=#000080
size=2>javax.persistence.RollbackException</U></FONT><FONT color=#ff0000
size=2>: Error while commiting the transaction</P>
<P align=left>at org.hibernate.ejb.TransactionImpl.commit(</FONT><U><FONT
color=#000080 size=2>TransactionImpl.java:63</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
com.siemens.fsp.gmg.gisdata.PostGisDBAccessStandaloneTest.testCreateGisCollection(</FONT><U><FONT
color=#000080 size=2>PostGisDBAccessStandaloneTest.java:494</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at sun.reflect.NativeMethodAccessorImpl.invoke0(</FONT><U><FONT
color=#000080 size=2>Native Method</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at sun.reflect.NativeMethodAccessorImpl.invoke(</FONT><U><FONT
color=#000080 size=2>NativeMethodAccessorImpl.java:39</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at sun.reflect.DelegatingMethodAccessorImpl.invoke(</FONT><U><FONT
color=#000080 size=2>DelegatingMethodAccessorImpl.java:25</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at java.lang.reflect.Method.invoke(</FONT><U><FONT color=#000080
size=2>Method.java:585</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at junit.framework.TestCase.runTest(</FONT><U><FONT color=#000080
size=2>TestCase.java:154</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at junit.framework.TestCase.runBare(</FONT><U><FONT color=#000080
size=2>TestCase.java:127</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at junit.framework.TestResult$1.protect(</FONT><U><FONT
color=#000080 size=2>TestResult.java:106</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at junit.framework.TestResult.runProtected(</FONT><U><FONT
color=#000080 size=2>TestResult.java:124</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at junit.framework.TestResult.run(</FONT><U><FONT color=#000080
size=2>TestResult.java:109</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at junit.framework.TestCase.run(</FONT><U><FONT color=#000080
size=2>TestCase.java:118</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at junit.framework.TestSuite.runTest(</FONT><U><FONT color=#000080
size=2>TestSuite.java:208</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at junit.framework.TestSuite.run(</FONT><U><FONT color=#000080
size=2>TestSuite.java:203</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at
org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(</FONT><U><FONT
color=#000080 size=2>JUnit3TestReference.java:128</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(</FONT><U><FONT
color=#000080 size=2>TestExecution.java:38</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(</FONT><U><FONT
color=#000080 size=2>RemoteTestRunner.java:460</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(</FONT><U><FONT
color=#000080 size=2>RemoteTestRunner.java:673</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(</FONT><U><FONT
color=#000080 size=2>RemoteTestRunner.java:386</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(</FONT><U><FONT
color=#000080 size=2>RemoteTestRunner.java:196</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>Caused by: </FONT><U><FONT color=#000080
size=2>org.hibernate.exception.SQLGrammarException</U></FONT><FONT color=#ff0000
size=2>: Could not execute JDBC batch update</P>
<P align=left>at
org.hibernate.exception.SQLStateConverter.convert(</FONT><U><FONT color=#000080
size=2>SQLStateConverter.java:67</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at
org.hibernate.exception.JDBCExceptionHelper.convert(</FONT><U><FONT
color=#000080 size=2>JDBCExceptionHelper.java:43</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at org.hibernate.jdbc.AbstractBatcher.executeBatch(</FONT><U><FONT
color=#000080 size=2>AbstractBatcher.java:249</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.hibernate.jdbc.AbstractBatcher.prepareStatement(</FONT><U><FONT
color=#000080 size=2>AbstractBatcher.java:92</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.hibernate.jdbc.AbstractBatcher.prepareStatement(</FONT><U><FONT
color=#000080 size=2>AbstractBatcher.java:87</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(</FONT><U><FONT
color=#000080 size=2>AbstractBatcher.java:218</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.hibernate.persister.entity.AbstractEntityPersister.insert(</FONT><U><FONT
color=#000080 size=2>AbstractEntityPersister.java:2159</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at
org.hibernate.persister.entity.AbstractEntityPersister.insert(</FONT><U><FONT
color=#000080 size=2>AbstractEntityPersister.java:2595</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at org.hibernate.action.EntityInsertAction.execute(</FONT><U><FONT
color=#000080 size=2>EntityInsertAction.java:51</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at org.hibernate.engine.ActionQueue.execute(</FONT><U><FONT
color=#000080 size=2>ActionQueue.java:248</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at org.hibernate.engine.ActionQueue.executeActions(</FONT><U><FONT
color=#000080 size=2>ActionQueue.java:232</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at org.hibernate.engine.ActionQueue.executeActions(</FONT><U><FONT
color=#000080 size=2>ActionQueue.java:139</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(</FONT><U><FONT
color=#000080 size=2>AbstractFlushingEventListener.java:298</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at
org.hibernate.event.def.DefaultFlushEventListener.onFlush(</FONT><U><FONT
color=#000080 size=2>DefaultFlushEventListener.java:27</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at org.hibernate.impl.SessionImpl.flush(</FONT><U><FONT
color=#000080 size=2>SessionImpl.java:1000</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at org.hibernate.impl.SessionImpl.managedFlush(</FONT><U><FONT
color=#000080 size=2>SessionImpl.java:338</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.hibernate.transaction.JDBCTransaction.commit(</FONT><U><FONT color=#000080
size=2>JDBCTransaction.java:106</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at org.hibernate.ejb.TransactionImpl.commit(</FONT><U><FONT
color=#000080 size=2>TransactionImpl.java:53</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>... 19 more</P>
<P align=left>Caused by: </FONT><U><FONT color=#000080
size=2>java.sql.BatchUpdateException</U></FONT><FONT color=#ff0000 size=2>:
Batch entry 0 insert into box (dataStatus, importLocalityMO, importSRID, box,
importedBox, id) values (123, TestImportMOBox, 32632, "BOX3D(101 102,203 204)",
"BOX3D(101 102,203 204)", 01c98a7a11be89d90111be89e9620010) was aborted. Call
</FONT><U><FONT color=#000080 size=2>getNextException</U></FONT><FONT
color=#ff0000 size=2> to see the cause.</P>
<P align=left>at
org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(</FONT><U><FONT
color=#000080 size=2>AbstractJdbc2Statement.java:2497</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at
org.postgresql.core.v3.QueryExecutorImpl$1.handleError(</FONT><U><FONT
color=#000080 size=2>QueryExecutorImpl.java:399</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.postgresql.core.v3.QueryExecutorImpl.processResults(</FONT><U><FONT
color=#000080 size=2>QueryExecutorImpl.java:1298</U></FONT><FONT color=#ff0000
size=2>)</P>
<P align=left>at
org.postgresql.core.v3.QueryExecutorImpl.execute(</FONT><U><FONT color=#000080
size=2>QueryExecutorImpl.java:347</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(</FONT><U><FONT
color=#000080 size=2>AbstractJdbc2Statement.java:2559</U></FONT><FONT
color=#ff0000 size=2>)</P>
<P align=left>at
org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(</FONT><U><FONT color=#000080
size=2>BatchingBatcher.java:48</U></FONT><FONT color=#ff0000 size=2>)</P>
<P align=left>at org.hibernate.jdbc.AbstractBatcher.executeBatch(</FONT><U><FONT
color=#000080 size=2>AbstractBatcher.java:242</U></FONT><FONT color=#ff0000
size=2>)</P>
<P>... 34 more</P></FONT></SPAN></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=349144921-04042007></SPAN></FONT> </DIV>
<DIV align=left>
<DIV align=left>
<DIV align=left><STRONG><FONT face=Arial color=#008080
size=4>SIEMENS<BR><BR></FONT><SPAN lang=EN-GB
style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Klaus Jank</SPAN></STRONG> <BR><SPAN
lang=EN-GB
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Technical
Liaison Manager Java</SPAN><SPAN lang=EN-GB
style="mso-ansi-language: EN-GB"><FONT size=2> </FONT></SPAN></DIV>
<P align=left><SPAN lang=EN-GB
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Siemens
Corporate Research, Inc.</SPAN><?xml:namespace prefix = st1 ns =
"urn:schemas-microsoft-com:office:smarttags" /><st1:address
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><st1:Street
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><FONT
size=2> <BR><SPAN lang=EN-GB
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Software
Engineering</SPAN></FONT></st1:Street></st1:address></P>
<P align=left><st1:address
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><st1:Street
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><FONT
size=2><SPAN lang=EN-GB
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: EN-GB"></SPAN></FONT></st1:Street></st1:address><st1:address
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><st1:Street
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><FONT
size=2><SPAN lang=EN-GB
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">755
College Road East</SPAN></FONT></st1:Street><FONT size=2> <BR><st1:City
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><SPAN
class=SpellE><SPAN
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">Princeton, NJ
08540</SPAN></SPAN></st1:City> <BR><st1:country-region
style="BACKGROUND-POSITION: left bottom; BACKGROUND-IMAGE: url(res://ietag.dll/#34/#1001); BACKGROUND-REPEAT: repeat-x"><SPAN
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">USA</SPAN></st1:country-region></FONT></st1:address><FONT
size=2> </FONT></P>
<P align=left><SPAN class=SpellE><SPAN lang=FR
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: FR"><A
href="mailto:klaus.jank@siemens.com">klaus.jank</SPAN></SPAN><SPAN lang=FR
style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: FR">@siemens.com</A><BR>+1
(609) 734 3581 (phone)<BR>+1 (609) 734-6565 (fax)<BR>+1
(650) 704 8746 (mobile)<BR><SPAN class=810113020-31082005><FONT
color=#000000><A
href="https://java.siemens.com/jtf/">https://java.siemens.com/jtf/</A></FONT>
(intranet)</SPAN></SPAN></P></DIV></DIV>
<DIV> </DIV></BODY></HTML>