2013-06-12 17 views
1

我發現,如果我有一個Viewable(球衣)傳遞模式,以JSP,然後訪問它的前綴來itJSP 2.2澤西島可視化EL關鍵字 - 它在哪裏記錄?

例如地圖鍵的方式

的index.jsp

<html> 
<body> 
<h2>Hello World ${it.foo}!</h2> 
</body> 
</html> 

的JAX-RS資源的方法:

@GET 
@Path("index") 
public Viewable index(@Context HttpServletRequest request) { 
    System.out.println("/INDEX called"); 
    HashMap<String, String> model = new HashMap<String, String>(); 
    model.put("foo","bar"); 
    return new Viewable("/index.jsp", model); 
} 

我是在此基礎上的資源:http://blog.usul.org/using-jsp-in-a-jersey-jax-rs-restful-application/

但我想知道,什麼是it它從哪裏來,是澤西特有的嗎?如果是的話是它記錄在哪裏(很難搜索「它」作爲谷歌傾向於從搜索中刪除,沒有雙關語意)

找不到了Java EE文檔中的任何提及。

回答

4

this documentation的第17.4節中。它指出:

澤西將分配模型實例到名爲「它」的屬性。所以 在隱例子的情況下,可以從JSP模板referece對富資源foo的 屬性如下:

<h1>${it.foo}</h1>

所以it只是一個新澤西特定模型屬性。由於它是一個模型屬性,在視圖呈現之前的某個時刻,它會被添加到請求屬性中。然後可以使用EL訪問器${}訪問它。如果它被命名爲jerseyGuy您就可以訪問它${jerseyGuy}

EL,解析${...}表達式,使用PageContext#findAttribute()將屬性名稱解析爲頁面,請求,會話或應用程序上下文中的某個屬性。

+0

嗨,只是信息,鏈接沒有指向文檔了(當然,它是不是真的最新的),這裏是一個工作環節:https://blogs.oracle.com/sandoz/entry/mvcj – AxelH

+0

@AxelH謝謝,編輯。 –