Tapestry/Seam Integration

Provides integration between Tapestry and Seam, allowing Seam components to be injected into and outjected from Tapestry pages and components.

Download

To get the latest snapshot (and probably unstable) release, just add a dependency to it in your pom.xml. The snapshots are available on http://tacos.sourceforge.net/nightly/.

<dependency>
    <groupId>net.sf.tacos</groupId>
    <artifactId>tacos-seam-core</artifactId>
    <version>5.0.0-SNAPSHOT</version>          
</dependency>

web.xml changes

First, add SeamListener to your web.xml. SeamListener is responsible for initialization and cleanup of a Seam application and session contexts.

<listener>
    <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
</listener>

Secondly, put TapestrySeamFilter before TapestryFilter.

<filter>
    <filter-name>Tapestry Seam Filter</filter-name>
    <filter-class>net.sf.tacos.seam.TapestrySeamFilter</filter-class>
</filter>

<filter-mapping>
    <filter-name>Tapestry Seam Filter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

Seam component deployment descriptor:

Seam does not require components to be configured in XML files. The only XML file required by Seam is components.xml. For example you can use this file to configure Hibernate (Please read here). The file components.xml should be place in the WEB-INF directory. A simple example of components.xml is:

<components xmlns="http://jboss.com/products/seam/components"
        xmlns:core="http://jboss.com/products/seam/core"
        xmlns:persistence="http://jboss.com/products/seam/persistence"
        xmlns:security="http://jboss.com/products/seam/security"
        xmlns:transaction="http://jboss.com/products/seam/transaction"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation=
            "http://jboss.com/products/seam/core http://jboss.com/products/seam/core-2.0.xsd 
             http://jboss.com/products/seam/persistence http://jboss.com/products/seam/persistence-2.0.xsd
             http://jboss.com/products/seam/security http://jboss.com/products/seam/security-2.0.xsd
             http://jboss.com/products/seam/transaction http://jboss.com/products/seam/transaction-2.0.xsd
             http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.0.xsd">
    
    <core:manager conversation-timeout="60000"/>
</components>

Remoting

If your are going to use Seam Remoting, read Seam Remoting.