lightningj-org/lightningj

LightningJ does not work with LND with version 0.14.2-beta

Closed this issue · 1 comments

Subject of the issue

My raspberry PI is running a LND with version 0.14.2-beta and it seems that lightningJ is not compatible with that version.
When making any grpc call to my LND i get the following error:
io.grpc.StatusRuntimeException: UNKNOWN: unmarshal v1: cannot parse field name

Your environment

  • implementation 'org.lightningj:lightningj:0.15.5-Beta'
  • Java 17 - Temurin
  • Mac

Steps to reproduce

Prerequisites:
I have a LND node running on my Raspberry Pi with Umbrel OS
LND Version: lncli version 0.14.2-beta commit=v0.14.2-beta

Run This code:

    String nodeAddress = "umbrel.local";
    int nodePort = 10009;
    String tlsCertPath = "setup/tls.cert";
    String macaroonPath = "setup/admin.macaroon";

    SynchronousLndAPI lndAPI = new SynchronousLndAPI(nodeAddress, nodePort, new File(tlsCertPath),
        new File(macaroonPath));

    System.out.println(lndAPI.walletBalance().toJsonAsString(true));

Expected behaviour

Grpc call should pass successfully.

Actual behaviour

grpc call fails with response header:

INBOUND HEADERS: streamId=3 headers=GrpcHttp2ResponseHeaders[:status: 200, content-type: application/grpc, grpc-status: 2, grpc-message: unmarshal v1: cannot parse field name] padding=0 endStream=true

Hi the versions are generated to match the LND version. So in your case I would recommend using lightningJ 0.14.2. Not sure if there is Java 17 support for lightningj 0.14.2 though.