Jsp + JavaScript [Resolvido]

3 respostas
aszarael

Boa tarde Senhores

estou montando uma jsp, que ira montar um treeview, na tela.
Fiz um teste e salvando em html o mesmo funciona, porem quando coloco em jsp e faço a criação dinamica por um metodo,
o mesmo não funciona.

Segue os codigos:

Jsp de Consulta, onde será montada a Treeview :
<%@page import="banco.operacoes"%>
<%@page import="funcoes.especializados"%>
<%@page import="funcoes.funcionalidades"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.io.PrintWriter"%>

<%@ page info="Sistema Arquivo Fácil - 2012"%>
<%@ page language="java"%>
<%@ page contentType="text/html"%>
<%@ page session="true"%>
<html>
<head>
<title></title>
 <script language="javascript" type="text/javascript" src="jquery-1.4.1.js"></script>
  <style type="text/css">  
   @import url(styles.css);  
   .wfm { width:500px }
   .expand { width:30px;height:15px; }
   .collapse { width:30px;height:15px;display:none }
  </style>
<meta http-equiv=content-type charset=ISO-8859-1 />
</style>
</head>
<body>
<div id="container">
<div id="nav"> 
 <ul>
  <h2><a HREF="index.jsp">Sair</a></h2>
 </ul>
</div>
<%
 String vUsuario = (String) session.getAttribute("SessionUsuario");
 String vSenha   = (String) session.getAttribute("SessionSenha");
 String vEmpresa = (String) session.getAttribute("SessionEmpresa");
 String vTabela	 = "USUARIO";
 
 if (vUsuario != null){
 	vUsuario		 = vUsuario.toUpperCase(); 
 }
 
 if (vSenha != null){
	 vSenha		 = vSenha.toUpperCase(); 
 }

 if (vEmpresa != null){
	 vEmpresa		 = vEmpresa.toUpperCase(); 
 }
 
 session.setAttribute("SessionUsuario" , vUsuario);
 session.setAttribute("SessionSenha"   , vSenha);
 session.setAttribute("SessionEmpresa" , vEmpresa);
 session.setAttribute("SessionTabela"  , vTabela);
 
 operacoes op = new operacoes();
 op.setTabela(vTabela);
 especializados esp = new especializados();
 vUsuario = vUsuario.toUpperCase();
 String vCondicao = " NOM_LOGIN = '"+vUsuario+"' AND COD_SENHA = '"+
		 							 vSenha+"'";  
 ResultSet vRs = op.realizaConsulta(esp.getCampos("USUARIO","ORACLE"),vCondicao);
 
 int vConta = 0;
 String vSitAdmin = null;
 while(vRs.next()){
  
  vSitAdmin = vRs.getString("SIT_ADMIN");
  session.setAttribute("SessionNome" , vRs.getString("NOM_USUARIO"));
  vConta++;
 
 }
 vCondicao = null;
 op.setTabela("ISAEL");
 vRs = op.realizaConsulta(esp.getCampos("ISAEL","ORACLE"),vCondicao);
 
 funcionalidades function = new funcionalidades();
 
 if (vConta >= 1){ 
%>
<!-- main content area -->
  <div id="sidebar">
      <!-- news headlines box -->
   <h2>Usuário : <strong><%=session.getAttribute("SessionUsuario").toString().toUpperCase() %></strong></h2>
   <ul class="news">
  <% if (vSitAdmin.equals("S")){ %>
		  <left><a HREF="usuario.jsp"><h6> Cadastro de Usuários</h6></a></left>
		  <left><a HREF=""><h6> Permissões de Usuários</h6></a></left>
		  <left><a HREF=""><h6> Atualização do DB</h6></a></left>
          <left><a HREF=""><h6> Log de acesso do Sistema</h6></a></left>		  
  <%} %>	
    	  <left><a HREF="consulta.jsp"><h6> Consulta de Arquivos</h6></a></left>
    </ul>	 
	<h2>Empresa</h2>   	
    <img src="resources/consagro.jpg" width="302" height="147"> </div>
<%} else{ 
 response.sendRedirect("invalido.jsp"); 
}%>
<%=function.getArvore(vRs,"PASTA")%>
</div>
<!-- Rodape final  -->
<div id=footer>
	<div class=inner>
	 <div class=column>
	 <ul>
	  <li></li>
	 </ul>
	 </div>
	<div class=column left><span class=column>Arquivo Fácil - Todos os direitos reservados
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        powered by <a HREF=mailto:[email removido]>A.I Soluctions</a></div>
	<br clear=all />
	</div>
</div> 
<script type="text/javascript" language="javascript">
        $(".expand").click(function () {
            $(this).toggle();
            $(this).next().toggle();
            $(this).parent().parent().children().last().toggle();
        });
        $(".collapse").click(function () {
            $(this).toggle();
            $(this).prev().toggle();
            $(this).parent().parent().children().last().toggle();
        });
</script>
</body>
</html>
Classe que gera as treewiew, conforme o resultado da pesquisa
package funcoes;

import java.sql.ResultSet;
import java.sql.SQLException;

public class funcionalidades {

	
	private String geraTreeView(ResultSet pRs,String pCampo){
		
		String vTreeView = null;
		String vValor	 = null;
		String vPasta	 = null;
		int	   vConta;
		try {
			vTreeView  = "<br>";
			vTreeView += "<br>";
			vTreeView += "<div class="+"wfm"+">";					
			
			int vNumero = -2;
			while (pRs.next()){
				
				vValor = (String) pRs.getString(pCampo);
				vConta = 0;
				vNumero = vValor.indexOf("\\");

				while (vNumero != -1){
					
					vPasta = vValor.substring(0,vNumero);
					vNumero++;
					vValor = vValor.substring(vNumero,vValor.length());
					vNumero = vValor.indexOf("\\");

					if (vNumero == 0){
						vPasta = vValor; 
					}
					
					vTreeView += "<ul>";
					
					vTreeView += "  <div>";
					vTreeView += "	 <class="+"expand"+" src="+"resources/plus.png"+"/>";
					vTreeView += "	 <class="+"collapse"+" src="+"resources/minus.png"+"/>";
					vTreeView += "  </div>";
					vTreeView += "  <div>";
					vTreeView += "   <img src="+"resources/plus.png"+" name="+"plus"+"><h3>"+vPasta+"</h3>";
					vTreeView += "  </div>";
					vConta++;
				}
				
				vTreeView += "<ul>";
				//vTreeView += " <li>";
				vTreeView += "  <div>";
				vTreeView += "	 <class="+"expand"+" src="+"resources/plus.png"+"/>";
				vTreeView += "	 <class="+"collapse"+" src="+"resources/minus.png"+"/>";
				vTreeView += "  </div>";
				vTreeView += "  <div>";
				vTreeView += "   <strong>"+vValor+"</strong>";
				vTreeView += "  </div>";
				
				while(vConta != 0){
					//vTreeView += " </li>";
					vTreeView += "</ul>";
					vConta--;
				}
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		
		vTreeView += "</div>";
		return vTreeView;		
	}
	
	public String getArvore(ResultSet pRs,String pCampo){
		return geraTreeView(pRs, pCampo);
	}
	
}

Alguem saberia, tem alguma ideia de porque não funciona.

3 Respostas

A

Acho que faltou as aspas do “class” nesse trecho:

vTreeView += "   <class="+"expand"+" src="+"resources/plus.png"+"/>";  
vTreeView += "   <class="+"collapse"+" src="+"resources/minus.png"+"/>";

Tenta:

vTreeView += "   <class=\"expand\" src=\"resources/plus.png\"/>";  
vTreeView += "   <class=\"collapse\" src=\"resources/minus.png\"/>";
aszarael

Realmente estava com esse problema

vTreeView += "   <class=\"expand\" src=\"resources/plus.png\"/>";     
vTreeView += "   <class=\"collapse\" src=\"resources/minus.png\"/>";

Porem ainda faltava isso

vTreeView += "   <img alt=\"\" class=\"expand\" src=\"resources/plus.png\">";     
vTreeView += "   <img alt=\"\" class=\"collapse\" src=\"resources/minus.png\">";

Isso resolveu a montagem do treeview,

porem não ta aparecendo as imagens
Alguma ideia ??

aszarael

Outra coisa o texto que deve aparecer na frente da pasta está parecendo em outra linha.

Criado 19 de dezembro de 2012
Ultima resposta 20 de dez. de 2012
Respostas 3
Participantes 2