I've been playing around with Seam Forge since it was announced and am growing increasingly impressed with its quality and functionality as it evolves towards a 1.0.0.Final release.

 

I wanted to use Seam Forge Beta5 to back port an existing Seam 2 application - mainly the entities and actions from the Seam 2 application and using Seam Forge for the scaffolding.

 

Then I ran into an interesting problem - I was seeing this exception when accessing one of my entities that had a composite key;

 

18:32:50,646 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/kannelbiller].[FacesServlet]] (http--127.0.0.1-8080-2) Servlet.service() for servlet FacesServlet threw exception: java.sql.SQLException: Operand should contain 1 column(s)

    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) [mysql-connector-java-5.1.18.jar:]

 

This rang a bell and sure enough some more digging threw up an interesting snippet from the JBoss  5.1.1 documentation;

 

 

https://issues.jboss.org/browse/JBPAPP-5590

 

Seam Forge does not do as Seam 2 does and work around the HIbernate issue.

 

However the good news is that this issue is resolved in HIbernate 4.0.0.Final which is in the JBoss 7.1.CR1b release. The bug fix or enhancement if you prefer actually made it into Hibernate 4.0.0.CR4 but unfortunately JBoss 7.0.2 uses CR2.


See https://hibernate.onjira.com/browse/HHH-5419 for details.