Attualmente, faccio qualcosa di simile aJAX-RS: come estendere la classe dell'applicazione per scansionare i pacchetti?
import javax.annotation.Nonnull;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
@ApplicationPath("oauth")
public class OAuthApplication extends Application {
final Set<Class<?>> classes = new HashSet<>();
@Nonnull
@Override
public Set<Class<?>> getClasses() {
classes.add(RegisterResource.class);
return Collections.unmodifiableSet(classes);
}
}
No se aggiungo dieci nuovi Resource
s sul ApplicationPath
, ho bisogno di fare
classes.add(<ClassName>.class);
dieci volte, è noioso e talvolta dimentico pure .
JAX-RS
o RESTEasy
fornire il modo in cui posso menzionare il nome del pacchetto e le classi vengono scansionate sotto di esso?
So Jersey
ha qualcosa come
public class MyApplication extends ResourceConfig {
public MyApplication() {
packages("org.foo.rest;org.bar.rest");
}
}
tutti i pensieri/idee?
UPDATE
Sembra che possiamo fare in seguito web.xml
<context-param>
<param-name>resteasy.scan</param-name>
<param-value>true</param-value>
</context-param>
Esiste una specifica Java
equivalente?
L'ho usato ma all'inizio, mi ha dato 500 per non aver registrato MultiPartFeature e dopo averlo registrato, ha dato 404 per tutte le mie API. qualche idea? –