2013-06-11 29 views
5

Đây là một phần của web.xml của tôiđiều kiện Thêm trong web.xml

<error-page> 
    <error-code>500</error-code> 
    <location>/index</location> 
    </error-page> 

Có cách nào để nói đến file web.xml rằng trong chế độ phát triển:

<location>/displayException</location>

cho trên location property?

hoặc bất kỳ cách nào để thêm điều kiện thông qua mã?

Mục đích cố gắng thực hiện điều này là: Ở chế độ phát triển Tôi muốn xem ngoại lệ trong trang và ở chế độ trực tiếp. Tôi muốn chuyển hướng anh ấy đến trang mặc định khi có ngoại lệ.

Trả lời

3

Bạn không thể làm điều đó ở cấp độ web.xml. Đây có thể là một tính năng tuyệt vời nếu web.xml tôn trọng thuộc tính hệ thống nhưng nó không.

Vì vậy, bạn chỉ có cách thực hiện điều này bằng mã. May mắn là bạn có nhiều khả năng khác nhau. Bạn có thể ánh xạ URL lỗi của mình tới JSP nơi bạn triển khai logic dựa trên thuộc tính hệ thống hoặc tham số khác được lưu trữ trong tệp thuộc tính, DB hoặc nơi bạn muốn. Bạn cũng có thể làm điều đó trong bộ lọc HTTP.

Bạn cũng có thể tạo một số phiên bản của tệp web.xml: một phiên bản cho sản xuất, khác cho thử nghiệm. Nếu bạn muốn tránh trùng lặp, hãy tạo các phiên bản này bằng cách sử dụng tạo tự động từ mẫu.

+0

** một số phiên bản của web.xml ** của bạn sẽ làm điều này.Bởi vì có những thay đổi về máy chủ như thế này.Cảm ơn. –

1

Trong Wildfly có một cách không di động để kích hoạt tính năng đánh giá thuộc tính hệ thống trong web.xml (và các tệp khác, như persistence.xml). Để làm điều này xác định như sau trong cấu hình máy chủ của bạn (standalone.xml hoặc khác), trong hệ thống phụ ee:

<subsystem xmlns="urn:jboss:domain:ee:2.0"> 
    <spec-descriptor-property-replacement>true</spec-descriptor-property-replacement> 
    <!-- ... --> 
</subsystem> 

Sau đó, bạn có thể làm những việc như thế này:

<location>${myapp.errorpage.location}</location> 
0

Bạn có thể sử dụng nếu phát biểu trong trang lỗi hoặc vị trí. web.xml không hỗ trợ báo cáo.

//error page 
if("blog".equals(url)) 
    blog content ...... 
else if("profile".equals(url)) 
    profile content ...... 
+0

// trang lỗi nếu ("blog" .equals (url)) nội dung blog ...... khác nếu ("tiểu sử" .equals (url)) nội dung tiểu sử ...... –

Các vấn đề liên quan