It's all about the answers!

Ask a question

I am having problems with /service/com.ibm.team.scm.common.rest.IScmRichClientRestService/searchComponents2?ownerItemNamespace=com.ibm.team.process&ownerItemType=ProjectArea&ownerItemId=


Ben Beetle (1112) | asked Mar 01 '16, 9:55 p.m.

I am trying to query all project area's and then all components within each project area... 
I call /service/com.ibm.team.process.internal.service.web.IProcessWebUIService/allProjectAreas
to get the projects, and then take one as an example....

<values xsi:type="rest:ProjectAreaDTO">
<itemId>_82pNEBqIEeGz8oVjIaEBAw</itemId>

<stateId>_z1Tc8MtHEeWeV54VgA7baw</stateId>

<name>SCMon Project</name>

<archived>false</archived>
<initialized>true</initialized>
<accessTime>2016-02-29T00:34:24.484Z</accessTime>
<description>
Source Code Access Analysis (SCAA) is now labeled SCMon for Source Code Monitoring.
</description>
<summary>Source Code Monitoring project</summary>
<locale>en_US</locale>
<publicVisible>false</publicVisible>
<memberVisible>true</memberVisible>
<specificUserVisible>false</specificUserVisible>
<internalIsProcessProvider>false</internalIsProcessProvider>
<webUrl>

https://swgjazz.ibm.com:8027/jazz/web/projects/SCMon%20Project
</webUrl>
</values>

Then if I understand correctly I would call this to get the components....

https://swgjazz.ibm.com:8027/jazz/service/com.ibm.team.scm.common.rest.IScmRichClientRestService/searchComponents2?ownerItemNamespace=com.ibm.team.process&ownerItemType=ProjectArea&ownerItemId=_82pNEBqIEeGz8oVjIaEBAw

But when I do that I get this response which appears to be the response I expect when I query a project without any components... but when I view the project area in Eclipse client, under the project, under source control, there are half a dozen components listed.  (I can provide a screenshot). 

Any ideas?

<soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/" xmlns:scm.rich.rest="com.ibm.team.scm.rich.rest.dto" xmlns:com.ibm.team.repository.common.services="http:///com/ibm/team/core/services.ecore" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<response>
<method>getSearchComponents2</method>
<interface>
com.ibm.team.scm.common.rest.IScmRichClientRestService
</interface>
<returnValue xsi:type="com.ibm.team.repository.common.services:ComplexDataArg">
<type>COMPLEX</type>
<value xsi:type="scm.rich.rest:ScmComponent2List"></value>
</returnValue>
</response>
</soapenv:Body>
</soapenv:Envelope>

One answer



permanent link
Donald Nong (14.4k314) | answered Mar 02 '16, 4:38 a.m.
You're using internal APIs, which is not supported for further development.

For what you have observed, I guess maybe you only see the project-scoped components with the query that you constructed?


Comments
Ben Beetle commented Mar 03 '16, 6:52 p.m. | edited Mar 03 '16, 7:04 p.m.

 Thanks!  What exactly do you mean by "not supported for further development"?  Are you saying that this could break (further) at any time and Rational might not fix it? Is that for both the project query and the component query or just the component query?


Also... I checked... 3 of the components I expect to see say "project scoped" in eclipse.  (the others say "team private")... So if I understand your last sentence correctly, I think those 3 should at least show up in the query.  


Donald Nong commented Mar 03 '16, 7:06 p.m.

"Not supported" means that no documentation published, and how the APIs work is mainly your own guesswork. The APIs can also change without notice (to you), so your application/implementation may break.

Your answer


Register or to post your answer.