Details

    • Type: Bug Bug
    • Status: In Progress
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 2.2.5
    • Fix Version/s: None
    • Component/s: runtime
    • Labels:
      None
    • Environment:

      JDK6u35, JDK7u7 Win7 64

      Description

      There is a bug in com.sun.xml.bind.v2.runtime.output.NamespaceContextImpl

      NamespaceContextImpl reuses NamespaceContextImpl.Element objects to generate prefixes.
      NamespaceContextImpl.Element.setTagName(Name tagName, Object outerPeer) doesn't clean up NamespaceContextImpl.Element.elementLocalName
      When the element is reused in
      NamespaceContextImpl.declareNsUri(String uri, String preferedPrefix, boolean requirePrefix) {
      ...
      if (current.elementLocalName!=null)

      { // CHANGES A NAME TO THOSE LEFT FROM AN OTHER NODE!!! current.setTagName(size, current.elementLocalName, current.getOuterPeer()); }

      ...
      }

      Solution is to clean elementLocalName in

      public void setTagName( Name tagName, Object outerPeer ) {
      assert tagName!=null;
      this.elementName = tagName;
      this.elementLocalName = null; // +
      this.outerPeer = outerPeer;
      }

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Iaroslav Savytskyi
            Reporter:
            ratoo
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: