[RESOLVIDO]Chamar um metodo dentro do outro

5 respostas
samanta.santos
Boa tarde ,pessoal..To fazendo umas mudanças aki em um projeto do meu estagio, e não estou conseguindo chamar um metodo dentro do outr.Alguém pode me ajudar?? Preciso chamar esse metodo:
public Vector consultarDadosEmenta(String idEmenta, String idTurma){

		String SQL ="SELECT TO_CHAR(EMENTA) FROM T_EMENTA WHERE ID_TURMA = '" + idTurma + "' ";;
	
		return new LimiteOracle().consultarBanco(SQL);
	}

dentro deste:

public Vector cadastrarEmenta(EmentaData ed) {
		System.out.println("Cadastrando Ementa...");
		Vector erros = new Vector();
		try {
			
			Ementa ementa = EmentaUtil.getHome().findByPrimaryKey(ed.getIdEmenta());
			if(ementa!=null){
				EmentaUtil.getHome().create(ed);
			} else {
				ementa.setEmenta(ed.getEmenta());
				ementa.setIdTurma(ed.getIdTurma());
			}
			
			System.out.println("Ementa cadastrada com sucesso.");
		}catch(Exception e) {
			erros.add("Erro durante o processamento. Não foi possível cadastrar Ementa.");				
			System.out.println("Erro ao tentar cadastrar Ementa!");
			e.printStackTrace();
		}finally{
			return erros;
		}
	}

Espero q vcs possam me ajudar..
Agradeço desde já

5 Respostas

discorpio

Boa tarde Samanta.

Voce nem sequer invocou o método dentro do outro, que tal tentarmos assim:

public Vector consultarDadosEmenta(String idEmenta, String idTurma){   
  
        String SQL ="SELECT TO_CHAR(EMENTA) FROM T_EMENTA WHERE ID_TURMA = '" + idTurma + "' AND ID_EMENTA = '" + idEmenta + "'";  
       
        return new LimiteOracle().consultarBanco(SQL);   
}

public Vector cadastrarEmenta(EmentaData ed) {   
        System.out.println("Cadastrando Ementa...");   
        Vector erros = new Vector();   
        try {   
               
            Ementa ementa = EmentaUtil.getHome().findByPrimaryKey(ed.getIdEmenta());
            //  ou utilizar este aqui que é o seu método invocado
            Vetor dadosEmenta = consultarDadosEmenta(ed.getIdEmenta(), ed.getIdTurma());            
            
             if(ementa!=null){   
                EmentaUtil.getHome().create(ed);   
            } else {   
                ementa.setEmenta(ed.getEmenta());   
                ementa.setIdTurma(ed.getIdTurma());   
            } 

            // ou utilizar esta verificação.
            if(dadosementa!=null){   
                EmentaUtil.getHome().create(ed);   
            } else {   
                dadosementa.setEmenta(ed.getEmenta());   
                dados.setIdTurma(ed.getIdTurma());   
            } 
  
               
            System.out.println("Ementa cadastrada com sucesso.");   
        }catch(Exception e) {   
            erros.add("Erro durante o processamento. Não foi possível cadastrar Ementa.");                 
            System.out.println("Erro ao tentar cadastrar Ementa!");   
            e.printStackTrace();   
        }finally{   
            return erros;   
        }   
    }
lina

Oi,

Você fez uma logica muito clara e não conseguiu chamar um método de dentro do outro?

Os métodos estão em classes diferentes, né?!

Tchauzin!

nel

Boa noite!

Só sendo um pouco metido, que tal substituir este Vector por List?
Abraços.

ViniGodoy

E que tal substituir o Statement por um PreparedStatement?

samanta.santos

Mt obrigada pela ajuda, pessoal…
Deu certo e consegui fazer isso e o resto q eu estava precisando…

Criado 8 de agosto de 2010
Ultima resposta 11 de ago. de 2010
Respostas 5
Participantes 5