RolesAllowed in Jersey3
Ref: Jersey ResourceConfig doesn’t auto discover but Application does?
There are two ways to achieve:
- Applicationwith- Feature: this would auto discover
1
2
3
4
5
6
import jakarta.ws.rs.ApplicationPath;
import jakarta.ws.rs.core.Application;
@ApplicationPath("/api")
public class RestApplication extends Application {}
1
2
3
4
5
6
7
8
9
10
11
12
13
import jakarta.ws.rs.core.Feature;
import jakarta.ws.rs.core.FeatureContext;
import jakarta.ws.rs.ext.Provider;
import org.glassfish.jersey.server.filter.RolesAllowedDynamicFeature;
@Provider
public class ClassPathScanWorkAroundFeature implements Feature {
	@Override
	public boolean configure(FeatureContext featureContext) {
		featureContext.register(RolesAllowedDynamicFeature.class);
		return true;
	}
}
- ResourceConfigwon’t auto discover, need to manually assign packages to scan
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import jakarta.ws.rs.ApplicationPath;
import org.glassfish.jersey.server.ResourceConfig;
import org.glassfish.jersey.server.filter.RolesAllowedDynamicFeature;
@ApplicationPath("/api")
public class RestApplication extends ResourceConfig {
	public RestApplication() {
		packages(
				"tw.rainbow.edu.personcheckin.manage.filter",
				"tw.rainbow.edu.personcheckin.manage.endpoint",
				"tw.rainbow.edu.personcheckin.manage.resource");
		register(RolesAllowedDynamicFeature.class);
	}
}
 This post is licensed under  CC BY 4.0  by the author.