Tutorial Mentawai #9 – Tags

Padrão

Olá pessoal!

O Mentawai nos fornece várias tags JSP que funcionam de forma integrada ao framework. Dessa forma, fica mais simples obter os dados dos formulários, ou mesmo montar a sua página de acordo com o resultado de uma action.

Por exemplo, para a montagem de formulários, é possível utilizar, por exemplo, as seguintes tags:

&lt;mtw:form action=&quot;Adicionar.mtw&quot; method=&quot;post&quot;&gt;<br />
    Nome: &lt;mtw:input type=&quot;text&quot; name=&quot;nome&quot; size=&quot;50&quot; maxlength=&quot;60&quot; /&gt;<br />
    Grupo: &lt;mtw:select name=&quot;grupo&quot; list=&quot;grupos&quot; emptyField=&quot;true&quot; /&gt;<br />
    Usuário: &lt;mtw:input type=&quot;text&quot; name=&quot;usuario&quot; size=&quot;20&quot; maxlength=&quot;30&quot; /&gt;<br />
    Senha: &lt;mtw:input type=&quot;password&quot; name=&quot;senha&quot; size=&quot;20&quot; maxlength=&quot;20&quot; /&gt;<br />
    Confirme a Senha: &lt;mtw:input type=&quot;password&quot; name=&quot;confirmacao&quot; size=&quot;20&quot; maxlength=&quot;20&quot; /&gt;<br />
    Zip: &lt;mtw:input type=&quot;text&quot; name=&quot;zip&quot; size=&quot;20&quot; maxlength=&quot;20&quot; /&gt;<br />
    Aceita os termos?: &lt;mtw:input type=&quot;checkbox&quot; name=&quot;aceitacao&quot; value=&quot;1&quot; /&gt;<br />
    &lt;input type=&quot;submit&quot; value=&quot;Cadastrar&quot; /&gt;<br />
&lt;/mtw:form&gt;

Como pode ser percebido, as tags se assemelham muito às tags padrão do HTML. A ideia é exatamente essa. Um detalhe interessante, é na tag mtw:select, que possui um atributo list. Nesse caso em questão, para carregar o formulário corretamente, o Mentawai espera na output uma Collection na output, sob o nome de grupos. O Mentawai se encarregará de popular as opções do select. Um artifício interessante é montar essa lista utilizando um Map de Strings e Integer, colocando Strings no formulário e obtendo inteiros na hora de pegar o valor selecionado dentro da action.

Falando em listas, caso você queira listar o conteúdo de uma lista (Collection) na sua página, você pode utilizar as tags de repetição do Mentawai. Vamos supor que temos uma lista chamada carros na input da página.

&lt;mtw:list value=&quot;carros&quot;&gt;</p>
<p>Carros disponíveis<br />
&lt;mtw:isEmpty&gt;<br />
   Nenhum carro disponível<br />
&lt;/mtw:isEmpty&gt;</p>
<p>&lt;mtw:loop var=&quot;c&quot;&gt;<br />
    Modelo: &lt;mtw:out value=&quot;c.modelo&quot; /&gt;<br />
    Fabricante: &lt;mtw:out value=&quot;c.fabricante&quot; list=&quot;fabricantes&quot; /&gt;<br />
    Ano: &lt;mtw:out value=&quot;c.ano&quot; /&gt;<br />
&lt;/mtw:loop&gt;</p>
<p>&lt;/mtw:list&gt;

Apenas reforçando, para a correta exibição da listagem, há a necessidade de que uma lista chamada fabricantes esteja na input da página.

Finalizando, é possível também criar tags de condição dentro da JSP, facilitando na hora de montar páginas personalizadas de acordo com o conteúdo da saída de uma action.

&lt;mtw:if test=&quot;usuario.admimistrador&quot; value=&quot;true&quot;&gt;<br />
   Você é um administrador! &lt;br/&gt;<br />
&lt;/mtw:if&gt;</p>
<p>&lt;mtw:if test=&quot;resultado.status&quot; value=&quot;2&quot;&gt;<br />
    O seu status está pendente. Cheque a sua conta por favor!<br />
&lt;/mtw:if&gt;</p>
<p>&lt;mtw:if test=&quot;cidade&quot; value=&quot;Pouso Alegre&quot;&gt;<br />
    Opa! Você é de Pouso Alegre?<br />
&lt;/mtw:if&gt;

Bom pessoal, é isso! Até a próxima!