OpenAPITools / OpenAPITools/openapi-generator

[BUG][JAVA] library microprofile does not add @Valid annotation to nested classes

Aperta
#19,082 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Issue: Bug
Lingua principale
Java
Stelle
26.8k
Fork
7.7k
Metriche di merge delle PR
Metriche PR in attesa

Descrizione

Description

Java generator with library microprofile does not add @Valid annotation to nested classes

openapi-generator version

7.7.0


public class ResponseBankFixedIncomesBalancesData  {
//...

  public static final String JSON_PROPERTY_UPDATED_UNIT_PRICE = "updatedUnitPrice";
  
  private ResponseBankFixedIncomesBalancesDataUpdatedUnitPrice updatedUnitPrice;

  public static final String JSON_PROPERTY_GROSS_AMOUNT = "grossAmount";  

  private ResponseBankFixedIncomesBalancesDataGrossAmount grossAmount;
//...
}
OpenAPI declaration file content or url

Complete file
issues.zip

Generation Details

npx @openapitools/openapi-generator-cli generate -i issues.yml -g java -o ./tmp/test/ --additional-properties=useJakartaEe=true,serializationLibrary=jackson,library=microprofile,useBeanValidation=true

Steps to reproduce

Install operaapi-generator-cli and run the command above

Sugestion to fix
  • the resteasy llibrary adds the @Valid annotation but also adds this to some objects that has no validation like URI(java.net.URI) class
  • Add an additional property to enable this
  • Add an addtional property to specify some classes to not add the @Valid annotation

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Riproduci il problema con il file issues.yml fornito in issues.zip e il comando openapi-generator-cli documentato, utilizzando la libreria Java microprofile e useBeanValidation=true. Confronta i campi dei modelli annidati generati con il comportamento della libreria resteasy; il lavoro è completato quando l’output microprofile gestisce @Valid per le classi annidate come previsto, senza introdurre le annotazioni indesiderate segnalate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
backend-api-design, tooling
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.