missing dependency feature "com.ibm.team.workitem.client.rtc.feature".
I developed a RTC plug-in and have the following error in the ccm.log file, after deploying it to the server:
ERROR eam.repository.provision.internal.ProvisionService - CRJAZ0282I The feature "" is missing dependency feature "com.ibm.team.workitem.client.rtc.feature".
My included features are:
<requires>
<import feature="com.ibm.team.workitem.common.rtc.feature" version="3.2.1.v20140611_0118"/>
<import feature="com.ibm.team.workitem.client.rtc.feature" version="3.1.801.v20140613_0649"/>
<import feature="com.ibm.team.scm.common.rtc.feature" version="3.2.101.v20140613_0649"/>
<import feature="com.ibm.team.scm.client.rtc.feature" version="3.2.101.v20140613_0649"/>
<import feature="com.ibm.team.repository.services.jfs.feature" version="1.0.3000.v20140115_0121"/>
<import feature="com.ibm.team.repository.common.jfs.feature" version="1.1.0.v20140623_2326"/>
<import feature="com.ibm.team.repository.client.jfs.feature" version="1.1.0.v20140505_2030"/>
<import feature="com.ibm.team.process.common.jfs.feature" version="1.1.4000.v20131214_0006"/>
<import feature="com.ibm.team.process.client.jfs.feature" version="1.1.3000.v20131011_2353"/>
<import feature="com.ibm.team.workitem.client.rtc.feature.source" version="3.1.801.v20140626_0224"/>
</requires>
I am not sure that i need all of these features, i found RTC extending examples where this step is not mentioned,
but i followed the "IBM Rational Team Concert 4.x Extensibility.pdf" workshop where it says:
"(...)for Jazz server side provisioning, you need to use features.
Using the compute button was helpful because having the list of plug-ins makes it
straight forward to figure out the list of features you really want."
However, the missing feature mentioned in the log-error (com.ibm.team.workitem.client.rtc.feature) is not available in the list of features. I only found "com.ibm.team.workitem.client.rtc.feature.source" but adding it did not fix the error.
Please help :)
Best regards,
Andrada
3 answers
The Workshop also goes through a cleanup process to get rid of dependencies that are not needed in 6.1. Although I don't always do that necessarily, it is the good thing to consider. Unfortunately I don't know all the details.
I would get rid of all the features that don't match the naming pattern *.server.jfs.feature or *.server.rtc.feature. .
Although common API is available on the server, I think the server features depend on it and you don't have to specify it. For common API the mane pattern is *.common.*.
This is a client API and not available on the server:
com.ibm.team.workitem.client.rtc.feature
Dubious entries for a server extension:
<import feature="com.ibm.team.workitem.client.rtc.feature" version="3.1.801.v20140613_0649"/>
<import feature="com.ibm.team.scm.client.rtc.feature" version="3.2.101.v20140613_0649"/>
<import feature="com.ibm.team.repository.client.jfs.feature" version="1.1.0.v20140505_2030"/>
<import feature="com.ibm.team.process.client.jfs.feature" version="1.1.3000.v20131011_2353"/>
<import feature="com.ibm.team.workitem.client.rtc.feature.source" version="3.1.801.v20140626_0224"/>
Comments
Hello Ralph,
Thank You for your answer!
I adjusted the feature dependencies to:
org.eclipse.core.runtime
org.eclipse.equinox.util
com.ibm.team.repository.server.jfs.feature
com.ibm.team.connector.server.rtc.feature
com.ibm.team.process.server.jfs.feature
com.ibm.team.scm.server.rtc.feature
com.ibm.team.workitem.server.rtc.feature
But now i have the following error at deployment:
CRJZS0383E The bundle could not be resolved.
Deleting all dependencies from the feature results also in the same error.
Did you consider following Lab 6.1 of the workshop?
With that little error information there is no suggestion possible. Check the CCM log if there is more information.
I assume the extension runs on Jetty. If not make sure it runs there first.
Hi Ralph,
I followed Lab 6.1 several times, with the same "could not load bundle result".
I did not test the plug in on Jetty because i was unable create the Project Area (Lab 2.4) it resulted in some initialization errors as far as i remember (did it some weeks ago).
Is there another way to test it, other then using Jetty; or another way to create the Project Area? We tried installing the RTC Development environment on another machine too, but again without Jetty...
You might be able to get it running without Jetty. Good luck with that. It will probably cost 10 times the effort compared to Jetty. And no one will be able to help.
The project area for the lab is based on a standard template. There is no reason why you should not be able to create it. I'd suggest to delete the temporary server folder (parallel to your workspace) and setup for Jetty (Lab 1) again. Then try to create the project again.
Hi Ralph,
It is not that i prefer running it without Jetty, i want to use Jetty, it just did not work :).
I tried it again and have the same problems when creating the Project area (step 2.4).
When deploying the process templates, I get the following error:
Problem(s) occurred deploying process definitions.
Could not locate storage service from https://localhost:7443/jazz/rootservices. Make sure that server property Public URI Root is correct.
I checked the public uri in https://localhost:7443/jazz/admin, and it is set to https://localhost:7443/jazz.
I also tried to ignore the process template deployment and create a new one, but it only got me to errors of the project area initialization:
Problem occurred initializing project area.
Could not locate storage service from https://localhost:7443/jazz/rootservices. Make sure that server property Public URI Root is correct.
Thank You very much for Your help!
Throw the current development server setup away and re-run the JUnit test to setup the test database in Lab 1.
I forgot to explicitly mention that I also deleted the temporary server folder and did the set up for Jetty again :)
Make sure you have successfully copied over the xml files too.
1 vote
What language setting does your machine have?
I have been always able to get the Jetty Server up and running. In the worst case, set up a new workspace in parallel to your current one and do a new setup of the SDK. Make sure to follow the steps and add -Duser.language=en to your server startup and the Eclipse ini.
Make sure to have the workspace set to UTF 8.
I don't know what the problem is. I have set this up many, many times - too often really and I always got this working.
Also, do you work in a VMWare (port issues)? How much RAM do you have?
I have an English language machine, 8 GB RAM and not in a virtual machine.
I think the problem is that I am missing the xml files you mentioned. Which xml files do I have to copy over?
1.4 Complete Setup of Your RTC Eclipse Client
__19. Gather remaining configuration files for Jetty based launches.
In the Workshop. You have to really, really thoroughly follow the workshop. If you mess up one of the steps in Lab1, you will have many, many problems and it is very hard to recover from it. It is usually easier to re run Lab 1 if you can't narrow this down.
1 vote
Hi Ralph,
Thank You! I managed now to use Jetty.
I am debugging my plugin and the issue that i have is a FileNotFound Exception.
I have a config.property file for this plugin.
The property file was found while testing with JUnit. Do property files need a different approach in plug-ins? I am sorry to disturb with these simple questions, but I am new to this plug-in development and just trying to get it to work.
I am using URL to get to the file:
private final String FILE_NAME = "resources/config.properties";
private final URL url = Thread.currentThread().getContextClassLoader().getResource(FILE_NAME);
(...)
input = new FileInputStream(url.getPath());
Properties props = new Properties();
props.load(input);
The error appears in the bold line.
Thank You!
I don't know where Tomcat will allow you to access files and what will be taken as root folder. I store configuration information in the process XML like described in the workshop.
Two suggestions
- Create a new question about this topic in the forum.
-
Try to create/save a file with a unique file name in the relative root folder and afterwards search for where that file shows up in the server folder structure. Do this on Tomcat, too.
Please accept an answer as correct. Thanks!
1 vote
But when deploying its feature to tomcat, i still have the CRJZS0383E The bundle could not be resolved. error.
:(
I think that the error is somewhere in the construction of the feature*, maybe I do not have all the right dependencies, or some imports (other than the plugin) may be missing.
I followed the steps of the workshop about deploying, but my plugin is different, so not all the dependencies apply
*if the problem would have been because of the configuration file, i would be receiving errors when saving the work item, not during installation of the plugin.
:(