[英]Adding conditions in web.xml
這是我的web.xml的一部分
<error-page>
<error-code>500</error-code>
<location>/index</location>
</error-page>
有沒有辦法告訴web.xml文件在開發模式下:
<location>/displayException</location>
對於上述location property
?
或通過代碼添加條件的任何方式?
嘗試這樣做的目的是:在開發模式中,我希望在頁面和實時模式中看到異常,我想在發生異常時將其重定向到默認頁面。
您無法在web.xml
級別執行此操作。 如果web.xml
尊重系統屬性但它沒有,這可能是一個很酷的功能。
所以你只能在代碼中這樣做。 幸運的是,你有各種可能性。 您可以將錯誤URL映射到JSP,您可以根據系統屬性或存儲在屬性文件,DB或其他所需位置的其他參數來實現邏輯。 您也可以在HTTP過濾器中執行此操作。
您還可以創建web.xml的多個版本:一個用於生產,另一個用於測試。 如果要避免重復,請使用模板中的自動生成創建這些版本。
在Wildfly中,有一種不可移植的方法可以在web.xml(以及其他類似persistence.xml)中啟用系統屬性評估。 為此,請在ee
子系統中的服務器配置(standalone.xml或其他)中指定以下內容:
<subsystem xmlns="urn:jboss:domain:ee:2.0">
<spec-descriptor-property-replacement>true</spec-descriptor-property-replacement>
<!-- ... -->
</subsystem>
然后你可以做這樣的事情:
<location>${myapp.errorpage.location}</location>
您可以在錯誤或位置頁面中使用if語句。 web.xml
不支持if語句。
//error page
if("blog".equals(url))
blog content ......
else if("profile".equals(url))
profile content ......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.