Hi Andriy, I tried that but I still do not see any option to upload. I only see a text area instead of uploading option. Is that the way it should be ?
On Wed, Sep 5, 2018 at 9:12 AM Andrey Redko <[email protected]> wrote: > Hey Irfan, > > So yeah, you cannot use attachments like this, it should be hidden behind > binary payload. The only thing you need to do is to change type="file" to > type="string" in your @Schema. This is the OAS 3.0 approach: > https://swagger.io/docs/specification/describing-request-body/file-upload/ > > And you should be fine. > Thanks! > > Best Regards, > Andriy Redko > > On Tue, Sep 4, 2018, 9:55 PM Irfan Pasha <[email protected]> wrote: > >> >> Hi Andrey, >> >> As always, thanks for responding so quickly. Please find below the code >> snippet of my service >> >> @PUT >> @Path("/{WebAppName}") >> @Consumes(MediaType.MULTIPART_FORM_DATA) >> @Produces("application/json") >> @Tag(name = "Update") >> @Operation( >> summary = "Update Services", >> description = "Update Services", >> responses = { >> @ApiResponse(responseCode = "500", >> description = "Could not update service"), >> @ApiResponse(responseCode = "200", >> description = "Successfully updated service")} >> ) >> public Response updateService(@Parameter(schema = @Schema(type = >> "file", format = "binary", description = "descriptor") ) Attachment >> descriptor, >> @Parameter(description = "service name ", required = true) >> @PathParam("servicename) String servicename, >> @Parameter(description = "service id", required = true) >> @PathParam("serviceid") String serviceid) { >> >> Regards, >> Irfan >> >> On Tue, Sep 4, 2018 at 7:39 PM Andriy Redko <[email protected]> wrote: >> >>> Hi Irfan, >>> >>> Thanks a lot for the feedback. >>> >>> 1) Would you mind providing a short snippet of endpoint definition + >>> OpenAPI annotations? (beside just @Schema) >>> 2) I think the only way to have an example through Java annotations is >>> to use formatted JSON as plain old String. It would be a good question to >>> Swagger guys (https://swagger.io/forum/) actually. >>> >>> Thank you. >>> >>> Best Regards, >>> Andriy Redko >>> >>> IP> Hi, >>> >>> IP> I have been CXF Framework for OpenAPI and its been very easy to use >>> so far. >>> IP> I have few questions where I am not finding proper >>> documentation/examples >>> IP> on how to do it. It would be great, if you can help me figuring out >>> what >>> IP> seems to be happening. >>> >>> >>> IP> 1. To perform a file upload for the type >>> org.apache.cxf.jaxrs.ext.multipart >>> IP> *.Attachment, *I added the following schema and the content-type is >>> IP> "MULTIPART_FORM_DATA", but I am still seeing the $ref in my >>> open-api.json >>> IP> as "*#/components/schemas/Attachment*" which is a JSONObject. >>> IP> @Schema(type = "file", format = "binary", description = >>> "descriptor") ) >>> >>> IP> Is there a valid schema for Attachment type ? >>> >>> IP> 2. Is there a way to provide a formatted JSONObject as an example >>> instead >>> IP> of defining a string in the @Schema object ? I see lot of examples >>> with >>> IP> Swagger where they show the example as valid JSONObject, but not >>> sure how >>> IP> they would do that with constants. >>> >>> IP> Thank you in advance ! >>> >>> IP> Regards, >>> IP> Irfan >>> >>> >> >> -- >> irfan.......................... >> > -- irfan..........................
