[java / feign / jackson] swagger codegen and application/octet-stream issue
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-02-2021
01:44 AM
06-02-2021
01:44 AM
[java / feign / jackson] swagger codegen and application/octet-stream issue
I'm using 3.0 spec and swagger-codegen-cli-3.0.26.jar for generating the client API.
The schema has operation with response application/octet-stream and format binary - part of schema below.
The generated API (java, feign, jackson) has File as return type.
@RequestLine("GET /nodes/{nodeId}/content")
@Headers({
"Accept: application/octet-stream,application/octet-stream"
})
File getNodeContent(@Param("nodeId") String nodeId);
I wonder why it is File, not byte[], or InputStream?
What is astonishing, the http response content is stored in the File.path member (and broken), basically it doesn't work.
Is File type for octet-stream according to spec (I cannot find this information)? And how it should be done correctly?
(changing File by hand to byte[] doens't help as feign/jackson is expecting in this case base64 coded response, but the service returns raw content and the call fails with jackson parsing error.
/nodes/{nodeId}/content:
get:
operationId: getNodeContent
parameters:
...
responses:
"200":
content:
application/octet-stream:
schema:
format: binary
type: string
0 REPLIES 0
