iberck
9/9/2015 - 1:33 PM

Componentes base

Componentes base

t:container

No renderiza nada, solo sirve para poder armar un documento xhtml válido (ya que se necesita una raíz).

Actionlink or eventlink

Ambos componentes sirven para lo mismo, eventlink se basa en un nombre de evento mientras que actionlink en el id de un componente. Se recomienda el uso de eventlink contra actionlink ya que eventlink no obliga de actionlink a que haga match el evento con una etiqueta en el template.

Cómo crear un eventlink

@Inject
private ComponentResources resources;

public Object createEventLink() {
    Link link = resources.createEventLink("play");
    return link.toAbsoluteURI();
}

void onPlay() {
}

Enviar una página con un contexto

@Inject
  private PageRenderLinkSource pageRenderLinkSource;
  @Inject
  private Response response;

  void onEditUser(Integer idUser) throws IOException {
      EUser usr = userManager.findUserById(idUsr);
      if (usr.isPollster()) {
          Link link = pageRenderLinkSource.
                  createPageRenderLinkWithContext(PollsterNewEdit.class, new Object[]{idUser});
          response.sendRedirect(link);
      }
  }

Referencia

Tapestry jumpstart