Class Application

java.lang.Object
javax.ws.rs.core.Application
systextil.plugins.webapi.Application

public final class Application extends javax.ws.rs.core.Application
Application carrega todos os plugins que forneção uma implementação para o serviço WebServiceApi e disponibiliza essas classes para que sejam utilizadas pelo Jersey Framework
Essa aplicação está configurada para responder a url "/plugins/*", logo, os recursos definidos no seu plugin devem ter o nome do plugin na url para evitar conflitos.
Por exemplo:
 
 @Path("/myPlugin")
 public MyResource {
           
     @GET     
     public String index() {
         return "Hello from MyPlugin!";
     }
 }
 
 public MyPluginApi implements WebServiceApi {
     public Set<Class<?>> getServices() {
         Set<Class<?>> c = new HashSet<Class<?>>();
         c.add(MyResource.class);
         return c;      
     }
     
     public String getBasePath() { return "myPlugin"; }
 }
 
 
O recurso acima poderia ser acessado na url "/plugins/myPlugin"

O recurso Application.AssetsResource já é adicionado por padrão a essa aplicação e permite o acesso a arquivos estáticos dos plugins.
Author:
Tiago H. Engel
  • Constructor Details

    • Application

      public Application()
  • Method Details

    • getClasses

      public Set<Class<?>> getClasses()
      Overrides:
      getClasses in class javax.ws.rs.core.Application
    • getSingletons

      public Set<Object> getSingletons()
      Overrides:
      getSingletons in class javax.ws.rs.core.Application