Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Issues
  • #1421
Closed
Open
Issue created Nov 13, 2018 by Administrator@rootContributor

[Java][jaxrs-jersey] unnecessary multipart imports in generated code

Created by: kingofdisasterr

Description

if the java jaxrs-jersey server code is generated from a model which doesn't need the jersey multipart feature, the multipart packages are imported anyway.

openapi-generator version

openapi-generator 3.3.2

OpenAPI declaration file content or url
openapi: 3.0.1
info:
  title: foo
  description: >-
    bar
  version: 1.1.0
paths:
  /foo/v1/bar:
    get:
      summary: read foo bar
      operationId: getFooBar
      responses:
        200:
          content:
            application/json:
              schema:
                default:
          description: all went ok
Command line used for generation

Java -jar openapi-generator-cli-3.3.2.jar generate -i /foobar.yaml -g jaxrs-jersey -o /foobar

java output
package fooBar.impl;

import fooBar.*;
import fooBar.model.*;


import java.util.List;
import fooBar.NotFoundException;

import java.io.InputStream;

import org.glassfish.jersey.media.multipart.FormDataContentDisposition;

import javax.ws.rs.core.Response;
import javax.ws.rs.core.SecurityContext;
import javax.validation.constraints.*;
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaJerseyServerCodegen", date = "2018-11-12T10:51:46.203+01:00[Europe/Berlin]")
public class FooApiServiceImpl extends FooApiService {
    @Override
    public Response getFooBar(SecurityContext securityContext) throws NotFoundException {
        // do some magic!
        return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build();
    }
}
Suggest a fix/enhancement

in the templates should be a check around the multipart imports:

{{#useMultipartFeature}}
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataParam;
{{/useMultipartFeature}}
Assignee
Assign to
Time tracking