Open bmarwell opened 4 years ago
Example for a value class using jsonb and OpenAPI annotations:
package impl;
import org.eclipse.microprofile.openapi.annotations.media.Schema;
import javax.json.bind.annotation.JsonbProperty;
@Schema(
name = "TaskStatus",
description = "Current status of the requested task."
)
public class JobStatus {
@JsonbProperty("current_step")
@Schema(required = true, name = "current_step", example = "received")
private final String currentStep;
// constructor
// getter
// toString method
}
@turkeylurkey
there is any update of this enhancement?
I would still like to see this as well. Currently I am recreating my classes by hand
@yeekangc @turkeylurkey can you ping someone to look at this?
Taking a look, @bmarwell. Will see what can be done. Thanks.
@bmarwell @yeekangc @turkeylurkey. It would be great to generate the client using the microprofile-rest-client api.
Any progress made on this one @yeekangc @turkeylurkey ?
Given the combined expertise of the people commenting in this issue, maybe one of you would like to contribute a generator: https://openapi-generator.tech/docs/new-generator
it is even easier. You don't need a new generator, just a modified copy of some templates!
Hi @bmarwell, @yeekangc @turkeylurkey I am also interested in using openapi-generator within the new OL 22.0.0.x Version with Microprofile 5. Actually there is missing the jakarta imports. Is there somebody doing some effort in adapting the templates? Shouldn't the community provide some templates compatible with JakartaEE? I am not an expert on openapi-generator enhancing, we just use it, but I'm willing to contribute. How can we assure that the right solution will be done?
Hi, is there any updates on Jakarta upgrade?
I see another issue open: https://github.com/OpenAPITools/openapi-generator/issues/13124
Is your feature request related to a problem? Please describe.
This feature requests is intended to get another, completely different implementation of the current jax-rs one. The current implementation depends on
io.swagger
imports, as well asjackson
as Json provider.However, with microprofile, new vendor-agnostic APIs have arrived.
Describe the solution you'd like
The new implementation is implementation- and vendor-agnostic. It is "just" a new set of templates which can easily be derived from the existing ones.
org.eclipse.microprofile.openapi.annotations
instead ofio.swagger
.javax.json
instead ofcom.fasterxml.jackson
.Benefits: Most applicaiton servers, like OpenLiberty, already ship those MicroProfile standards. When not using this generator, we could ship our applications without jackson and/or swagger dependencies.
The new dependencies are:
Optional: Instead of javax, prefer the new jakarta namespace:
Describe alternatives you've considered
Using the current "jax-rs" implementation which is in fact "non-jakarta jax-rs plus Jackson plus swagger". Bloats the war file due to shipping jackson and swagger
Additional context