AnsweredAssumed Answered

CMIS Custom Aspect Query Exception

Question asked by pb8226 on Feb 1, 2013
Latest reply on Feb 1, 2013 by pb8226
Hi everyone,

I'm performing a cmis query with a custom aspect. I spent some time searching the forums and trying different things but no luck. I think I copied the examples exactly.  When I perform the query with a custom type, everything works well.  Also when I try to perform the query with an out of the box aspect such as cm:titled, everything works well again.  The problem happens when I try to run a CMIS query on a custom aspect. My question specifically is, is there anything special that needs to be done when adding custom aspects to your model to make them exposed to cmis?
The error in the logs is
2013-02-01 14:57:21,036  ERROR [solr.servlet.SolrDispatchFilter] [http-8443-1] org.apache.chemistry.opencmis.commons.exceptions.CmisInvalidArgumentException: Type is unsupported in query: mis:recordable

Here's my setup;

my problem query

select d.*, o.* from mis:museumRecord as d join mis:recordable as o on d.cmis:objectId = o.cmis:objectId


Java
alfresco-opencmis-extension version 0.4
alfresco enterprise 4.1.2
atom pub url http://localhost:8080/alfresco/cmisatom
object factory class org.alfresco.cmis.client.impl.AlfrescoObjectFactoryImpl

my custom aspect definition

   <aspect name="mis:recordable">
         <title>Recordable</title>
         <parent>cm:generalclassifiable</parent>
         <properties>
                <property name="mis:sisn">
               <type>d:text</type>
               <index enabled="true">
                  <atomic>true</atomic>
                  <stored>true</stored>
                  <tokenised>true</tokenised>
               </index>      
                </property>
                <property name="mis:extent">
               <type>d:text</type>
               <multiple>true</multiple>
               <index enabled="true">
                  <atomic>true</atomic>
                  <stored>true</stored>
                  <tokenised>true</tokenised>
               </index>   
                </property>
                <property name="mis:accessionNumber">
               <type>d:text</type>
               <multiple>true</multiple>
               <index enabled="true">
                  <atomic>true</atomic>
                  <stored>true</stored>
                  <tokenised>true</tokenised>
               </index>
                </property>
         </properties>
         <associations>
               <association name="mis:creator">
                  <source>
                    <mandatory>false</mandatory>
                    <many>true</many>
                  </source>
                  <target>
                    <class>mis:person</class>
                    <mandatory>false</mandatory>
                    <many>true</many>
                  </target>
               </association>
         </associations>
      </aspect>


type definition

   <type name="mis:museumRecord">
            <title>Museum Record</title>
            <parent>cm:content</parent>
            <properties>
       </properties>
            <mandatory-aspects>
      <aspect>cm:titled</aspect>
                <aspect>mis:recordable</aspect>
            </mandatory-aspects>
   </type>

Outcomes