Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Oct 12 03:07

    velo on test-apt

    (compare)

  • Oct 12 03:06

    velo on test-apt

    First attempt at test stub code… Using templating framework Cleanup dependencies (compare)

  • Oct 12 03:05

    velo on github-tests

    (compare)

  • Oct 12 03:05

    velo on master

    Ignore github example integrati… (compare)

  • Oct 12 01:18

    velo on github-tests

    Ignore github example integrati… (compare)

  • Oct 04 20:22

    velo on master

    Add composed Spring annotations… (compare)

  • Oct 02 22:03

    velo on 10.5.1

    prepare release 10.5.1 (compare)

  • Oct 02 22:01

    velo on master

    prepare release 10.5.1 [travis skip] updating versions… (compare)

  • Oct 02 22:00

    velo on master

    Preparing for next release (compare)

  • Oct 02 21:43

    velo on master

    prepare release 10.6.0 [travis skip] updating versions… (compare)

  • Oct 02 21:43

    velo on master

    Using ssl git connection (compare)

  • Oct 01 07:10

    velo on master

    Remove java8 module (#1086) Ja… (compare)

  • Oct 01 06:18

    velo on 3.4.1

    (compare)

  • Oct 01 06:18

    velo on 3.4.0

    (compare)

  • Oct 01 06:18

    velo on 3.2.2

    (compare)

  • Oct 01 06:18

    velo on 3.8.0

    (compare)

  • Oct 01 06:18

    velo on 3.0.1

    (compare)

  • Oct 01 06:18

    velo on 3.5.0

    (compare)

  • Oct 01 06:18

    velo on 2.2.1

    (compare)

  • Oct 01 06:18

    velo on 3.7.0

    (compare)

hellboy81
@hellboy81
I have still trouble with Apache Client OpenAPITools/openapi-generator#2957

@lumiseven

seems like feign-httpclient is required when using @PathVariable in PATCH RequestMethod.

it seems to be problem with apache client

hellboy81
@hellboy81
@SimY4 which error decoder should I use?
feign-annotation-error-decoder or still from coveo?
Fernando Saint-Jean
@saintf
@SimY4 sorry it took me so long but code looks really good. Nice updates on the tests/etc. I noticed the build failed because of formatting so I made changes and raised a PR to your fork. If you merge that PR you'll see the build succeed (I expect) and then I can merge/release for you. Thanks for the changes - really good stuff. And again - sorry it took so long!
hellboy81
@hellboy81
UnAuthorizedException, ForbiddenException where can I find definition for classes ?
get from coveo to feign-annotation-error-decoder !
Fernando Saint-Jean
@saintf
@hellboy81 those are examples. They don't really exist in the codebase - you can generate any exceptions you desire (i.e. extend from runtime/etc). It allows you to decide what exception gets mapped to what error code
Fernando Saint-Jean
@saintf
The beauty behind it is that it means you get exceptions defined in your own codebase (although I do see the temptation to unify under one group). The unification however would be rather difficult as everyone has different requirements. In some cases, just knowing it's forbidden is enough. In others, you want to potentially see the actual response/etc. Hence, rather than deal with that complexity, the choice was to let users pick their own exceptions - so that if a given user wants all 400's to be MyClientErrorException they can - with a simple creation of that exception and its definition (which can be as simple as extending Exception to as complex at letting the error decoder add body and headers/etc. Hope this helps - let me know if I can help any further! My guess is that based on your question we should probably update the docs to call those MyUnAuthorizedException and MyForbiddenException to make it obvious users are meant to define these at their own hearts content ;)
hellboy81
@hellboy81
OKHttpClient vs ApacheClient. Lets flame begin
hellboy81
@hellboy81
hellboy81
@hellboy81
Another question :
why ?
hellboy81
@hellboy81
Feign rulezz !
Kevin Davis
@kdavisk6
@hellboy81 OpenFeign/feign#320 and OpenFeign/feign#133 for history on inheritance
And the PR OpenFeign/feign#246
hellboy81
@hellboy81

but the copyrights are still to netflix?

by amazon ;-)

Feign Аmazon Prime Video Edition
hellboy81
@hellboy81

@hellboy81

OKHttpClient vs ApacheClient. Lets flame begin

hi, the world' s only OKHttpClient user. Yes, u should use OK because of OK as first two letters in name ;-) The Apache Client has the same problems as another Apache products

lumiseven
@lumiseven
Does anyone has same issue that feign always throw hystrix timeout while server invoke in spring container start time?
actually why should I use spring boot to write tests wiremock ?
due on @TestConfiguration
hellboy81
@hellboy81

Is there possible to generify Feign Spring Config?

https://gist.github.com/hellboy81/767a60c4278de5726074b14a2f278bf2

Martin Etmajer
@metmajer
I am a huge fan of Feign and I about to migrate a larger Jenkins Pipeline with a lot of ugly Apache HttpClient code. However, it seems like Jenkins shared libraries cannot cope with Feign's annotations for some reason. Although feign-core is on the classpath and I have imported feign.Headers, a pipeline execution yields the following error. The problem occurs in both Feign versions 9 and 10. Any ideas?
org.jenkinsci.plugins.workflow.cps.CpsCompilationErrorsException: startup failed:
file:/var/jenkins_home/jobs/pltf-meta/branches/master/builds/10/libs/pltf-shared-library/src/org/ods/service/DocGenHttpAPI.groovy: 11: unexpected token: @ @ line 11, column 5.
       @Headers({
       ^
Here is the relevant code from the Jenkins shared library:
@Grab("io.github.openfeign:feign-core:10.2.3")

import feign.Feign
import feign.Headers
import feign.RequestLine

interface DocGenHttpAPI {
    @Headers({
        "Accept: application/json",
        "Content-Type: application/json"
    })
    @RequestLine("POST /document")
    String createDocument(String content)
}
aloani20
@aloani20
Dear folks, I am using netflix feign and just wondering how to make feign decoder throw exception that will go to my Custom Error Decoder.
why I am doing this is because the 200 ok response will hold the success and the business error codes. my thought would be to check the success scenario on the custom decoder . if the type is what is not the response body is i will throw exception that will trigger the custom error decoder. So in the custom error decoder i will see if the status is 200 then this would be business error.
Kevin Davis
@kdavisk6
@metmajer I personally don't have any experience using Feign within a Groovy script that way. I suspect it's something to do with how annotations differ in Groovy. I don't really know how to help there.
Kevin Davis
@kdavisk6
@aloani20 The ErrorDecoder will only be triggered if the response returns a HTTP Status code that is higher than 3xx. If your response code is 1xx, 2xx, or 3xx the ErrorDecoder will not be triggered. If you are unable to update the response from your api to use one of the other response codes, you could use a custom Decoder to catch this and throw an error from there.
@lumiseven I am not aware of any known issues when using Feign during container startup. I suspect that your issue may be with the execution timeout in Hystrix being too short during container start.
@hellboy81 I'm not sure I follow your question on generification. Is it something to feign in particular or in the Annotation Error Decoder?
Alex Simkin
@SimY4
Hi! Can someone please have a look at this PR: OpenFeign/feign-annotation-error-decoder#26
Kevin Davis
@kdavisk6
OpenFeign 10.3.0 has been released to Maven Central - https://github.com/OpenFeign/feign/releases/tag/10.3.0
Max Syachin
@finnetrolle
Hi pals. Can someone have a look at this PRs please: OpenFeign/feign#1040 OpenFeign/feign#1039
Kevin Davis
@kdavisk6
@finnetrolle I have done a very quick once-over on these, but would like more time to review them. I will provide feedback in the next few days.
Max Syachin
@finnetrolle
@kdavisk6 feel free to provide any feedback please )
qepasa
@qepasa
Hi all. I was looking into adding code for this feature: OpenFeign/feign#678
Is this still something that maintainers would like to be done? I'm not sure what the process is with issues tagged 'proposal'. I find this issue interesting as this is something I recently dealt with when trying to add metrics for requests and ended up with a solution similar to the one in repo that is linked in first comment. My initial solution would be to add two fields to the Request class, namely uri and something like interfaceMethod or maybe configKey. I'm not sure whether I've got full understanding of feign codebase and all possible use cases so I'd be grateful for any suggestions or comments.
Kevin Davis
@kdavisk6
@qepasa Issues marked as proposal indicate that the community has requested a change to the API that needs more support before we'll consider accepting it. In HACKING we explain our philosophy of vetting changes by applying the Rule of Three. If you are interested in supporting #678, please vote for it by reacting to the first post in the issue.
Max Syachin
@finnetrolle
@kdavisk6 could you review OpenFeign/feign#1047 please?
Kevin Davis
@kdavisk6
@finnetrolle I reviewed and approved the changes this morning. Waiting on anything from velo
Kevin Davis
@kdavisk6
OpenFeign 10.4.0 has been released to Maven Central - https://github.com/OpenFeign/feign/releases/tag/10.4.0
Bogdan
@quitefire
Hi there, is it possible to make multipart/related requests using feign?Is there encoder created particularly for this type of request? I wasn't able to find any examples besides multipart/form-data which didn't work for me. I'm using feign-core with no spring framework integration.
Kevin Davis
@kdavisk6
@quitefire I believe you can, but you will need to use the feign-form library extension. It depends on feign-core and can be used without Spring.
alexandre melard
@mylen
Hi there,
I'd like to use openfeign to address different servers having the same REST interfaces depending on one parameter, is it possible?
for example:
Map<String, MyFeignClient> myFeignClients;
myFeignClients.put("serverA", MyFeignClient.create(serverAurl));
I don't want to use that code obviously but that's the idea
Shyam Baitmangalkar
@sbaitmangalkar

Hi there,
I'm actually exposing an API through feign and calling it in another microservice. This API returns a ResponseEntity. But if my understanding is right, feign is unable to deserialize ResponseEntity. The body of ResponseEntity is a List.

The actual API looks something like this:

@RequestMapping(value = "/v1/external/api/{id}/getInfo", method = RequestMethod.POST,
      produces = "application/json")
  public ResponseEntity getInformation(@PathVariable Integer id,
      @RequestBody InformationRequest informationRequest) {
    return fetchInformation(id, informationRequest);
  }

This above API is exposed in feign like:

@RequestLine("POST /v1/external/api/{id}/getInfo")
  @Headers("Content-Type: application/json")
  ResponseEntity getInformation(@Param(value = "id") Integer id,
      InformationRequest informationRequest);

I'm calling this API using a feign provider which I've written as shown below:

public ResponseEntity getInformation(Integer id, InformationRequest informationRequest)
      throws CustomException {
    try {
      return dataInformationProvider.getDataInformationService().getInformation(id,
          informationRequest);
    } catch (FeignException e) {
      String message = "Failed to get information for user: " + id + " and for request: "
          + informationRequest;
      throw new CustomException(message, e);
    }
  }

The call is successfully happening. But it throws:

Caused by: feign.FeignException: Can not deserialize instance of org.springframework.http.ResponseEntity out of START_ARRAY token

Is there a way to handle ResponseEntity in feign? Any inputs on this would be of great help.

Sinchana94
@Sinchana94
I have added feign client to spring batch and used it to get data in few tasklet and listener but afteradding it jobs are not registering to ApplicationContext, please advise