You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by "Simon Barere (JIRA)" <ji...@apache.org> on 2007/10/25 01:54:50 UTC

[jira] Created: (WSCOMMONS-269) Neethi's deep normalization does not normalize assertions nested within an XmlPrimtiveAssertion

Neethi's deep normalization does not normalize assertions nested within an XmlPrimtiveAssertion
-----------------------------------------------------------------------------------------------

                 Key: WSCOMMONS-269
                 URL: https://issues.apache.org/jira/browse/WSCOMMONS-269
             Project: WS-Commons
          Issue Type: Bug
          Components: Policy
         Environment: Windows XP
Java 1.4
            Reporter: Simon Barere


Given the following sample compact policy:

	<wsp:Policy>
		<wsam:Addressing>
			<wsp:Policy>
				<wsp:ExactlyOne>
					<wsp:All>
						<wsam:AnonymousResponses/>
					</wsp:All>
					<wsp:All>
						<wsam:NonAnonymousResponses/>
					</wsp:All>
				</wsp:ExactlyOne>
			</wsp:Policy>
		</wsam:Addressing>
	</wsp:Policy>

The resulting normalized version should look something like:
	<wsp:Policy>
		<wsp:ExactlyOne>

			<wsp:All>
				<wsam:Addressing>
					<wsp:Policy>
						<wsp:All>
							<wsam:AnonymousResponses/>
						</wsp:All>
					</wsp:Policy>
				</wsam:Addressing>			
			</wsp:All>

			<wsp:All>
				<wsam:Addressing>
					<wsp:Policy>
						<wsp:All>
							<wsam:NonAnonymousResponses/>
						</wsp:All>
					</wsp:Policy>
				</wsam:Addressing>			
			</wsp:All>

		</wsp:ExactlyOne>	
	</wsp:Policy>

When Neethi processes this without using AssertionBuilders, it places the entire <Addressing> assertion into a single XmlPrimtiveAssertion. When normalizing deeply, the XmlPrimtiveAssertion class is asked to normalize this large assertion. Yet the XmlPrimtiveAssertion only seems to normalize an Assertion if it is set to optional (creating two alternatives from one). To normalize this compact <Addressing> assertion would mean to inspect its children looking for policy operators, which XmlPrimtiveAssertion does not seem to do.

The result is that when normalization completes the policy is not actually normalized. What is the correct solution to get this sort of policy fully normalized?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: commons-dev-help@ws.apache.org