Seam, em resumo, ele é inspirado nos
seguintes princípios:
1- Seam define um contexto uniforme para toda a lógica
de negócios da sua aplicação. Os componentes Seam são POJOs (Plain Old
Java Objects), ou seja, possuem um desenho simplificado em contraposição
ao EJBs. Entretanto, Seam possui forte integração com EJB 3.0 e suporta os
tipos de componentes: sessions beans (stateful e stateless),
entity beans, message-driven beans, JavaBeans e Spring
Beans;
2 - Não há distinção entre os componentes da camada de
apresentação e da lógica de negócios. Por exemplo, o Seam se diferencia de
outros frameworks como o Struts, onde temos que criar um componente
responsável por cada camada do MVC. No entanto, você não precisa se sentir
forçado a usar este tipo de arquitetura em camadas que o Seam oferece.
Você pode perfeitamente usar o Seam em conjunto com outros frameworks, como o Spring;
Artigo Java Magazine 72 - Boas práticas com JBoss Seam http://www.devmedia.com.br/artigo-java-magazine-72-boas-praticas-com-jboss-seam/14294#ixzz3lRzJlg3k