last day (15 days later) » 

7:30 PM
2
A: Pegar dados de um array JSON e adicionar a uma lista em Java WEB

Victor StafusaSalvei o seu JSON em um arquivo meujson2.json. Criei esse código: import java.io.IOException; import java.io.FileInputStream; import java.io.StringReader; import java.io.File; import java.nio.file.Files; import java.nio.charset.StandardCharsets; import java.util.List; import java.util.stream.Co...

 
Amigo obrigado pela resposta, mais estou utilizando java web, tentei adaptar mais não consegui
 
@LeandroSantos O código do main deve funcionar dentro de um servlet ou dentro de algum outro método qualquer. Talvez você não queira ler de um arquivo, mas esse código monta o JSOn diretamente de uma String que você pode pegar em qualquer lugar. Ele monta uma List<PagamentoRealizado> que você pode passar para onde quiser, o System.out.println no final é só para mostrar que funciona.
@LeandroSantos Separei o método pagamentosDoJson do resto do main para facilitar a tarefa de adaptar o código para onde você precisar.
 
a sim, o que seria o titulo -> ?
 
@LeandroSantos É a declaração de um lambda, uma característica da linguagem Java introduzida no Java 8.
 
Estou recebendo um erro nesta linha
 
7:30 PM
@LeandroSantos Qual erro? Qual é a sua versão do Java?
 
Estou usando java 8
 
E qual é o erro que aparece naquela linha?
 
aparece isso
eu criei uma classe e copiei seu codigo
 
As duas últimas linhas da mensagem de erro dizem que o projeto está configurado para Java 7 ao invés de Java 8.
Nas propriedades do projeto você deve conseguir configurar isso.
 
cara to com o 8 rs
 
7:50 PM
É nesse lugar aí que você tem que mudar.
@LeandroSantos Clique com o botão esquerdo do mouse no nome do projeto e escolha Propriedades ou Properties.
 
beleza consegui[
saiu o erro
agora preciso criar um metodo pra chamar essa classe ?
 
@LeandroSantos Bem, essa classe tem um método que recebe uma String e devolve a lista montada, é esse método que você vai usar. Mova a classe PagamentoRealizado para um nível superior (ou seja, em um arquivo só para ela sem ser uma classe interna de uma outra classe) e deve funcionar sem maiores problemas.
 
cara desculpa mais to bem perdido rs
eu tenho uma classe chamado boletoControle
nela tem esse metodo
public void validaRetornoProtocolo() throws IOException, JSONException {
// try {
String cnpjCedente = empresaFacade.listaUm().get(0).getCnpj().replace(".", "");
cnpjCedente = cnpjCedente.replace("/", "");
cnpjCedente = cnpjCedente.replace("-", "");
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, retorno);
Request request = new Request.Builder()
.url("http://homologacao.cobrancabancaria.tecnospeed.com.br:8080/api/v1/retornos/" + protocoloRetorno)
eu quero jogar no final o metodo
se eu jogar assim la vai dar erro
 private static List<PagamentoRealizado> pagamentosDoJson(String json)
            throws IOException
    {
        JsonReader reader = Json.createReader(new StringReader(json));
        JsonObject status = reader.readObject();
        JsonObject dados = status.getJsonObject("_dados");
        JsonArray titulosNaoConciliados = dados.getJsonArray("titulosNaoConciliados");
        return titulosNaoConciliados
                .stream()
                .map(titulo -> {
                    JsonObject obj = (JsonObject) titulo;
 
8:07 PM
Crie uma classe chamada PagamentoRealizado fora da LerJson2.
 
ok criei
Criei no mesmo pacote
 
E daí, ao invés de new LerJson2.PagamentoRealizado, você coloca simplesmente new PagamentoRealizado.
Editei a resposta para demonstrar isso.
 
editou aqui mesmo ?
beleza criei
eu tenho um botao na tela que vai chamar esse metodo
vou chamar onde agora ?
ou consigo chamar ele no final do metodo que consigo o json ?
 
8:42 PM
Cara consegui chamar o metodo
mais nao consegui fazer exibir o sout
Cara deu certo muito obrigado
ficou assim
public void validaRetornoProtocolo() throws IOException, JSONException {
// try {
String cnpjCedente = empresaFacade.listaUm().get(0).getCnpj().replace(".", "");
cnpjCedente = cnpjCedente.replace("/", "");
cnpjCedente = cnpjCedente.replace("-", "");
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, retorno);
Request request = new Request.Builder()
.url("http://homologacao.cobrancabancaria.tecnospeed.com.br:8080/api/v1/retornos/" + protocoloRetorno)
Valeu mano
 

last day (15 days later) »