Changeset 2199


Ignore:
Timestamp:
09/10/12 09:11:41 (12 years ago)
Author:
oschonef
Message:
  • fix in-valid XML output with XCQL scanClause
Location:
SRUServer/trunk/src/main/java/eu/clarin/sru/server
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • SRUServer/trunk/src/main/java/eu/clarin/sru/server/SRUServer.java

    r2101 r2199  
    852852        out.writeStartElement(SRU_NS, "xScanClause");
    853853        out.writeDefaultNamespace(SRU_XCQL_NS);
    854         out.writeXCQL(cql);
     854        out.writeXCQL(cql, false);
    855855        out.writeEndElement(); // "xScanClause" element
    856856
     
    906906        out.writeStartElement(SRU_NS, "xQuery");
    907907        out.writeDefaultNamespace(SRU_XCQL_NS);
    908         out.writeXCQL(cql);
     908        out.writeXCQL(cql, true);
    909909        out.writeEndElement(); // "xQuery" element
    910910
  • SRUServer/trunk/src/main/java/eu/clarin/sru/server/SRUXMLStreamWriter.java

    r2103 r2199  
    414414
    415415
    416     public void writeXCQL(CQLNode query) throws XMLStreamException {
     416    public void writeXCQL(CQLNode query, final boolean searchRetrieveMode)
     417            throws XMLStreamException {
    417418        /*
    418419         * HACK: Parsing the XCQL to serialize is wasting resources.
     
    429430                        String qName, Attributes attributes)
    430431                                throws SAXException {
     432                    if (!searchRetrieveMode && qName.equals("searchClause")) {
     433                        return;
     434                    }
    431435                    try {
    432436                        SRUXMLStreamWriter.this.writeStartElement(qName);
     
    443447                public void endElement(String uri, String localName,
    444448                        String qName) throws SAXException {
     449                    if (!searchRetrieveMode && qName.equals("searchClause")) {
     450                        return;
     451                    }
    445452                    try {
    446453                        SRUXMLStreamWriter.this.writeEndElement();
Note: See TracChangeset for help on using the changeset viewer.