1. 程式人生 > >關於Servlet3.0 註解無效的一種情況

關於Servlet3.0 註解無效的一種情況

解釋

Servlet 3.0 的部署描述檔案 web.xml 的頂層標籤 有一個 metadata-complete 屬性,該屬性指定當前的部署描述檔案是否是完全的。如果設定為 true,則容器在部署時將只依賴部署描述檔案,忽略所有的註解(同時也會跳過 web-fragment.xml 的掃描,亦即禁用可插性支援,具體請看後文關於 可插性支援的講解);如果不配置該屬性,或者將其設定為 false,則表示啟用註解支援(和可插性支援)

註解有效的web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns
="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
</web-app>

註解無效的web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0" metadata-complete="true"> </web-app>