我对 Quarkus 很陌生,我想知道如何覆盖提供错误日志的默认 404 页面,或者如何巧妙地将所有无法识别的 URL 重定向到 META-INF/recourses 目录中的自定义 HTML。
小智 6
使用 quarkus 0.20+ 你可以创建一个 ExceptionMapper,如下所示:
import java.util.Scanner;
import javax.ws.rs.NotFoundException;
import javax.ws.rs.core.Response;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
/**
* NotFoundExepptionMapper
*/
@Provider
public class NotFoundExeptionMapper implements ExceptionMapper<NotFoundException> {
@Override
public Response toResponse(NotFoundException exception) {
String text = new Scanner(this.getClass().getResourceAsStream("/META-INF/resources/notfound.html"), "UTF-8").useDelimiter("\\A").next();
return Response.status(404).entity(text).build();
}
}
Run Code Online (Sandbox Code Playgroud)
将页面保存在 /META-INF/resources/notfound.html 上,就完成了。
| 归档时间: |
|
| 查看次数: |
5447 次 |
| 最近记录: |