?????? String[0]=2
?????? String[1]=0
???????????? .
???????????? .
???????????? .
怎么會(huì)這樣?Google了一下,原來(lái)split的參數(shù)是regrex(正則表達(dá)式),一些特殊字符要用\來(lái)轉(zhuǎn)義,上面的正確寫法為:split("\\|")。
參看:http://bbs.java.ccidnet.com/simple/index.php?t20665.html
??? 想要在Myfaces項(xiàng)目中使用Sitemesh, 結(jié)果發(fā)現(xiàn)Jsf的標(biāo)準(zhǔn)UI沒有問題,可使用了tomahawk的組件卻顯示不出來(lái)。是什么原因呢???
??? 原來(lái)是因?yàn)閠omahawk使用了Filter(ExtensionsFilter)來(lái)實(shí)現(xiàn),Sitemesh也使用Filter來(lái)實(shí)現(xiàn)(太優(yōu)美了),這就存在一個(gè)誰(shuí)先誰(shuí)后的問題了。解決方法:
首先,把sitemesh的filter map放到最后。然后把tomahawkr的ExtensionsFilter改為如下:
????<filter-mapping>
??????? <filter-name>MyFacesExtensionsFilter</filter-name>
??????? <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
??? </filter-mapping>
??? <filter-mapping>
??????? <filter-name>MyFacesExtensionsFilter</filter-name>
??????? <url-pattern>*.faces</url-pattern>
??? </filter-mapping>
注意:/faces/myFacesExtensionResource/*在上面,對(duì)應(yīng)的也要修改myfaces的servlet-mapping,如下:
????<servlet-mapping>
??????? <servlet-name>Faces Servlet</servlet-name>
??????? <url-pattern>*.faces</url-pattern>
??? </servlet-mapping>
???
??? <servlet-mapping>
??????? <servlet-name>Faces Servlet</servlet-name>
??????? <url-pattern>*.jsf</url-pattern>
??? </servlet-mapping>
*.jsf這一項(xiàng)是要加的(我實(shí)際上只使用*.faces),不然過不去的。
???