Why does my CCM plugin cause a StackOverflowError in Launch callback handler?
I have been developing a server-side participant plugin against my development copy of CCM 4.0.3. I was successfully able to deploy and use it locally during development. After I installed Jazz and CCM 4.0.6 locally to match our new production environment, and deployed my plugin to this new installation, I am getting the following error in my Tomcat window:
INFO: Deploying web application archive C:\Program Files\IBM\JazzTeamServer_406_Dev\server\tomcat\webapps\ccm.war Exception in thread "Launch callback handler" java.lang.StackOverflowError at java.nio.CharBuffer.wrap(CharBuffer.java:361) at sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:399) at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:159) at java.io.OutputStreamWriter.emptyBuffer(OutputStreamWriter.java:289) at java.io.OutputStreamWriter.write(OutputStreamWriter.java:251) at java.io.PrintWriter.write(PrintWriter.java:423) at java.io.PrintWriter.write(PrintWriter.java:440) at java.io.PrintWriter.print(PrintWriter.java:570) at java.io.PrintWriter.println(PrintWriter.java:706) at com.ibm.team.repository.provision.internal.ProvisionService.installFeature(ProvisionServi ce.java:382) at com.ibm.team.repository.provision.internal.ProvisionService.installFeature(ProvisionServi ce.java:408) at com.ibm.team.repository.provision.internal.ProvisionService.installFeature(ProvisionServi ce.java:408) (*above line repeats many times *) at com.ibm.team.repository.provision.internal.ProvisionService.installFromProfileProperties( ProvisionService.java:952) at com.ibm.team.repository.provision.internal.ProvisionService.installFromProfiles(Provision Service.java:1009) at com.ibm.team.repository.provision.internal.ProvisionService.installFromProfileNoWait(Prov isionService.java:1143) at com.ibm.team.repository.provision.internal.ProvisionService.installFromProfile(ProvisionS ervice.java:1081) at com.ibm.team.repository.provision.internal.ProvisionService.installFromContextConfigurati onUrl(ProvisionService.java:1160) at com.ibm.team.jfs.app.install.Activator$1.run(Activator.java:172) at java.lang.Thread.run(Thread.java:761)
The steps I took are:
Please let me know what other information I might need to provide to diagnose this. |
One answer
I figured out my issue. I must have clicked "compute dependencies" on my plugin feature.
To fix, I recreated my dependencies by manually replacing the computed dependencies (plugins) with their respective server features as explained in the IBM Rational Team Concert 4.x Extensibility Lab. Looking at the source of
installFeature
, it looks like it calls itself recursively as it walks your dependency graph. So I'm guessing my dependencies were circular, causing
installFeature
to overflow the stack.
|
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.