Michael Vorburger created FINERACT-1221:
-------------------------------------------

             Summary: Fineract Client Java SDK API has broken methods
                 Key: FINERACT-1221
                 URL: https://issues.apache.org/jira/browse/FINERACT-1221
             Project: Apache Fineract
          Issue Type: Bug
            Reporter: Michael Vorburger


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.

{noformat}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){noformat}

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).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to