When using Element#addClassName (in mixing enhancing component class), I noticed that I was getting two 'class' attributes in my element - rather than the one I was expecting. First I bumped into
TAP5-708 and TAP5-804, which seem to fix only some part of the problem.
TAP5-804 will produce correct result and even the tests. But there is stil one situation, where there are two class attributes generated. Consider this code:
Code from mixin:
Produces this output:
<div class="navbar-fixed-top" class="navbar">
Problem is that SaxTemplateParser provides "" namespace and Element.addClassName will use null namespace, so another class attribute is added. Tests will pass, because Element.attribute provides null namespace. But I want to add another class name to one present in template.
Interesting part of
TAP5-708 is that supplied patch changed default namespace in Element.attribute and in Element.forceAttributes from null to "". So states event this comment: https://issues.apache.org/jira/browse/TAP5-708?focusedCommentId=12773672&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-12773672. But this change is not present in source code.