Ricerca di una modifica al comportamento nell'elaborazione dell'elemento absolute-ordering

Servlet 3.1 introduce una modifica nell'elaborazione dell'elemento <absolute-ordering> quando il file web.xml contiene l'attributo metadata-complete="true". In Servlet 3.0, quando l'attributo metadata-complete è impostato su "true", vengono utilizzati tutti gli archivi di frammenti web. In Servlet 3.1, l'elemento <absolute-ordering> viene considerato completo, il che determina l'esclusione dall'elaborazione dei frammenti web non elencati nell'elemento <absolute-ordering>. La funzione Servlet 3.1 potrebbe cambiare il comportamento esistente dell'applicazione attraverso l'esclusione dei frammenti web precedentemente inclusi.

Questa regola contrassegna l'elemento <name>B</name> nel file web-fragment.xml se il file web.xml contiene l'attributo metadata-complete="true" e l'elemento <absolute-ordering> e non contiene una voce per il nome del frammento web.

Il seguente esempio dimostra la modifica al comportamento quando si utilizza una combinazione del file web.xml e del file web-fragment.xml:

web.xml:

<absolute-ordering>
	<name>A</name>
	<others/>
</absolute-ordering>

web-fragment.xml:

<web-fragment>
	<name>B</name>
</web-fragment>

In Servlet 3.0, il frammento web B viene incluso nell'elaborazione. In Servlet 3.1, non è incluso. Per includere il frammento web B nell'elaborazione, aggiungere un elemento <name>B</name> nella posizione appropriata all'interno dell'elemento <absolute-ordering> nel file web.xml.

Per ulteriori informazioni sulle modifiche al comportamento di Servlet 3.1, consultare la seguente risorsa: Servlet 3.1 behavior changes.