Seleccionar página

Voy a poner la equivalencias entre las anotaciones más comunes que se usan en Seam2 y lo que hay que usar en Seam3:

@Name(“xxx”)

@Named (Cogería el nombre de la clase poniendo la primera letra en minuscula)
@Named(“xxx”)

@Scope(ScopeType.SESSION)

@SessionScoped

@Scope(ScopeType.REQUEST)

@RequestScoped

@Scope(ScopeType.CONVERSATION)

@ConversationScoped

@In

@Inject

@Factory

@Produce

@Begin/@End

Desaparecen y se hace por código :

@Inject Conversation conversation;
conversation.begin() / conversation.end()

@In StatusMessages

– Ahora una Messages API

import org.jboss.seam.international.status.Messages;
...
@Inject
Messages messages;
...
messages.info("Esto es un mensaje de tipo {0}.","INFO");

Si es de un fichero de idioma:

messages.warn(new BundleKey("org.jboss.seam.faces.exampleBundle", "messageKey"), "unique");
...
messageKey=This {0} parameter is not so {0}, see?

@Startup

Esto sirve para ejecutar algo o cargar algo al desplegarse la aplicación.

public void onStartup(@Observes @Started WebApplication webapp) {
...
}