You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by "Nandana Mihindukulasooriya (JIRA)" <ji...@apache.org> on 2008/03/17 08:07:24 UTC
[jira] Resolved: (RAMPART-143) Policy with 'Layout' 'Lax' having no
subelements leads to a NullPointerException in PolicyEngine
[ https://issues.apache.org/jira/browse/RAMPART-143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nandana Mihindukulasooriya resolved RAMPART-143.
------------------------------------------------
Resolution: Fixed
> Policy with 'Layout' 'Lax' having no subelements leads to a NullPointerException in PolicyEngine
> ------------------------------------------------------------------------------------------------
>
> Key: RAMPART-143
> URL: https://issues.apache.org/jira/browse/RAMPART-143
> Project: Rampart
> Issue Type: Bug
> Components: rampart-policy
> Affects Versions: 1.3
> Environment: Windows Vista 32bit(XP32bit, Java 1.4.2, Eclipse 3.3
> Reporter: Heinz Zerbes
> Attachments: TelematikPolicy.xml
>
>
> I'm using a quit simple policy with Rampart. The Element 'Layout' having subelement 'Lax' wich itself has no more subelements or attributes, leades to a NullPointerException in PolicyEngine.processOperationElement:164. THe fact that 'Lax' has no subelements is not checked, thus the usage of this null (sub)element leads to a NullPointerException. The specification says explicitly that 'Lax' can be empty.
> The code from PolicyEngine.java:
> private static PolicyOperator processOperationElement(
> OMElement operationElement, PolicyOperator operator) {
> if (Constants.TYPE_POLICY == operator.getType()) {
> Policy policyOperator = (Policy) operator;
> OMAttribute attribute;
> OMNamespace namespace;
> QName key;
> // <<<<<<<<<<<<<<<<<< my comment: operationElement ist null because of missing subelement, tus next statement fails >>>>>>>>>>>>
> for (Iterator iterator = operationElement.getAllAttributes(); iterator
> .hasNext();) {
> attribute = (OMAttribute) iterator.next();
> namespace = attribute.getNamespace();
> if (namespace == null) {
> key = new QName(attribute.getLocalName());
> } else if (namespace.getPrefix() == null) {
> key = new QName(namespace.getNamespaceURI(), attribute
> .getLocalName());
> } else {
> key = new QName(namespace.getNamespaceURI(), attribute
> .getLocalName(), namespace.getPrefix());
> }
> policyOperator.addAttribute(key, attribute.getAttributeValue());
> }
> }
> OMElement childElement;
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.