Uploaded image for project: 'Apache Fineract'
  1. Apache Fineract
  2. FINERACT-1221

Fineract Client Java SDK API has broken methods

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 1.8.0
    • 1.11.0
    • SDK
    • None

    Description

      Our brand new "Fineract Client Java SDK API" emerging from https://github.com/apache/fineract/pull/1428/ for FINERACT-1216 contains at least some annotated Java methods which are invalid for Retrofit.

      When enabling apiClient.getAdapterBuilder().validateEagerly(true);, I'm seeing e.g.

      java.lang.IllegalArgumentException: Non-body HTTP method cannot contain @Body.
          for method ClientApi.delete9
      	at retrofit2.Utils.methodError(Utils.java:54)
      	at retrofit2.Utils.methodError(Utils.java:43)
      	at retrofit2.RequestFactory$Builder.build(RequestFactory.java:213)
      	at retrofit2.RequestFactory.parseAnnotations(RequestFactory.java:67)
      	at retrofit2.ServiceMethod.parseAnnotations(ServiceMethod.java:26)
      	at retrofit2.Retrofit.loadServiceMethod(Retrofit.java:202)
      	at retrofit2.Retrofit.validateServiceInterface(Retrofit.java:189)
      	at retrofit2.Retrofit.create(Retrofit.java:141)
      	at org.apache.fineract.client.ApiClient.createService(ApiClient.java:127)
      	at org.apache.fineract.client.util.FineractClient.createService(FineractClient.java:42)
      	at org.apache.fineract.client.test.FineractClientTest.testRetrieveAllClients(FineractClientTest.java:41)

      As a first step to eventually fixing this (and having non-regression for it), I'll write an automated test about it (but keep it ignored, for now).

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              vorburger Michael Vorburger
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: