2
respostas

Não consegui fazer funcionar

A proposta é interessante, mas, não consegui fazer funcionar. Os códigos que usei foram os seguintes.

package br.com.elias;

import java.util.List;

public class Principal {

    public static void main(String[] args) {

        Produto    produto = new Produto(1, "Produto", null, "Produto de teste", 10);
        Usuario    user    = new Usuario("elias", "1234", "teste@teste.com.br", "tester", true);
        NotaFiscal nf      = new NotaFiscal(10, 25, "00.111.222.333/4444.55", "lugar", null);

        List<String> lista;

        System.out.println("Inicio teste");

        lista = TestaValidacao.buscaString(nf, "Produto");
        System.out.println("Inicio teste nf");

        for (String string : lista) {
            System.out.println(string);
        }
        lista = TestaValidacao.buscaString(user, "Produto");
        System.out.println("Inicio teste user");

        for (String string : lista) {
            System.out.println(string);
        }
        lista = TestaValidacao.buscaString(produto, "Produto");
        System.out.println("Inicio teste Produto");

        for (String string : lista) {
            System.out.println(string);
        }
        System.out.println("Fim teste");
    }
}


public static List<String> buscaString(Object o, String buscada) {
        try {
            List<String> lista = new ArrayList<>();
            Class<?> c = o.getClass();
            for (Field f : c.getFields()) {
                Object value = f.get(o);
                if (value != null) {
                    String strValue = value.toString();
                    if (strValue.contains(buscada)) {
                        lista.add(f.getName());
                    }
                }
            }
            return lista;
        } catch (Exception e) {
            e.printStackTrace();
            throw new RuntimeException(e);
        }

    }

A busca de String foi copiada da sugestão de resposta desta questão, mesmo assim não funcionou.

2 respostas

Qual erro foi o ocorrido? posta o stackflow aqui?

Não apresentou erro algum, só não fazia nada.