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.