Wednesday, October 17, 2012

Quick post with some bullet points of lessons learned during my last (and first) Seam project:

Seam 2.2

Hibernate 3.3.1

JEE 5

EJB 3.0

JSF 1.2

Richfaces 3.3

JBoss 5.1

Drools 5

SQLServer 2008

MySql 5.x

TestNG

Hudson

Seam
- To have a navigation for a method with a parameter like exportSelected(String value): see Seam navigation based on a function with parameters
- If your Seam app keeps re-deploying (restarting) when using JBoss within Eclipse: delete all files that end with 'dia' in your WEB-INF dir. See: Seam keeps redeploying
For example, I modified pages.xml, which apparently created a pagesdia (or similar) file... after removing that one, it worked fine again.

MySql
- To see data in better format in MySQL: show engine innodb status\G (so add the \G to a query)

Hibernate/JPA
- NamedQueries are loaded and parsed at startup time, so that's an advantage above em.createQuery() which are only parsed and evaluated at runtime. So with NamedQueries you get the errors sooner.

Make sure your definition has all the cells merged that contain a condition! For example, check the red arrow pointing at the border of the cells between G9 and H9.

The last cell for the condition Prefab is not merged (i.e one cell) with all the other conditions.
Here's now how it should be: see again the red arrow, there's no cell separation anymore, all condition columns are now merged into 1 cell.

- A space in a condition in a decision spreadsheet can cause a non-match! E.g GATE VALVE is not matched. Fixed it by always replacing a ' ' with an '_'.

No comments:

About Me

I'm a professional software designer/architect/developer with over 20 years of experience. For many years I've been a Technical Team Lead for complex ICT projects. My main area of focus is Java application architectures and related challenges (scalability, performance etcetera), but I'm interested in any software application architecture. Currently Android has got a lot of my attention. I will be posting lessons learned, and lessons that I'll be learning during the coming years :-)