While referring to the Servlet 3.0 Specification. Section 8.2.3.
I came across the following lines in Point 5.c.
The metadata-complete attribute when set to true in the main web.xml, is
considered complete and scanning of annotations and fragments will not occur
at deployment time. The absolute-ordering and ordering elements will
be ignored if present. When set to true on a fragment, the metadatacomplete
attribute applies only to scanning of annotations in that particular
The 2nd sentence in the above passage, appeared to be contradictory and counter intuitive.
Wanted some clarification regarding the same.
The absolute-ordering and ordering elements will
be ignored if present.
I have tried it with an example. The servlets and listeners in the web app and the web fragments, all work. There is no deployment error or any other exception.
I used Glassfish 4.0 and Glassfish 3.1.2 to test.
Below are the 3 DDs in question,
web-fragment.xml (Web Fragment A)
web-fragment.xml (Web Fragment B)
Either this is a typo in the specification or is a genuine bug.
If someone could confirm it, may it can be raised in the correct forum(I don't know which one, may be someone can guide me on this.)
Although it can be discussed if metadata-complete=true will disable web fragments, it is not 100% clear.
There are some sentences in the spec that only the annotations will not be recognized.
a similar query is done in the JCP at: https://java.net/jira/browse/SERVLET_SPEC-36
Probably this thread should be in a different forum.
Thanks for that URL. The discussion there was quiet comprehensive.
I had been looking for something like that so I could raise a bug/issue.
How did you come across it? I guess it takes a Java Net Id to raise bugs/issues there.