gpt4 book ai didi

java - Jersey (Jax-RS) & EL

转载 作者:行者123 更新时间:2023-11-30 07:37:12 24 4
gpt4 key购买 nike

我试图让 Controller 通过表达式语言过滤器返回 View ,但不知道如何让 Jersey 使用 EL 来过滤 View 。

使用 EL 标签查看:

<html>
<title>%{msg}</title>
</html>

Controller :

@GET
@Produces("text/html")
public Response viewEventsAsHtml(){
String view=null;
try {
view=getViewAsString("events");
}catch(IOException e){
LOG.error("unable to load view from file",e);
return null;
}
Response.ResponseBuilder builder=Response.ok(view, MediaType.TEXT_HTML);
return builder.build();
}

如何让 Controller 用某个任意值替换 View 中的 ${msg} 部分?

最佳答案

如果您正在使用 Jersey,那么它提供了从资源返回一个 Viewable 的能力,这将 process默认为jsp。

Jersey 资源示例

@Path("/patient")
public class PatientResource {
@GET @Path("/{patientId}") @Produces(MediaType.TEXT_HTML)
public Viewable view(@PathParam("patientId") int patientId) {
return new Viewable("/patient.jsp", Integer.toString(patientId));
}
}

患者.jsp 示例

<span>${it}</span>

注意:Jersey 将您传递给 Viewable 的对象映射为 jsp 中的“它”。

将 Jersey 转发到 jsp 之后,您只需添加一个 EL implementation到您的应用程序服务器或 servlet 容器。

关于java - Jersey (Jax-RS) & EL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2857292/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com