Bijection of Seam components

To inject a Seam component you may use the @In annotation.

@In  
private User _user;

If you want to outject your component back to the context, please use @Out annotation.

@Out
private User user;

Since @Out@Out requires non-null value, you can make Seam to create an instance of the component if there is none existing instance by using @In(create=true)

@In(create=true) @Out
private User user;

Furthermore you can inject the value of an expression:

@In("#{user.username}")
public String _username();

Expression language

The el binding prefix allows you to use EL expressions in Tapestry templates.

${el:user.getUsername()}