2011-09-03 126 views
2

很容易地與JSF2處理GET請求與此註釋:JSF2 URL GET參數

<f:metadata> 
    <f:viewParam name="id" value="#{bean.id}"/> 
    <f:viewParam name="name" value="#{bean.name}"/> 
    <f:event type="preRenderView" listener="#{bean.init}" /> 
</f:metadata> 

,並在我的豆init方法:

public void init(ComponentSystemEvent e) throws AbortProcessingException {...} 

這可以用類似test.jsf?id=8012&name=name訪問。是否有可能像REST中的@PathParam一樣使用它並編寫像test/8012/name這樣的URL?

PS:我知道有一個術語,這一點,但我不記得....

+3

REST風格的URL,友好的URL,漂亮的URL .. PrettyFaces! – BalusC

回答

3

做到這一點,最簡單的方法是使用PrettyFaces。你會是個pretty-config.xml文件,將這個樣子:

<url-mapping id="test"> 
    <pattern value="/test/#{id}/#{name}"/> 
    <view-id value="/faces/test.jsf"/> 
</url-mapping> 

真的,這是死的簡單。 PF會將路徑參數注入託管的bean中,如果願意,還可以隨後調用一個操作。我喜歡它。 :) The official documentation可能是你需要的一切。