It's all about the answers!

Ask a question

How to configure a participant from start to finish


Paul B (219) | asked Sep 03 '15, 11:54 p.m.
edited Sep 04 '15, 2:10 a.m. by Ralph Schoon (56.2k23642)

Hi all,

I've been reading tons of doco on how to develop RTC on the backend. I can configure an Operational Advisor easy enough, however I'm trying to configure an participant and trying to find good doco for this has been frustrating. 

I read the doco below (one of many) and it really didn't help me at all. I'm assuming the steps to create a participant are the same as a creating an Advisor except you need to use the com.ibm....*Participant extension point.

I got a hold of the source folders of a participant and noticed that they had an extra folder named 'Common'. So I added that to my participant, changed the COMPONENT ID to point to my class file, and read in the feature plugin.xml that the common folder needs to get added in.

After a restart, still no banana, in Operations the participant plugin still doesn't appear in the list.

I'm hoping there's doco out there that someone could point me to that can explain all what I'm trying to do. I don't know how else to get this working and the doco I've been reading thus far proves incomplete.

https://jazz.net/wiki/bin/view/Main/TeamProcessDeveloperGuide#Adding_New_Operation_Participant

Thanks.

Accepted answer


permanent link
Ralph Schoon (56.2k23642) | answered Sep 07 '15, 5:40 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
edited Sep 07 '15, 5:44 a.m.
I had it in Jetty in 5 minutes, was able to configure it with a test Eclipse Client and was able to run it.
- Unsuccessfully, and the reason bacame apparent in the console immediately.
 The prerequisite
interface="com.ibm.team.workitem.service.IworkItemServer"
is wrong. It needs to be
interface="com.ibm.team.workitem.service.IWorkItemServer"
I fixed that and it did work.
I also went into the dependencies and found a dependency to the jazz component defined in the Extension Workshop, which I removed.

I then deleted all files and folders, except the site.xml file in the update site project and ran Build All again.
I created a project to ease deployment and copied the site.xml, the folders Features and Plugins into the update site folder I created:
 

I then copied the folders provision_profiles and sites from the Eclipse workspace and pasted it into the server/conf/ccm folder. I started the server and was able to configure, run and debug the extension.
I used https://rsjazz.wordpress.com/2014/06/12/is-the-extension-deployed-how-can-i-redeploy/ and deleted the built-on.txt file to enforce a redeployment once, because the first attempt had still a typo in the prerequisites and the extension did not run but failed with an exception that I was able to see in the server/logs/ccm.log.


So, as I see it, you have not tried your extension with Jetty in the first place.

I have seen this over and over and over again, if you don't set up your development environment with Jetty as explained in the links above and try to write something and deploy it on Tomcat for debugging, you will fail and complain on the Forum.

I did nothing really that was complex in any way or deviated from the descriptions in the Extensions Workshop. I read the error messages carefully and fixed the problems.
I only added this one serverdeploy project, because it helps to organize the required provision profile and makes deployment more reliable.

While you created your example, you must also have ignored a warning from Eclipse, because class names should start with a capital letter an your extension class does not.

In general, as mentioned in the links above, this is serious work. If you don't follow it carefully it gets unmanageable. If you want to rush this and go directly to Tomcat or WAS, all you create is uncertainty and problems.

Jetty helps to make sure the stuff would work at all and once that is clear, deployment problems are usually only related to Java Versions and false dependencies.


Paul B selected this answer as the correct answer

Comments
Paul B commented Sep 08 '15, 2:05 a.m. | edited Nov 07 '15, 7:30 p.m.

Ralph thanks so much for your help. I made the same changes you made and it works for me now and I am really happy. I now have Jetty working which makes things easier. By the time I wrote my last post I was a little frustrated so thanks again for putting in the time to help.


Seven days ago I didn't know what RTC so I'm making good progress. I need to know this as its's my job for the next year. The forum is gonna see my posts for a while yet :D




One other answer



permanent link
Ralph Schoon (56.2k23642) | answered Sep 04 '15, 2:13 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
See Rational Team Concert Extensions Workshop for a complete workshop.
See Setting up Rational Team Concert for API Development for more background on that workshop.
See Extension Points and Operation ID’s for the extension points and operation ID's. 

Comments
Paul B commented Sep 07 '15, 2:43 a.m. | edited Nov 07 '15, 7:29 p.m.

Hi Ralph,

Thanks for your reply. I read the documents you listed and followed the instructions. I first read the 'Setting up Rational Team Concert for API Development' document. Then I followed the instructions for the 'Rational Team Concert Extensions Workshop', unfortunately it didn't work for me. When I went to the link below the component wasn't even listed.
https://localhost:9443/ccm/admin?internal=true#action=com.ibm.team.repository.admin.componentStatus

I then added a Feature and an Update sites, and created a .ini file at location C:\RTC50Dev\installs\JazzTeamServer\server\conf\ccm\provision_profiles. 

This time when I went to URL above, the Component was listed. However under the component heading it says "No services". When I go to the URL below, it says the "CRJZS0383E .... bundle could not be resolved".

https://localhost:9443/ccm/admin?internal=true#action=com.ibm.team.repository.admin.provisionStatus

I'm out of ideas on how to get this to work and all the doco I've read is incomplete (and I'm over it, spent too much time reading doco on this). Below is a link to my Dropbox where you can find the files. If someone could please have a look and point out what I'm doing wrong that would be really really really great!

https://www.dropbox.com/sh/bdh65mkulomtlvz/AAAaJLi_RI_Hchr9E2t7t2_xa?dl=0

Also to build this I'm right clicking on the site.xml and selecting PDE Tools -> Build Site. I've also tried double clicking on the site.xml and selecting Build All.

Thanks.


Ralph Schoon commented Nov 08 '15, 8:24 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER

Upload it as exported archive file of the Eclipse projects so it can be imported in one go. I won't even start to go through the pain of downloading each file.

The error message indicates you have still a dependency to a jar file that is not available in the server and commmon API.

Your answer


Register or to post your answer.