Skip to content

Restlet 2.3.2 jee apispark Swagger integration broken #1068

Open
@bill-okara

Description

@bill-okara

org.restlet.jee:org.restlet.ext.swagger:jar:2.3.2 has a dependency on:
com.wordnik:swagger-models:jar:1.5.3-M1
com.wordnik:swagger-annotations:jar:1.5.3-M1

But swagger-annotations-1.5.3 has changed the ApiOperation.tags from:
String tags()
to
String[] tags()

As a result, the code in:

org.restlet.ext.apispark.internal.introspection.helper.SwaggerAnnotationUtils

    public static void processApiOperation(ApiOperation apiOperation,
            Resource resource, Operation operation) {
        ...
        if (!StringUtils.isNullOrEmpty(apiOperation.tags())) {
            List<String> tags = StringUtils.splitAndTrim(apiOperation.tags());
            for (String tag : tags) {
                if (!resource.getSections().contains(tag)) {
                    resource.getSections().add(tag);
                }
            }
        }
        ...
    }

will generate errors:

java.lang.NoSuchMethodError: com.wordnik.swagger.annotations.ApiOperation.tags()Ljava/lang/String;
    at org.restlet.ext.apispark.internal.introspection.helper.SwaggerAnnotationUtils.processApiOperation(SwaggerAnnotationUtils.java:194)
    at org.restlet.ext.apispark.internal.introspection.helper.SwaggerAnnotationIntrospectionHelper.processOperation(SwaggerAnnotationIntrospectionHelper.java:70)
    at org.restlet.ext.apispark.internal.introspection.application.ResourceCollector.collectResource(ResourceCollector.java:129)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions