Exercícios avançados sobre transformações e estratégias
Roteiro de Exercícios
- Baixe o projeto para a aula de hoje;
- Importe o projeto no Eclipse;
- Baixe a documentação do xml-front. Ele servirá para consultas na linguagem de XML;
- A partir de entity, crie uma transformação em Stratego para gerar um formulário HTML. O formulário deverá conter uma tabela com duas colunas e cada linha da tabela deve representar uma propriedade de entity. Assim, na primeira coluna deve aparecer o nome da propriedade a na segunda coluna um elemento do formulário HTML. Considere dois tipos: String (que gera um TextField) e Estados (que gera um Combobox com os estados do nordeste brasileiro). Exemplo, a entity
entity Pessoa {
nome : String
estadoDeOrigem : Estados
}
deve gerar algo como
<html>
<head><title>Cadastro de Pessoa</title></head>
<body>
<form>
<table>
<tr>
<td>nome</td>
<td><input type="text" name="nome"/></td>
</tr>
<tr>
<td>estados</td>
<td>
<select name="estados">
<option value="1">AL</option>
<option value="2">PE</option>
</select>
</td>
</tr>
</table>
</form>
</body>
</html>
- Estenda a transformação para dar suporte a propriedade do tipo Sexo. Desta forma, um Radiobutton deve ser gerado com as opções Masculino e Feminino.
- Estenda a transformação para que, dado qualquer outro tipo de propriedade, um TextField seja gerado.
- Para acessar a documentação de pretty printing do Stratego, clique aqui .
- Documentação dos operadores transversais de Stratego aqui .
--
PaolaAccioly - 04 May 2010
--
PauloBorba - 04 May 2010
--
MarcioRibeiro - 18 Sep 2009
--
MarcioRibeiro - 17 Sep 2009