Erro ao pegar Variável

4 respostas
dlsilva1812

Boa tarde galera

Tenho o seguinte cenário:
Possuo 2 telas, quando clico na 1ª tela no link de uma coluna do <h:dataTable> este envia o id do veículo através do <f:param> para ser capturado no método a seguir:

public String carregarDados() {
		String retorno = "gridVisual";
		int idVeiculo = Integer.parseInt(Help.getParan("veiculoId"));
		TsGridPos sitAux = new TsGridPos();
		veiculo = new TsVeiculoDao().getVeiculoById(idVeiculo);
		this.situacoes2 = new TsVeiculoDao().listarVeiculoByPlaca(veiculo.getPlaca());
		
		for (int i = 0; i < situacoes2.size(); i++) {
			sitAux2 = situacoes2.get(i);
		}
		
		for (int i = 0; i < situacoes.size(); i++) {
			String descriSit = "";
			sitAux = situacoes.get(i);
			descriSit = sitAux.getVeiculo().getSituacao().getDescricao();
			TsClienteSitVei veiAux = new TsClienteSitVei();

			for (int j = 0; j < sit.size(); j++) {
				veiAux = sit.get(j);
				if (veiAux.getDescricao().equals(descriSit)) {
					s.setValue(j);
					posSit = j;
				}
			}
		}
		JsfHelper.setSessionAttribute("carregar_id", idVeiculo);
		JsfHelper.setSessionAttribute("sit", sitAux2);
		return retorno;
	}

Vejam que nas últimas linhas do método eu seto a variável sitAux2 na Session, estou fazendo desta forma pq não consegui pegar no construtor da classe.
Bom até aí não estou tendo problemas, neste método é executado então a 2ª tela. Nesta eu estou capturando a variável em sessão com:

<%TsGridPos grid = (TsGridPos) JsfHelper.getSessionAttribute("sit");%>

Até aí td certinho, pois debuguei.
Agora dentro do body da minha jsp tenho a função load, esta primeiramente está setada com alguns valores referentes a latitude, longitude, zoom e um id, pois nesta tela possui um mapa. Dentro desta função load eu preciso inserir dinamicamente os valores dos campos da variável.
Segue abaixo a função e a tag body:

Função

<script type="text/javascript">
    var locations = {}; 
    var map;
    function load( lat, log, zoon, idVeiPos ) {
      map = new GMap2(document.getElementById("mapa"));
      map.setUIToDefault();
      map.enableRotation();
      map.setCenter(new GLatLng(lat,log), zoon);
      
      locations = {}; 
      url = "/monisat/retornaxml?id=<%=((TsClienteResp) JsfHelper.getSessionAttribute("usuario")).getIdCliente()%>";
      if( idVeiPos > 0 ) {
    	  url += "&idVeiPos="+ idVeiPos;
      }

Tag

<body class="background" onload="load(-25.693026, -52.288331, 8, 0 )" onunload="GUnload()">

Se alguém puder ajudar, só lembrando que aqui usamos JSF 1.2.

Desde já agradeço.
Att.
Diego Silva

4 Respostas

D

O problema está exatamente aonde?

...
url = "/monisat/retornaxml?id=<%=[b]((TsClienteResp) JsfHelper.getSessionAttribute("usuario")).getIdCliente()[/b]%>";
...

Quando você coloca o usuario na sessao?

dlsilva1812

dsgrillo:
O problema está exatamente aonde?

...
url = "/monisat/retornaxml?id=<%=[b]((TsClienteResp) JsfHelper.getSessionAttribute("usuario")).getIdCliente()[/b]%>";
...

Quando você coloca o usuario na sessao?

Não simplesmente não consigo pegar os valores da variável “grid” e setar dentro da função load na body. Com o usuario na sessão não tá dando erro!!

dlsilva1812

Ninguém pode me judar??

dlsilva1812

Alguma solução aí galera? Preciso de ajuda!!!

Criado 10 de abril de 2013
Ultima resposta 12 de abr. de 2013
Respostas 4
Participantes 2