Recent Posts
Archives

Posts Tagged ‘Java’

PostHeaderIcon Utiliser des enum de Java5 avec Hibernate

Lorsque la gestion du typage d’une base de donnees relationnelle est confiee a Java et Hibernate, il est souvent frustrant de perdre la securite induite par les enum de Java 5. Voici comment reconcilier Hibernate et les enum.

Read the rest of this entry »

PostHeaderIcon How to launch a single Unit Test with Maven 2?

Use this:

mvn -Dtest=MyPersonnalUnitTest test

(unlike with Maven 1, you do not need specify the complete package name!)

PostHeaderIcon Read the byte-code of a Java compiled class

Use this:

javap -c myClass

(do not mention .class)

PostHeaderIcon XAException: JDBC driver does not support XA, hence cannot be a participant in two-phase commit

Error:

MyStrutsAction     - Error on uploading: MyPersonnalClass@971720[primaryId=<null>,type=XXX,myDate=20080702,entityId=<null>,optimisticTimestamp=<null>] org.springframework.remoting.RemoteAccessException: Could not access remote service [my-service-bean]; nested exception is javax.transaction.TransactionRolledbackException: BEA1-0F416BB49A8BE6353E83: javax.transaction.xa.XAException: JDBC driver does not support XA, hence cannot be a participant in two-phase commit. To force this participation, set the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = myDatasource

Fix:

  • Go on WebLogic console
  • Then follow the pages: Home > Summary of JDBC Data Sources > myDatasource > Transactions
  • Uncheck:One-Phase Commit
  • Check: Emulate Two-Phase Commit

PostHeaderIcon NoClassDefFoundError: com/sun/corba/se/connection/ORBSocketFactory

Error

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jmsQueueConnectionFactory' defined in class path resource MyResourceApplicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: com/sun/corba/se/connection/ORBSocketFactory

Fix: In the classpath, replace Weblogic 8.X jars with Weblogic 9.2 jars

PostHeaderIcon org.hibernate.hql.antlr.HqlBaseParser.recover(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V

Error:

java.lang.reflect.UndeclaredThrowableException at $Proxy0.createQuery(Unknown Source) at somewhere in some Hibernate DAO... at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.hibernate.context.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:301) ... 26 more Caused by: java.lang.NoSuchMethodError: org.hibernate.hql.antlr.HqlBaseParser.recover(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V

Fix: Upgrade AntLR from version 2.7.2 to 2.7.6

PostHeaderIcon org.objectweb.asm.ClassWriter.

On calling:

MockClassControl.createStrictControl(Toto.class);

Error:

java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V

Fix: add a dependency to cglib-full-2.0.2.jar before the other dependencies.

PostHeaderIcon ids for this class must be manually assigned before calling save()

Error:

javax.ejb.EJBException: EJB Exception: : org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save():

Fix: You must assign the primary-key (which is probably a composite-id) before saving the object.

PostHeaderIcon java.lang.NullPointerException at org.dbunit.dataset.DefaultTableIterator.next

Still another dumb error:

java.lang.NullPointerException at org.dbunit.dataset.DefaultTableIterator.next(DefaultTableIterator.java:59)  at org.dbunit.dataset.AbstractDataSet.getTable(AbstractDataSet.java:77)  at org.dbunit.dataset.AbstractDataSet.getTableMetaData(AbstractDataSet.java:70)  at org.dbunit.dataset.filter.SequenceTableFilter.getTableNames(SequenceTableFilter.java:94)  at org.dbunit.dataset.filter.SequenceTableFilter.iterator(SequenceTableFilter.java:110)  at org.dbunit.dataset.FilteredDataSet.createIterator(FilteredDataSet.java:74)  at org.dbunit.dataset.AbstractDataSet.iterator(AbstractDataSet.java:112)  at org.dbunit.operation.DeleteAllOperation.execute(DeleteAllOperation.java:81)

I’m laughing because I had only to check the DBUnit XML file did start with <dataset> tag… :-S

PostHeaderIcon javax.xml.stream.FactoryConfigurationError: Provider com.bea.xml.stream.MXParserFactory not found

Here is the stacktrace I have had this morning:

 javax.xml.stream.FactoryConfigurationError: Provider com.bea.xml.stream.MXParserFactory not found   at javax.xml.stream.FactoryFinder.newInstance(FactoryFinder.java:72)   at javax.xml.stream.FactoryFinder.find(FactoryFinder.java:176)   at javax.xml.stream.FactoryFinder.find(FactoryFinder.java:92)   at javax.xml.stream.XMLInputFactory.newInstance(XMLInputFactory.java:136)

To solve it, I had to add following jars to my lib/ folder:

  • wls-stax-1.0.jar
  • wls-jsr173-1.0-ri.jar