Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Falha ao chamar api via SDK #9

Open
yanBrandao opened this issue Feb 19, 2023 · 2 comments
Open

Falha ao chamar api via SDK #9

yanBrandao opened this issue Feb 19, 2023 · 2 comments

Comments

@yanBrandao
Copy link

Ao realizar a chamada abaixo:

gn.call("createCharge", hashMapOf(), body)

Estou recebendo o erro abaixo:

org.json.JSONException: JSONObject["APIs"] not found.
	at org.json.JSONObject.get(JSONObject.java:471) ~[json-20160810.jar:na]
	at br.com.gerencianet.gnsdk.Config.getEndpoints(Config.java:26) ~[gn-api-sdk-java-2.0.0.jar:na]
	at br.com.gerencianet.gnsdk.Endpoints.kernelCall(Endpoints.java:112) ~[gn-api-sdk-java-2.0.0.jar:na]
	at br.com.gerencianet.gnsdk.Endpoints.call(Endpoints.java:84) ~[gn-api-sdk-java-2.0.0.jar:na]

Analisando o código do SDK, e no construtor da classe Endpoints apresentado abaixo:

public Endpoints(JSONObject options) throws Exception {
        JSONObject config = this.readJSONFile();
        this.config = new Config(options, config);
    }

Ele recebe as configurações passadas na entrada através do atributo options, como credenciais e outras informações adicionais, porém esse outro objeto config é feito a leitura de arquivo config.json que no repositório de exemplo não explica se devemos criar esse arquivo ou como devemos preenche-lo, mas nesse arquivo deveria ter um campo achamado APIs que dispara o erro.

 public JSONObject getEndpoints() {
        return (JSONObject)this.endpoints.get("APIs");
    }

Isso é um bug, ou deveriamos criar esse arquivo config.json?

@jessica-gava-efi
Copy link

Ola!
O arquivo config.json ja existe - https://github.com/gerencianet/gn-api-sdk-java/blob/master/src/main/resources/config.json.
No repositório de exemplo, é adicionado uma dependência desse projeto(gn-api-sdk-java) que contém o arquivo config.json. Verifique se no pom.xml de seu repositorio de exmeplo, você esta utilizando a versão correta, pois tivemos algumas alterações, inclusive na estrutura desse arquivo config.json.

A versão mais atual é 2.0.0

<dependency>
	<groupId>br.com.gerencianet.gnsdk</groupId>
	<artifactId>gn-api-sdk-java</artifactId>
	<version>2.0.0</version>
</dependency>

@yanBrandao
Copy link
Author

yanBrandao commented Mar 9, 2023

@jessica-gava-efi aparentemente deve ter sido alguma confusão minha no momento da criação do arquivo de configuração.
Conforme o exemplo, devemos nomear os arquivos de configurações como credentials.json, porém eu nomeei como config.json e sobrescreveu o que estava disponível pela SDK de vocês e com isso não estava encontrando o objeto API.

Não sei bem se é um bug, mas esse arquivo é bem crítico para fluxo.
Mesmo assim, obrigado pela resposta!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants