jtalr
Agosto 4, 2005, 10:12am
#1
Pessoal criei uma nova tag para desenhar arvore de dados, agora tenho um problema no nó folha preciso pegar o que o usuario inserir no corpo da tag, por exemplo:
<c:leaf bgcolor=ffffff>
<table>
<tr><td>Ola pessoas</td></tr>
<tr><td>Isso eh uma tabela</td></tr>
</table>
</c:leaf>
Nesse caso preciso pegar essa tabela inserida na tag e colocar ela na arvore, contudo não estou conseguindo capturar a string da tabela. A classe LeafTag extende de UIComponetBodyTag, e quando cato o BodyContent ele me retorna null.
Alguem pode me ajudar?
jtalr
Agosto 5, 2005, 2:46pm
#2
Por favor, alguem faz ideia…
Criei outro componente para fazer tabelas
Sintax:
<c:table>
<c:tr>
<c:td> Ola </c:td>
<c:td> Celula 2 </c:td>
</c:tr>
<c:table>
Ai ele não cata os valores Ola e Celula 2…
Aguem me ajude, por favor.
Bem, capturar o corpo da tag é bem fácil usando tag files.
Veja um tutorial que eu fiz em http://www.portaljava.com/home/modules.php?name=Content&pa=showpage&pid=137
jtalr
Agosto 5, 2005, 4:15pm
#4
[quote=carneiro]Bem, capturar o corpo da tag é bem fácil usando tag files.
Veja um tutorial que eu fiz em http://www.portaljava.com/home/modules.php?name=Content&pa=showpage&pid=137 [/quote]
Vi o seu tutorial, contudo a tecnologia que uso é JSF, vc não teria algum tutorial para capturar o corpo de uma tag em JSF?
jtalr
Agosto 8, 2005, 9:47am
#5
Alguem me ajude aki… será o benedito que não tem como capturar o corpo de uma tag… jah soluções do tipo usar a tag verbatim, mas nao ta funcionando, alguem faz alguma ideia?
jtalr
Agosto 8, 2005, 12:05pm
#6
BEM PESSOAL APESAR DE NINGUEM TER RESPONDIDO EU ENCONTREI UMA SOLUÇÃO E VOU POSTAR AKI.
A solução foi usar a tag verbatim do core. Essa tag cria um componente UIOutput que vc poderá manipular da forma que quiser, sendo assim, a estrutura do meu componente ficou:
<c:arvore id="raiz" background="33FF33" childrenColummSize="<%=childrenColummSize%>" rootHeader="<%=rootHeader%>"
rootColummSize="<%=rootColummSize%>" rootHeaderBackground="339933" nodeHeader="<%=nodeHeader%>"
nodeHeaderBackground="3333FF" colummDescricao="<%=colummDescricao%>">
<c:node id="no1" colummDescricao="<%=colummDescricao1%>">
<c:node id="id11" colummDescricao="<%=colummDescricao11%>"/>
</c:node>
<c:node id="no2" colummDescricao="<%=colummDescricao2%>" />
<c:node id="no3" colummDescricao="<%=colummDescricao3%>">
<c:node id="id31" colummDescricao="<%=colummDescricao31%>"/>
<c:node id="id32" colummDescricao="<%=colummDescricao32%>">
<c:node id="id321" colummDescricao="<%=colummDescricao321%>"/>
</c:node>
<c:leaf id="folhanodeteste">
<f:verbatim>
<table bgcolor="3399FF"><tr><td>Teste no</td></tr></table>
</f:verbatim>
</c:leaf>
</c:node>
<c:leaf id="folhasarvore">
<f:verbatim>
<table bgcolor="3399FF"><tr><td>Teste arvore</td></tr></table>
</f:verbatim>
</c:leaf>
</c:arvore>
Gerando como resultado:
<table border='0' width=100%>
<tr><td></td>
<td bgcolor='339933' width='15%'>Primeira</td>
<td bgcolor='339933' width='15%'>segunda</td>
<td bgcolor='339933' width='35%'>terceira</td>
<td bgcolor='339933' width='35%'>Quarta</td>
</tr>
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:raiz');"></td>
<td bgcolor='33FF33'>Nossa</td>
<td bgcolor='33FF33'>Mae</td>
<td bgcolor='33FF33'>Esse negocio</td>
<td bgcolor='33FF33'>Funciona mesmo</td>
</tr>
<tr>
<td></td><td colspan='5'>
<table border='0' width=100% id=_id0:raiz style="display:none">
<tr><td></td>
<td bgcolor='3333FF'>Node header um</td>
<td bgcolor='3333FF'>Node header dois</td>
</tr>
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:no1');"></td>
<td width='50%'>Pai</td>
<td width='50%'>Mae</td>
</tr>
<tr>
<td></td><td colspan='2'>
<table border='0' width=100% id='_id0:no1' style="display:none">
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:id11');" disabled></td>
<td >Teste papai Nossa</td>
</tr>
</table>
</td>
</tr>
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:no2');" disabled></td>
<td width='50%'>Tio</td>
<td width='50%'>Tia</td>
</tr>
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:no3');"></td>
<td width='50%'>Vô</td>
<td width='50%'>Vó</td>
</tr>
<tr>
<td></td><td colspan='2'>
<table border='0' width=100% id='_id0:no3' style="display:none">
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:id31');" disabled></td>
<td >Soh vovô faz</td>
</tr>
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:id32');"></td>
<td >Soh vovó faz</td>
</tr>
<tr>
<td></td><td colspan='1'>
<table border='0' width=100% id='_id0:id32' style="display:none">
<tr><td width=2%><input type=button value="+" onclick="showhidecell('_id0:id321');" disabled></td>
<td >E ainda faz mais.</td>
</tr>
</table>
</td>
</tr>
<tr><td></td><td colspan='1'><table border='0' width=100% id='_id0:folhanodeteste' style="display:block">
<tr><td><table bgcolor="3399FF"><tr><td>Teste no</td></tr></table></td></tr></table></td></tr>
</table>
</td>
</tr>
<tr><td></td><td colspan='3'><table border='0' width=100% id='_id0:folhasarvore' style="display:block">
<tr><td><table bgcolor="3399FF"><tr><td>Teste arvore</td></tr></table></td></tr></table></td></tr>
</table>
Grato pela ajuda de todos, espero que ninguem mais se atrapalhe com isso.