在符合J2EE Web应用程序版本2.4的web.xml中的元素中有多个元素可以这样:
<filter-mapping>
<filter-name>SomeFilter</filter-name>
<url-pattern>*.htm</url-pattern>
<url-pattern>*.do</url-pattern>
</filter-mapping>
我从这里查找了XSD“web-app_2_4.xsd”文件:http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd 而定义如下:
<xsd:complexType name="filter-mappingType">
<xsd:annotation>
<xsd:documentation>
some documentation here
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="filter-name"
type="j2ee:filter-nameType"/>
<xsd:choice>
<xsd:element name="url-pattern"
type="j2ee:url-patternType"/>
<xsd:element name="servlet-name"
type="j2ee:servlet-nameType"/>
</xsd:choice>
<xsd:element name="dispatcher"
type="j2ee:dispatcherType"
minOccurs="0" maxOccurs="4"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:ID"/>
</xsd:complexType>
网址格式定义如下所示:
所以我认为,我们可以在元素中包含多个元素。 然而,我的Eclipse IDE似乎并不同意我的意见,并期望有一个“调度程序”标记。
见图片:
答案 0 :(得分:14)
显然不是,但你可以:
<filter-mapping>
<filter-name>SomeFilter</filter-name>
<url-pattern>*.htm</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>SomeFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
答案 1 :(得分:4)
1
的默认值为maxOccurs
,minOccurs
元素的默认值为sequence
:<{3}}。
choice
只允许其中一个元素:
https://msdn.microsoft.com/en-us/library/ms256089(v=vs.110).aspx