Ganhe até 18 endpoints por recurso ao estender as bases do starter. Read-only tambem e suportado.
import org.praxisplatform.uischema.annotation.ApiGroup;
import org.praxisplatform.uischema.annotation.ApiResource;
@ApiResource(ApiPaths.HumanResources.PESSOAS)
@ApiGroup("human-resources")
public class PessoaController extends AbstractCrudController<Pessoa, PessoaDTO, Long, PessoaFilterDTO> {
// injete service/repository conforme a arquitetura da aplicacao
}
@ApiResource ja incorpora @RestController e @RequestMapping; nao e necessario declarar @RestController separadamente.
Prefira constantes de path no projeto da aplicacao e use @ApiGroup para organizar a documentacao OpenAPI por contexto.
/{id}/all/filter/filter/cursor/locate/stats/group-by/stats/timeseries/stats/distribution/by-ids/options/filter/option-sources/{sourceKey}/options/filter/options/by-ids/option-sources/{sourceKey}/options/by-ids//{id}/{id}/batch/schemas → /schemas/filtered@ApiResource/@RequestMapping.option-sources para fontes canonicas registradas.group-by, timeseries e distribution./schemas integrada ao /schemas/filtered.Use AbstractReadOnlyController para manter os endpoints de leitura e responder 405 Method Not Allowed nas operacoes de escrita.
O recurso continua com leitura, filtros, options, option-sources e schema x-ui, sem precisar duplicar controller.