Refactor XMLWriter startTag to allow arbitrary attributes to be written
-----------------------------------------------------------------------
Key: SOLR-1592
URL: https://issues.apache.org/jira/browse/SOLR-1592
Project: Solr
Issue Type: Improvement
Affects Versions: 1.4
Environment: My MacBook laptop.
Reporter: Chris A. Mattmann
Fix For: 1.5
Attachments: SOLR-1592.Mattmann.112209.patch.txt
There are certain cases in which a user would like to write arbitrary
attributes as part of the XML output for a field tag. Case in point: I'd like
to declare tags in the SOLR output that are e.g., georss namespace, like
georss:point. Other users may want to declare myns:mytag tags, which should be
perfectly legal as SOLR goes. This isn't currently possible with the XMLWriter
implementation, which curiously only allows the attribute "name" to be included
in the XML tags.
Coincidentally, users of XMLWriter aren't allowed to modify the <response outer
XML tag to include those arbitrary namespaces (which was my original thought as
a workaround for this). This wouldn't matter anyways, because by the time the
user got to the FieldType#writeXML method, the header for the XML would have
been written anyways.
I've developed a workaround, and in doing so, allowed something that should
have probably been allowed in the first place: allow a user to write arbitrary
attributes (including xmlns:myns="myuri") as part of the XMLWriter#startTag
function. I've kept the existing #startTag, but replaced its innards with
versions of startTag that include startTagWithNamespaces, and startTagNoAttrs.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.