Recent Posts
Archives

Posts Tagged ‘Java’

PostHeaderIcon Lenteurs sur FireFox 3.5

Je fais partie des premiers utilisateurs de FireFox, a la vieille epoque ou celui-ci se nommait Phoenix ou FireBird. J’ai rarement eu a me plaindre, sauf lorsque j’ai installe la derniere version 3.5.

En effet, FireFox “freezait” et connaissait beaucoup de ralentissements, sur de simples pages HTML toutes basiques. Apres avoir parcouru les forums, il s’avere que deux solutions existent:

  • la plus propre, mais longue: creer un nouveau profile.
  • dans les options, desactiver Java.

J’ai tente la premiere, le navigateur “a vide” carbure, mais apres avoir perdu toutes mes configs personnelles j’ai prefere tenter la seconde. La browser va beaucoup mieux, mais en toute honnetete ca reste un peu lent par rapport a FireFox 3.1.

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