2016-09-19 2 views
0

JSP Действие:модель не работает в джерси

@GET 
@Path("/test") 
@Produces("text/html") 
public Response test() 
{ 
    Map<String, Object> map = new HashMap<>(); 
    map.put("name", "pedja1"); 
    return Response.ok(new Viewable("/test", map)).build(); 
} 

test.jsp:
Он в папке webapp/WEB-INF/jsp

<%@page contentType="text/html"%> 
<%@page pageEncoding="UTF-8"%> 
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>Test</title> 
</head> 
<body> 
<h1>Hi ${model.name}!</h1> 

</body> 
</html> 

у меня есть это в web.xml:

<init-param> 
     <param-name>jersey.config.server.mvc.templateBasePath.jsp</param-name> 
     <param-value>/WEB-INF/jsp</param-value> 
    </init-param> 
    <init-param> 
     <param-name>jersey.config.server.provider.classnames</param-name> 
     <param-value>org.glassfish.jersey.server.mvc.jsp.JspMvcFeature</param-value> 
    </init-param> 
    <init-param> 
     <param-name>jersey.config.servlet.filter.staticContentRegex</param-name> 
     <param-value>/(resources|(WEB-INF/jsp))/.*</param-value> 
    </init-param> 

Страница получает но он печатает Hi ${model.name}!.

+0

Возможный дубликат [JSP 2.2 EL так ли ключевое слово в Просмотр в Джерси - где это задокументировано?] (Http://stackoverflow.com/questions/17076829/jsp-2-2-el-it-keyword-in-jersey-viewable-where-is-it-documented) – AxelH

ответ

0

Здесь мне удалось найти документ, где ответ дубликата пришел из:

https://blogs.oracle.com/sandoz/entry/mvcj

поддержку JSP

Джерси обеспечивает поддержку MVC для страниц JSP. Существует шаблон JSP , который разрешает абсолютные ссылки шаблонов на обрабатываемые ссылочные позиции шаблонов, которые являются страницами JSP, следующим образом: , если ссылка на шаблон не заканчивается на «.jsp», добавьте ее в ссылку; и

, если Servlet.getResource возвращает ненулевое значение для приложенного ссылки затем вернуть прилагаемую ссылку в качестве ссылки обрабатываемой шаблона в противном случае возвращают нуль.

Таким образом, абсолютная ссылка шаблон "/ COM/Foo/Foo/индекс" будет решил "/com/foo/Foo/index.jsp", если существует страница JSP «/ COM/Foo/Foo /index.jsp "в веб-приложении.

Джерси назначит экземпляр модели атрибуту с именем «it». Так в случае неявного примера можно получить доступ к свойству Foo на контроллере Foo следующим образом:

$ {it.foo}

Смежные вопросы