AjaxTags e DisplayTag

9 respostas
Pedrosa

Olá estou tentando fazer uma paginação ajax com a displaytag e ajaxtag, a paginação funciona perfeitamente, porem quando uso o recurso do order by está submetendo a página normalmente, o que preciso adaptar para o order by não submeta a página?

<%@ taglib uri="http://ajaxtags.org/tags/ajax" prefix="ajax" %>
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix = "fmt" uri = "http://java.sun.com/jsp/jstl/fmt"%> 
<jsp:useBean id="now" class="java.util.Date"/>

<%@page isELIgnored="false"%>
<link href="css/screen.css" rel="stylesheet" type="text/css">
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/prototype.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/scriptaculous/scriptaculous.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/overlibmws/overlibmws.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/overlibmws/overlibmws_crossframe.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/overlibmws/overlibmws_iframe.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/overlibmws/overlibmws_hide.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/overlibmws/overlibmws_shadow.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/ajax/ajaxtags.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/ajax/ajaxtags_controls.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/js/ajax/ajaxtags_parser.js"></script>
   Date: ${now}
	<ajax:displayTag id="displayTagFrame" ajaxFlag="displayAjax" >
		<display:table requestURI="MinhaServlet?action=minhaAcao" name="${cadastros}" uid="cadastros" export="false" class="simple" pagesize="10" defaultsort="1" defaultorder="descending" excludedParams="ajax">
			<display:column sortable="true" title="Usuario" headerClass="sortable">${cadastros.usuario.nmusuari}</display:column>
			<display:column sortable="true" title="CPF" headerClass="sortable">${cadastros.usuario.cdcodcpf}</display:column>
			<display:column sortable="true" title="RG" headerClass="sortable">${cadastros.usuario.cdnumerg}</display:column>
			<display:column sortable="true" title="Data de Nascimento" headerClass="sortable"><fmt:formatDate value='${cadastros.usuario.dtnascim}' pattern='dd/MM/yyyy'/></display:column>
			<display:column>alterar Data: ${now}</display:column>
		</display:table>
	</ajax:displayTag>

9 Respostas

articof

Pedrosa,
Eu tenho o mesmo problema postado ontem, o meu problema está com um formulario onde uso o jquery e ajax para coloca-lo com $("#div).load() dentro de da

.
Como vc insere o ajaxtag na pagina ?
Vamos torcer por algum colega ai que ajude a gente.
Falou

Fabián

alessandrasch

Olá!!!

Tive o mesmo problema, mas foi resolvido corrigindo a requestURI. Esta deve ser a mesma que chamou a geração da displayTag.

Verifica aí… talvez seja isso.

Flw!

Pedrosa

Faço a chamada da página da mesma forma que está no requestURI:

requestURI="MinhaServlet?action=xpto"
Pedrosa

Resolvido adicionei as seguintes linhas:

<jsp:useBean id="cadastro" class="br.com.pedrosa.dao.ClasseDAO"/>
<c:set var="contextPath" scope="request">${pageContext.request.contextPath}</c:set>

E na chamada da displaytag:

<display:table name="pageScope.cadastro.xptp" class="displaytag" pagesize="10"  
    defaultsort="1" defaultorder="descending" export="true" id="cadastros" excludedParams="ajax">
Pedrosa

Porém agora me deparo com outra situação, do jeito anterior acessava pela Servlet que controlava a sessao agora acesso diretamente pelo JSP, como impedir pessoas não autorizadas acessem o recurso?, seria o caso prático dos filtros ou existe uma alternativa mais eficaz?

articof

Não é recomendado acessar diretemante nos JSP (vulnerabilidade no sistema), tem que ser solicitadas no servidor. Use os Interceptor do vraptor para a validação das requisicões, é muito fácil e seguro.
De uma olhada na apostila do Caelum, tem um exemplo ótimo.

Pedrosa

Conheço o VRaptor porém ainda não posso adotá-lo, estamos trabalhando com um framework caseiro e preciso adaptar enquanto não migramos.

articof

ok, infelizmente eu não conheço como validar o acesso ao jsp direto, a não ser com javascript.

Pergunta, vc conhece qual é a melhor tecnologia para trabalhar com Ajax-VRaptor (o jquery ou um tal de prototype, date.js, etc.) eu estou batendo a cabeça, o jquery funciona ok, porem na paginação do display-tag não entra a response dentro do div ajax. e com o prototype não consegui faze-lo funcionar com o IE 7.

Falou

S

Usa Filter…

Criado 13 de fevereiro de 2008
Ultima resposta 15 de fev. de 2008
Respostas 9
Participantes 4