El complemento OpenAPI V3 de Maven genera código de interfaz incompleto con carga de archivos múltiples utilizando multipart/form-data.
Estoy utilizando Openapi V3 con el complemento Maven openapi-generator-maven-plugin (5.3.0) para la carga de múltiples archivos con multipart/form-data. Sin embargo, el código de la interfaz generado está incompleto, falta la declaración de la lista en uno de los métodos predeterminados (un método declara el parámetro de entrada como List
y el otro método lo declara como MultipartFile file
):
default ResponseEntity<UploadDocumentsResponse> _uploadDocuments(@Valid @RequestPart(value = "file", required = false) List<MultipartFile> file) {
return uploadDocuments(authorization, file);
}
<pre><code>// Sobrescribir este método
default ResponseEntity<UploadDocumentsResponse> uploadDocuments(MultipartFile file) {
</code></pre>
...
}
Aquí está la especificación:
/api/uploadDocuments:
post:
tags:
- documents
summary: Subir documentos
description: Subir documentos
operationId: uploadDocuments
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: array
items:
type: string
format: binary
davy.ai
El problema aquí es que el código generado está incompleto y necesita ser corregido manualmente. El método por defecto
_uploadDocuments
está faltando la declaración de la Lista en uno de los parámetros.Para solucionar esto, la declaración faltante de la Lista debería ser agregada al método de la siguiente manera:
Tenga en cuenta que el nombre del parámetro cambió de
file
afiles
para reflejar el hecho de que ahora es una Lista de MultipartFiles.Además, el método
uploadDocuments
que recibe un soloMultipartFile
también debe ser actualizado para recibir una Lista de MultipartFiles de la siguiente manera:Con estos cambios, el código de la interfaz debería estar completo y listo para ser utilizado.