Author |
Message |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/08/2006 23:22:25
|
saoj
Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline
|
Assim como o Mentawai possui conversores para converter os valores do input da action, estamos avaliando a possibilidade de introduzir formatadores para formatar os valores do output da action, para serem exibidos na view.
Primeiro problema:
Os conversores não foram feitos para validar valores que estão dentro de um objeto, mas sim valores que estão no input da action. Por exemplo: Se tenho o objeto Agenda com uma String minhdaData dentro desse objeto, não há como converter esse atributo do objeto agenda. Onde colocaríamos o valor convertido ???
O ideal seria que o objeto Agenda contivesse um java.util.Date ao invés de uma String, de forma que antes de injetar a data (via VOFilter) esse valor fosse convertido para um Date, ou seja, um ConverterFilter antes do VOFilter para converter isso.
Para formatadores teriámos o mesmo problema. Seria interessante usarmos o OVFilter que é o inverso do VOFilter, ou seja, pega todas as propriedades de Agenda e espalha no output. Uma vez no output seria mole converter.
Logo os formadores seriam exatamente como os conversores só que ao contrário. Seriam aplicados após a execução da action e formatariam valores no output da action, isto é, pegaria um java.util.Date no output e trocaria pelo String formatado.
O Robert já fez um esboço de como seria, basicamente seguindo o mesmo esquema da conversão e validação.
Interface Formattable, FormatterFilter e FormatFilter.
Alguém gostaria de sugerir e/ou comentar alguma coisa ???
|
Sergio Oliveira
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/08/2006 06:21:20
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Show
VELO
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 06:15:43
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Chefe....
Estou passando por uma situação em que os formatadores não iriam funcionar dessa forma que você está falando.
Imagina que ao invés de uma agenda eu tenha uma Coleção de agendas.... não tem como eu desmontar esse cara com o OVFilter, certo?
VELO
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 07:34:53
|
saoj
Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline
|
Explica melhor: vc tem uma lista de datas no output e quer formatar as datas ?
O que poderíamos fazer numa situação dessa que não seja criar um filtro apenas para isso ???
Uma hora ou outra vc vai ter que codificiar o seu próprio filtro, pois os filtros do mentawai não irão atender todos os cenários possíveis...
|
Sergio Oliveira
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 07:44:07
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Tipo, um formatador dar um forma num Date -> String.
Esse Date está dentro de um outro objeto uma Agenda q é o exemplo corrente.
Se o objetivo for mostrar uma Agenda na tela, eu uso o OVFilter pra colocar os campos da Agenda no Output e o FormaterFilter para converter o campo Date de Date para String. Nessa situação, blz, é tudo muito bom, é tudo muito legal.
Agora imagina comigo, o cenário é quase o mesmo, mas o kra não tem uma Agenda, e sim um ArrayList de Agenda.
O OVFilter não vai poder desmontar a Lista, certo?
VELO
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 07:48:31
|
saoj
Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline
|
Não. Se o cara tá passando uma lista no output é porque ele quer mostrar a lista no view via mtw:list or something...
Se vc quiser formatar os elementos dessa lista, então vc provavelmente vai ter que fazer um filtro específico para isso, acredito eu..
|
Sergio Oliveira
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 07:54:47
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Bom, eu ainda acho que o formatador tem que ser aplicado sobre a tag <mtw:out /> e não sobre o output. Pois na tag não tem como escapar....
Marvin
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 08:37:15
|
saoj
Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline
|
Se o formatador for aplicado na tag mtw:out, então como ele será configurado na action / applicationmanager ???
|
Sergio Oliveira
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 08:40:25
|
boaglio
![[Avatar]](/images/avatar/3416a75f4cea9109507cacd8e2f2aefc.jpg)
Joined: 28/09/2005 11:05:16
Messages: 299
Location: Sao Paulo - Brazil
Offline
|
velo wrote:
Bom, eu ainda acho que o formatador tem que ser aplicado sobre a tag <mtw:out /> e não sobre o output. Pois na tag não tem como escapar....
Marvin
Eu uso JSTL para resolver esse problema, algo assim:
Code:
<fmt:formatDate value="${lista.data}" pattern="dd/MM/yyyy - hh:mm:ss" type="date"/>
|
http://www.boaglio.com
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 08:50:57
|
ranophoenix
![[Avatar]](/images/avatar/903ce9225fca3e988c2af215d4e544d3.jpg)
Joined: 19/07/2006 14:11:34
Messages: 158
Offline
|
Para listagem de dados concordo com o boaglio, o JSTL resolve o problema.
Penso que o maior uso dessa nova feature do Menta vai ser na apresentação de dados em formulários. Daí seria como o Sérgio falou acima.
E caso realmente fosse necessário adicionar um formatador na tag mtw:out, poderia ser através de um atributo formatter que usaria qualquer classe que implementasse Formatable. Ou seja, a mesma classe que serviria para formatar na action, serviria para formatar na view. Seria opção do desenvolvedor.
|
www.duallweb.com  |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 08:51:39
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Sabe me dizer se o JSTL tem alguma coisa pra formatar enumerations?
VELO
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 08:54:31
|
saoj
Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline
|
E caso realmente fosse necessário adicionar um formatador na tag mtw:out, poderia ser através de um atributo formatter que usaria qualquer classe que implementasse Formatable. Ou seja, a mesma classe que serviria para formatar na action, serviria para formatar na view. Seria opção do desenvolvedor.
Excelente !!!!
E para o caso de formatar uma lista de datas ???
Só um filtro próprio mesmo né ? Ou outra idéia ?
|
Sergio Oliveira
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 08:58:34
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Bom, se seguir essa ideia de colocar o formatador na tag, nem precisa se stressa, o usuario soh precisaria usar o out com o formatador....
Acho que resolve o problema das listas tbm.
VELO
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/08/2006 09:42:49
|
ranophoenix
![[Avatar]](/images/avatar/903ce9225fca3e988c2af215d4e544d3.jpg)
Joined: 19/07/2006 14:11:34
Messages: 158
Offline
|
Code:
Bom, se seguir essa ideia de colocar o formatador na tag, nem precisa se stressa, o usuario soh precisaria usar o out com o formatador....
Acho que resolve o problema das listas tbm.
É isso aí!
|
www.duallweb.com  |
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/08/2006 09:53:27
|
velo
![[Avatar]](/images/avatar/7f39f8317fbdb1988ef4c628eba02591.jpg)
Joined: 16/02/2006 13:33:54
Messages: 1197
Location: Jaraguá do Sul - SC
Offline
|
Tava vendo como isso eh feito com JSF
Code:
<h:inputText value="#{vo.dtImplantacao}" maxlength="10"
required="false" converter="javax.faces.DateTime" />
|
_____________________________________
Mentawai Developer
"When the only tool you have is a hammer, everything looks like a nail"
http://en.wikipedia.org/wiki/Golden_hammer |
|
 |
|