Javascript com java

4 respostas
R

Galera, preciso de um help. Tenho um projeto que utiliza java e javascript. Ao inserir um funcionário, meu programa insere também um usuário de sistema. Porém faço uma pesquisa no banco para validar a existência ou não do nome de usuário a ser inserido. O que quero é que, após esta verificação, que o meu javascript dê um alert. Porém não consigo fazer com que o javascript leia a variável java. Naverdade ele lê, mas lê com o valor inicial da variável java. Mas ao mudar este valor (exemplo, de 0 para 1) o javascript não percebe esta mudança. Não sei se consegui esclarecer minha dúvida. Aguardo uma ajuda. Valeu

4 Respostas

lgi2020

Posta seu código para vermos.

Abraços.

cassio

javascript é uma coisa, java é outra. Java roda no servidor, javascript no browser. Para fazer os dois conversarem, ainda que “indiretamente”, só com Ajax. (a não ser que você esteja executando javascript direto na JVM com o Rhino, mas pelo que li do seu post acho que não é esse o caso).

R

Justamente. O Sistema utiliza o Ajax. O meu problema é que este projeto é antigo e tive de aprender a me virar com Javascript e Xwork sem um estudo prévio. Estes são os códigos:

Minha DAOFuncionario com o método de inserção do funcionário e do usuário criados. O método verificaExiste() faz a conexão como banco buscando a existêncio do nome de usuário colocado.

public boolean insertDAO(Funcionario funcionario) throws Exception

{

Connection conn = getConnection();

Usuario usr = new Usuario();

usr.setLogin(funcionario.getLogin());

<a href="//ActionFuncionario.setAux">//ActionFuncionario.setAux</a>(1);

if (getDaoUsuario().verificaExiste(usr, conn) == true) {

<a href="//ActionFuncionario.setAux">//ActionFuncionario.setAux</a>(0);
return false;
		//RotaryAction.setMsg("Este usuário já existe.");
		
		
	}
	else {
		PreparedStatement  ps =conn.prepareStatement(SQL_INSERT_USUARIO);
		ps.setString(1, funcionario.getLogin());
		ps.setString(2, funcionario.getSenha());
		ps.setInt(3, funcionario.getPerfil().getId());
		ps.executeUpdate();
		ps.close();
		Usuario user = getDaoUsuario().selectLogin(funcionario.getLogin(),funcionario.getSenha());
		funcionario.setIdusuario(user.getIdusuario());
		ps =conn.prepareStatement(SQL_INSERT);
		ps.setString(1,funcionario.getNome());
		ps.setString(2, funcionario.getEndereco());
		ps.setString(3, funcionario.getTelefone());
		ps.setInt(4, funcionario.getIdusuario());
		ps.executeUpdate();
		ps.close();
		conn.close();
		//ActionFuncionario.setAux(1);
		
		return true;
	}
	
	
}

O método da minha ActionFuncionario onde tentei, com as variáveis aux e validar, fazer uma forma de o javascript ´fazer a validação utilizando dessas variáveis.

public String insert() throws Exception

{

setValidar(0);

if (getDaoFuncionario().insertDAO(funcionario) == false){

setAux(1);
}
	
	else {
		setAux(2);
		
		
	}
	
	return SUCCESS;
	
	
}

E eeste eh o código javascript que valida essa questao:

function validar() {

if($validar == 0){
	alert('validar = 0');
	if ($aux == 1) {
		alert('Este usuário já existe.');
	}
	if ($aux == 2) {
		alert('Usuário cadastrado com sucesso.');
	}
}

}

O que tentei é que, através dos valores de aux e de validar, o javascript apresentasse esses alerts.

cassio

Tá, mas onde você faz a chamada Ajax no seu javascript? onde pega parâmetros do request e devolve a resposta para o browser?
Da forma que você colocou ai são códigos totalmente independentes…

Criado 29 de julho de 2008
Ultima resposta 31 de jul. de 2008
Respostas 4
Participantes 3