swagger-api / swagger-api/swagger-codegen
[JAVA] Feature: Creating a jaxrs-client-api compliant Java Client for running in an application server
Nobody has claimed this yet.
- Dominant language
- Mustache
- Stars
- 17.8k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
Creating a jaxrs-client-api compliant java client for running in an application server
I have a Java EE 7/8 application, that is running in a WebSphere application server 9 and I have to connect to another application via their REST endpoint.
The developer of the other application provided a swagger 2.0 yaml to me.
I would like to do the following:
creating a jax-rs-client jar via the swagger-codegen-maven-plugin with provided dependencies to the java ee 7 (java ee 8, jakarta ee 8) REST associated APIs (jax-rs, jax-rs-client, json-p, json-b, ...), instead of creating a client using specific implementations like (jersey, cxf, jackson, ...).
The option jaxrs-cxf-client language is quite close, to what I would like to have, but the generated source code is dependent on org.apache.cxf, and not all application servers use that framework.
Furthermore, there is no generated client-class. Instead, the api-interfaces and DTOs are generated and in the JUnit test the usage is demonstrated in the setup() method.
Swagger-codegen version
Because it's a swagger 2.0 yaml I'm using swagger-codegen-maven-plugin in version 2.4.9
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting the jaxrs-cxf-client option, the swagger-codegen-maven-plugin, and the generated source and JUnit setup() example mentioned in the issue. Determine how a client using Java EE/Jakarta EE JAX-RS, JSON-P, and JSON-B APIs could avoid CXF, then verify that the result supports a generated client class and provided dependencies for application-server use.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100