Verificar uma mudança de comportamento no processamento do elemento absolute-ordering

O Servlet 3.1 apresenta uma mudança na forma como o elemento <absolute-ordering> é processado quando o arquivo web.xml contém o atributo metadata-complete="true". No Servlet 3.0, quando o atributo metadata-complete está configurado como "true", todos os archives de fragmento da web são usados. No Servlet 3.1, o elemento <absolute-ordering> é considerado estar completo, o que faz com que os fragmentos da web que não estão listados no elemento <absolute-ordering> sejam excluídos do processamento. O recurso do Servlet 3.1 pode mudar o comportamento do aplicativo existente, excluindo fragmentos da web que foram anteriormente incluídos.

Essa regra sinalizará o elemento <name>B</name> no arquivo web-fragment.xml se o arquivo web.xml contiver o atributo metadata-complete="true" e o elemento <absolute-ordering> não contiver uma entrada para o nome do fragmento da web.

O exemplo a seguir demonstra a mudança de comportamento quando você usa uma combinação de um arquivo web.xml e um arquivo web-fragment.xml:

web.xml:

< span class= "XmlElement"> < absolute-ordering> < /span>
	< span class= "XmlElement"> < name> < /span> A < span class="XmlElement"> < /name> < /span>
	< span class= "XmlElement"> < others/> < /span> < span class="XmlElement"> < /absolute-ordering> < /span>

web-fragment.xml:

< span class= "XmlElement"> < web-fragment> < /span>
	< span class= "XmlElement"> < name> < /span> B < span class="XmlElement"> < /name> < /span> < span class= "XmlElement"> < /web-fragment> < /span>

No Servlet 3.0, o fragmento da web B é incluído no processamento. No Servlet 3.1, ele não é incluído. Para incluir o fragmento da web B no processamento, inclua um elemento <name>B</name> na posição apropriada dentro do elemento <absolute-ordering> no arquivo web.xml.

Para mais informações sobre mudanças de comportamento do Servlet 3.1, veja o recurso a seguir: Mudanças de comportamento do Servlet 3.1.