Can Enunciate generate docs for an API that handle

2020-07-13 08:27发布

问题:

Given an abstract, generic Resource class and a concrete implementation:

public abstract class AbstractResource<T> {

    @Autowired
    private SomeService<T> service;

    @Path("/{id}")
    @GET
    public T get(@PathParam("id") String id) {
        return service.get(id);
    }
}

@Path("/people")
public class PersonResource extends AbstractResource<Person> { }

It appears that when generating the docs for PersonResource, Enunciate is not picking up the fact that get() returns a Person.

  1. Person is not listed in the Data Model > Data Types section.

  2. Under the GET section, Response Body shows the element type as "(custom)".

Are these issues because of the use of generics as the entity types? Is there a way to hint to Enunciate what the real types are so the documentation can be generated correctly?

回答1:

Is Person annotated as @XmlRootElement? If so, is it included in the same project as PersonResource? If not, are you importing the Person class as described in Enunciate: Multi-Module Projects?