Topic
  • 7 replies
  • Latest Post - ‏2010-12-16T18:57:55Z by TigerTrix
SystemAdmin
SystemAdmin
32 Posts

Pinned topic Help CMIS Web Services

‏2010-12-02T02:47:16Z |
I am testing CMIS Web Services.

I am able to retrieve a document using ObjectService.

However running a query using DiscoveryService is failing.

Request

<soapenv:Envelope xmlns:soapenv=
"http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns=
"http://docs.oasis-open.org/ns/cmis/messaging/200908/"> <soapenv:Header/> <soapenv:Body> <ns:query> <ns:repositoryId>icmnlsdb</ns:repositoryId> <ns:statement>select * from member_doc</ns:statement> <ns:searchAllVersions>false</ns:searchAllVersions> <ns:includeAllowableActions>false</ns:includeAllowableActions> <ns:includeRelationships>false</ns:includeRelationships> <ns:renditionFilter></ns:renditionFilter> <ns:maxItems>25</ns:maxItems> <ns:skipCount></ns:skipCount> </ns:query> </soapenv:Body> </soapenv:Envelope>


Response

<soapenv:Envelope xmlns:soapenv=
"http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <soapenv:Fault> <faultcode>soapenv:Server</faultcode> <faultstring>CIL1500: The service cannot be completed. Explanation: This error can occur 

for the following reasons: - An error in the IBM CMIS application - An error on the repository Action: See the HTTP response or the WebSphere Application Server SystemOut.log file 

for more information and to review the stack trace 

for the exception. By default, the SystemOut.log file is in the [WAS_profile_location]/logs/[server]/logs subdirectory of the WebSphere Application Server installation directory.</faultstring> <detail> <ns2:cmisFault xmlns:ns2=
"http://docs.oasis-open.org/ns/cmis/messaging/200908/" xmlns=
"http://docs.oasis-open.org/ns/cmis/core/200908/"> <ns2:type>runtime</ns2:type> <ns2:code>500</ns2:code> <ns2:message>CIL1500: The service cannot be completed. Explanation: This error can occur 

for the following reasons: - An error in the IBM CMIS application - An error on the repository Action: See the HTTP response or the WebSphere Application Server SystemOut.log file 

for more information and to review the stack trace 

for the exception. By default, the SystemOut.log file is in the [WAS_profile_location]/logs/[server]/logs subdirectory of the WebSphere Application Server installation directory.</ns2:message> </ns2:cmisFault> </detail> </soapenv:Fault> </soapenv:Body> </soapenv:Envelope>


Sever log

I am seeing index out bounds exception. Can anyone confirm that they have the same problem


[12/1/10 16:41:51:605 EST] 00000061 cm            E com.ibm.content.cm.logging.Logger error   NativeException::mapToServiceMessage(): ERROR: DETECTED DKException, mapping to a services translated exception. [12/1/10 16:41:51:605 EST] 00000061 SystemOut     O LOG(E):   NativeException::mapToServiceMessage(): ERROR: DETECTED DKException, mapping to a services translated exception. [12/1/10 16:41:51:605 EST] 00000061 cm            E com.ibm.content.cm.logging.Logger error   NativeException::mapToServiceMessage(): ERROR: DETECTED NATIVE DKEXCEPTION.  ATTEMPTING TO MAP TO MORE SPECIFIC ERROR.  Gathering info to produce 

new NativeException... [12/1/10 16:41:51:605 EST] 00000061 SystemOut     O LOG(E):   NativeException::mapToServiceMessage(): ERROR: DETECTED NATIVE DKEXCEPTION.  ATTEMPTING TO MAP TO MORE SPECIFIC ERROR.  Gathering info to produce 

new NativeException... [12/1/10 16:41:51:605 EST] 00000061 DALCM8Excepti E com.ibm.content.cm.logging.Logger error handleException java.lang.StringIndexOutOfBoundsException at java.lang.String.substring(String.java:1092) at com.ibm.content.cm.exception.NativeException.detectGenericItemTypeFromQuery(NativeException.java:896) at com.ibm.content.cm.exception.NativeException.mapToServiceMessage(NativeException.java:645) at com.ibm.content.cm.exception.NativeException.mapToServiceMessage(NativeException.java:143) at com.ibm.content.cm.exception.NativeException.<init>(NativeException.java:101) at com.ibm.content.cm.model.helper.DatastoreHelper.cmRunQueryNativeResultsCursor(DatastoreHelper.java:2090) at com.ibm.content.cm.service.NativeService.cmRunQueryPaged(NativeService.java:14989) at com.ibm.content.cm.service.NativeService.searchNativeSyntaxPublicPagedImpl(NativeService.java:12488) at com.ibm.content.cm.service.NativeService.searchNativeSyntaxPublicPaged(NativeService.java:12261) at com.ibm.content.cm.model.helper.NativeServiceHelper.searchNativeSyntaxPublic(NativeServiceHelper.java:5169) at com.ibm.content.cm.model.impl.CMDataServiceImpl.searchNativeSyntaxImpl(CMDataServiceImpl.java:637) at com.ibm.content.cm.model.impl.CMDataServiceImpl.searchNativeSyntaxOverrideConfig(CMDataServiceImpl.java:593) at com.ibm.ecm.cmis.dal.cm8.DALCM8Repository.query(DALCM8Repository.java:993) at com.ibm.ecm.cmis.wsdl.impl.DiscoveryServicePortImpl.query(DiscoveryServicePortImpl.java:97) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.apache.axis2.jaxws.server.dispatcher.JavaDispatcher.invokeTargetOperation(JavaDispatcher.java:82) at org.apache.axis2.jaxws.server.dispatcher.JavaBeanDispatcher.invoke(JavaBeanDispatcher.java:98) at org.apache.axis2.jaxws.server.EndpointController.invoke(EndpointController.java:110) at org.apache.axis2.jaxws.server.JAXWSMessageReceiver.receive(JAXWSMessageReceiver.java:159) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:188) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doPost(WASAxis2Servlet.java:1347) at javax.servlet.http.HttpServlet.service(HttpServlet.java:738) at javax.servlet.http.HttpServlet.service(HttpServlet.java:831) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1589) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1523) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131) at com.ibm.ecm.integration.common.compression.CompressionFilter.doFilter(CompressionFilter.java:44) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
Updated on 2010-12-16T18:57:55Z at 2010-12-16T18:57:55Z by TigerTrix
  • TigerTrix
    TigerTrix
    30 Posts

    Re: Help CMIS Web Services

    ‏2010-12-02T21:44:38Z  
    I'm sorry, the query feature is not supported in the cm8cmis October 2010 tech preview. It should be listed in the known limitations in or linked by the readme. The feature has not been disabled, and it is possible that some queries might work. However the query implementaiton has not been updated for the 1.0 spec level and could easily have many issues if you attempt to use it. You can definitely use it as-is to see what might work, but it is not a representative example of what it will look like.

    I'm sorry, I cannot offer any advice or diagnosis of your query problem in the October 2010 tech preview. The best I can say is use only other features, and check the limitations list. Check back periodically to see if there are updates to the October 2010 tech preview, but no further update is coming in 2010.
  • SystemAdmin
    SystemAdmin
    32 Posts

    Re: Help CMIS Web Services

    ‏2010-12-03T14:00:54Z  
    • TigerTrix
    • ‏2010-12-02T21:44:38Z
    I'm sorry, the query feature is not supported in the cm8cmis October 2010 tech preview. It should be listed in the known limitations in or linked by the readme. The feature has not been disabled, and it is possible that some queries might work. However the query implementaiton has not been updated for the 1.0 spec level and could easily have many issues if you attempt to use it. You can definitely use it as-is to see what might work, but it is not a representative example of what it will look like.

    I'm sorry, I cannot offer any advice or diagnosis of your query problem in the October 2010 tech preview. The best I can say is use only other features, and check the limitations list. Check back periodically to see if there are updates to the October 2010 tech preview, but no further update is coming in 2010.
    Thank you for response.

    I am working on PoC and an obvious requirement is Search for documents using Web Services. If there is one working way to accomplish this it would be a big help.

    Unfortunately .. the dead line is Dec 31. Any help would be appreciated.

    Sreenivas
  • TigerTrix
    TigerTrix
    30 Posts

    Re: Help CMIS Web Services

    ‏2010-12-03T18:31:26Z  
    Now that I look at this one again, this is a secondary error while processing the primary error from the CM8 server while running the query. There is some exception that happened while running the native query against CM8 server. That error is caught and remapped to a cm8cmis error, but while remapping this index out of bounds error occurred while trying to inspect more into the query to better identify the true cause. We will look into fixing this secondary error in the future (not a committment or guarantee of fix).

    However, there is still the primary error that caused the error case in the first place. This is a query error, so it could be caused by the native query syntax generation which is part of the query feature that is not supported and could already be fixed. But we can get a better idea of this if you can look into the CM8 native API (II4C) logs or error information to see if we can get at the actual exception thrown the by CM8 native API in the first place that entered this block to remap for CMIS. You can look into the II4C log configuration files, but I have had some trouble getting the logging to work. The cm8cmis logging if turned up to debug should also catch the basic message of the original error before it hits this remapping problem when it enters the mapping function and logs the entry. The cm8cmis logging is controlled by log4j.properties, but again I have trouble getting logging to turn on the tech preview. If you can find the original exception, that would be really helpful.
  • TigerTrix
    TigerTrix
    30 Posts

    Re: Help CMIS Web Services

    ‏2010-12-03T21:26:42Z  
    • TigerTrix
    • ‏2010-12-03T18:31:26Z
    Now that I look at this one again, this is a secondary error while processing the primary error from the CM8 server while running the query. There is some exception that happened while running the native query against CM8 server. That error is caught and remapped to a cm8cmis error, but while remapping this index out of bounds error occurred while trying to inspect more into the query to better identify the true cause. We will look into fixing this secondary error in the future (not a committment or guarantee of fix).

    However, there is still the primary error that caused the error case in the first place. This is a query error, so it could be caused by the native query syntax generation which is part of the query feature that is not supported and could already be fixed. But we can get a better idea of this if you can look into the CM8 native API (II4C) logs or error information to see if we can get at the actual exception thrown the by CM8 native API in the first place that entered this block to remap for CMIS. You can look into the II4C log configuration files, but I have had some trouble getting the logging to work. The cm8cmis logging if turned up to debug should also catch the basic message of the original error before it hits this remapping problem when it enters the mapping function and logs the entry. The cm8cmis logging is controlled by log4j.properties, but again I have trouble getting logging to turn on the tech preview. If you can find the original exception, that would be really helpful.
    I have fixed the secondary issue that was hiding the original exception. I am fairly sure your query string was "/" which is an invalid query string, but was an edge case in error mapping that reads the query string itself to provide a more meaningful error message. If the query really was "/", then the primary error would be basic functionality of the query feature.
  • SystemAdmin
    SystemAdmin
    32 Posts

    Re: Help CMIS Web Services

    ‏2010-12-03T21:43:28Z  
    • TigerTrix
    • ‏2010-12-03T21:26:42Z
    I have fixed the secondary issue that was hiding the original exception. I am fairly sure your query string was "/" which is an invalid query string, but was an edge case in error mapping that reads the query string itself to provide a more meaningful error message. If the query really was "/", then the primary error would be basic functionality of the query feature.
    Thank you for taking time to focus on this issue. Since the Atom feed is working for us .. I have been directed to focus on that first. I come back to this pretty soon.

    Thanks again.
  • TigerTrix
    TigerTrix
    30 Posts

    Re: Help CMIS Web Services

    ‏2010-12-16T01:52:21Z  
    We are on track for an update sometime tomorrow if everything works out. Perhaps by noon or earlier if possible, else targetting end of day. Again, I cannot make guarantees of an update or time frame, but things are looking good for tomorrow right now.
  • TigerTrix
    TigerTrix
    30 Posts

    Re: Help CMIS Web Services

    ‏2010-12-16T18:57:55Z  
    • TigerTrix
    • ‏2010-12-16T01:52:21Z
    We are on track for an update sometime tomorrow if everything works out. Perhaps by noon or earlier if possible, else targetting end of day. Again, I cannot make guarantees of an update or time frame, but things are looking good for tomorrow right now.
    The tech preview has been updated with this fix. Webservices should much better, Query should work moderately well with limitations, REST improved, and the error mapping fix referred to in this issue has also been fixed.

    The latest version is still named "003", but when you unzip, you should see a version.txt that identifies version 1.0.003.2 instead of 1.0.003, and build number cm8cmis100.026.