You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@chemistry.apache.org by "Alan Gairey (JIRA)" <ji...@apache.org> on 2013/07/04 17:11:48 UTC

[jira] [Created] (CMIS-686) Cannot execute query via Drupal CMIS API client

Alan Gairey created CMIS-686:
--------------------------------

             Summary: Cannot execute query via Drupal CMIS API client
                 Key: CMIS-686
                 URL: https://issues.apache.org/jira/browse/CMIS-686
             Project: Chemistry
          Issue Type: Bug
          Components: opencmis-commons
    Affects Versions: OpenCMIS 0.9.0
            Reporter: Alan Gairey


Using the Query module of version 7.x-1.3 of the Drupal CMIS API client, a query fails against a server built using OpenCMIS 0.9.0.

This is down to two issues:

1) The Drupal CMIS API client now wraps the query in a CDATA section in the XML that's POSTed to the server. The XMLUtils.readText method does not handle the XMLStreamReader.CDATA event; as a result, an empty statement string is returned.

2) The Drupal CMIS API client can also send empty XML elements for the options searchAllVersions, includeAllowableActions, etc. Unfortunately the XML parser interprets these as empty strings (rather than null values). The various read... methods in XMLWalker (readBoolean, readInteger, readDecimal, readDateTime) should return a null value if the text is interpreted as an empty string; for example:

{code}
protected Boolean readBoolean(final XMLStreamReader parser) throws XMLStreamException {
    String value = readText(parser);
    if (value == null || "".equals(value)) {
        return null;
    }
    ...
{code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira