It's all about the answers!

Ask a question

Can't build with JBE running as a Windows service (CertPathValidatorException)


Kevin Lou (311925) | asked Feb 05 '13, 9:14 a.m.
I set up the JBE as a Windows service by following the instructions in https://jazz.net/wiki/bin/view/Main/JbeAsAWindowsService. 

I am able to run a build when starting the JBE with command: "jsl - debug";
I am able to start the JBE as service. However, when I submit a build (using the JBE that is started as a service), the build failed with CertPathValidatorException. Is there any certification file I need to install on the build server? (My build server is Win2008-64bit. But I am using jsl-32bit as someone on the forum suggested). 

Full log: 

2013-02-05 08:58:29 [Jazz build engine] 
2013-02-05 08:58:29 [Jazz build engine] Substituted the following build property variables:

...
2013-02-05 08:58:29 [Jazz build engine] running on host: CYSDQPVSDVAP003
2013-02-05 08:58:29 [Jazz build engine] Should build occur?
2013-02-05 08:58:29 [Jazz build engine] Yes: Always build a user initiated request.
2013-02-05 08:58:30 [Jazz build engine] Invoking pre-build participant "com.ibm.team.build.jazzscm"
2013-02-05 08:58:30 [Jazz build engine] Accepting changes into workspace "CIVRS Development Stream Workspace - Build" ...
2013-02-05 08:58:31 [Jazz build engine] Fetching files to fetch destination "D:\tmp.kevin\civrs_dev_bld_1" ...
2013-02-05 08:58:35 [Jazz build engine] Invoking build participant "com.ibm.team.build.cmdline"
JAVAEXE_PATH=D:\IBM\SDP\jdk\jre\bin
RSA_INSTALL_PATH=D:\IBM\SDP

C:\Program Files (x86)\IBM\TeamConcertBuild\buildsystem\buildengine\eclipse>"D:\IBM\SDP\jdk\jre\bin\java.exe" -Dwtp.autotest.noninteractive=true -cp "C:\Program Files (x86)\IBM\IBMIMShared\plugins\org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar" org.eclipse.equinox.launcher.Main -install "D:\IBM\SDP" -application com.ibm.etools.j2ee.ant.RunAnt  -data "D:\tmp.kevin\civrs_dev_bld_1"  -buildfile "D:\tmp.kevin\civrs_dev_bld_1/CIVRS Releng/Build/build.xml" -DbeforeBuildResultUUID=${beforeBuildResultUUID} -DbuildResultUUID=_IQs0oW-cEeKHs5KT7kG9ow -DrepositoryAddress=https://cysposvspaap001:9443/ccm/ -DbuildDefinitionId=CIVRS_Build -Dcyssc.civrs.team.build.result.root.dir=D:\tmp.kevin\buildresults -DbuildLabel=CIVRS_BLD_20130205-0858 -DbuildResultUUID=_IQs0oW-cEeKHs5KT7kG9ow -DbuildRequesterUserId=LouKe -Dcyssc.civrs.team.build.load.dir=D:\tmp.kevin\civrs_dev_bld_1 -DPublishURL=http://cysdqpvsdvap003:81/ 
HeadlessWorkspaceSettings: INITIAL autoBuild=true maxFile=1048576
HeadlessWorkspaceSettings: TEMP autoBuild=false maxFile=-1
Buildfile: D:\tmp.kevin\civrs_dev_bld_1/CIVRS Releng/Build/build.xml

default:

BUILD FAILED
com.ibm.team.repository.common.transport.TeamServiceException: CRJAZ0099I When accessing the URL "https://cysposvspaap001:9443/ccm/versionCompatibility?clientVersion=3.0.1" the following HTTP error occurred: "com.ibm.jsse2.util.g: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is: 
java.security.cert.CertPathValidatorException: The certificate issued by CN=CYSPOSVSPAAP001.cihs.ad.gov.on.ca, OU=Root Certificate, OU=CYSPOSVSPAAP001Node01Cell, OU=CYSPOSVSPAAP001Node01, O=IBM, C=US is not trusted; internal cause is: 
java.security.cert.CertPathValidatorException: Certificate chaining error"
at com.ibm.team.repository.transport.client.ClientHttpUtil.executePrimitiveRequest(ClientHttpUtil.java:1179)
at com.ibm.team.repository.transport.client.ClientHttpUtil.executeHttpMethod(ClientHttpUtil.java:328)
at com.ibm.team.repository.transport.client.ClientHttpUtil.executeHttpMethod(ClientHttpUtil.java:290)
at com.ibm.team.repository.transport.client.ClientHttpUtil.executeHttpMethod(ClientHttpUtil.java:204)
at com.ibm.team.repository.transport.client.RestClientConnectionBase.executeMethod(RestClientConnectionBase.java:308)
at com.ibm.team.repository.transport.client.RestClientConnectionBase.doMethod(RestClientConnectionBase.java:182)
at com.ibm.team.repository.transport.client.RestClientConnectionBase.doGet(RestClientConnectionBase.java:123)
at com.ibm.team.repository.transport.client.TeamRawRestServiceClient$RawRestClientConnection.doGet(TeamRawRestServiceClient.java:94)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.ibm.team.repository.client.internal.ServiceInterfaceProxy.invokeServiceCall(ServiceInterfaceProxy.java:164)
at com.ibm.team.repository.client.internal.ServiceInterfaceProxy.invoke(ServiceInterfaceProxy.java:88)
at com.ibm.team.repository.client.internal.RawRestServiceClientProxy$RestClientConnectionProxy.invoke(RawRestServiceClientProxy.java:121)
at $Proxy9.doGet(Unknown Source)
at com.ibm.team.repository.client.internal.TeamRepository.fetchClientVersionJSONObject(TeamRepository.java:1594)
at com.ibm.team.repository.client.internal.TeamRepository.access$0(TeamRepository.java:1591)
at com.ibm.team.repository.client.internal.TeamRepository$5.run(TeamRepository.java:1662)
at com.ibm.team.repository.client.internal.TeamRepository$5.run(TeamRepository.java:1)
at com.ibm.team.repository.client.internal.TeamRepository$3.run(TeamRepository.java:1261)
at com.ibm.team.repository.common.transport.CancelableCaller.call(CancelableCaller.java:79)
at com.ibm.team.repository.client.internal.TeamRepository.callCancelableService(TeamRepository.java:1254)
at com.ibm.team.repository.client.internal.TeamRepository.checkServerVersionMatches(TeamRepository.java:1665)
at com.ibm.team.repository.client.internal.TeamRepository.internalLogin(TeamRepository.java:1445)
at com.ibm.team.repository.client.internal.TeamRepository.login(TeamRepository.java:618)
at com.ibm.team.build.internal.scm.RepositoryManager.login(RepositoryManager.java:274)
at com.ibm.team.build.ant.task.AbstractTeamBuildTask.initializeRepositoryManager(AbstractTeamBuildTask.java:321)
at com.ibm.team.build.ant.task.AbstractTeamBuildTask.getTeamRepository(AbstractTeamBuildTask.java:270)
at com.ibm.team.build.ant.task.GenerateChangeLogTask.getBuildResultFromUUID(GenerateChangeLogTask.java:299)
at com.ibm.team.build.ant.task.GenerateChangeLogTask.doExecute(GenerateChangeLogTask.java:239)
at com.ibm.team.build.ant.task.AbstractTeamBuildTask.execute(AbstractTeamBuildTask.java:655)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:662)
at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:534)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.eclipse.ant.core.AntRunner.run(AntRunner.java:513)
at com.ibm.ant.extras.RunAnt.run(RunAnt.java:50)
at org.eclipse.ant.core.AntRunner.start(AntRunner.java:600)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
Caused by: javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.g: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is: 
java.security.cert.CertPathValidatorException: The certificate issued by CN=CYSPOSVSPAAP001.cihs.ad.gov.on.ca, OU=Root Certificate, OU=CYSPOSVSPAAP001Node01Cell, OU=CYSPOSVSPAAP001Node01, O=IBM, C=US is not trusted; internal cause is: 
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.jsse2.n.a(n.java:8)
at com.ibm.jsse2.tc.a(tc.java:96)
at com.ibm.jsse2.gb.a(gb.java:241)
at com.ibm.jsse2.gb.a(gb.java:318)
at com.ibm.jsse2.hb.a(hb.java:232)
at com.ibm.jsse2.hb.a(hb.java:23)
at com.ibm.jsse2.gb.n(gb.java:295)
at com.ibm.jsse2.gb.a(gb.java:269)
at com.ibm.jsse2.tc.a(tc.java:347)
at com.ibm.jsse2.tc.g(tc.java:416)
at com.ibm.jsse2.tc.a(tc.java:60)
at com.ibm.jsse2.tc.startHandshake(tc.java:381)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.createSocket(SecureInterruptableSocketFactory.java:142)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.createSocket(SecureInterruptableSocketFactory.java:302)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at com.ibm.team.repository.transport.client.ClientHttpUtil.executePrimitiveRequest(ClientHttpUtil.java:1128)
... 66 more
Caused by: com.ibm.jsse2.util.g: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is: 
java.security.cert.CertPathValidatorException: The certificate issued by CN=CYSPOSVSPAAP001.cihs.ad.gov.on.ca, OU=Root Certificate, OU=CYSPOSVSPAAP001Node01Cell, OU=CYSPOSVSPAAP001Node01, O=IBM, C=US is not trusted; internal cause is: 
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.jsse2.util.e.b(e.java:55)
at com.ibm.jsse2.util.e.b(e.java:77)
at com.ibm.jsse2.util.d.a(d.java:13)
at com.ibm.jsse2.hc.a(hc.java:80)
at com.ibm.jsse2.hc.checkServerTrusted(hc.java:82)
at com.ibm.team.repository.transport.client.ValidatingX509TrustManager.checkServerTrusted(ValidatingX509TrustManager.java:147)
at com.ibm.jsse2.hb.a(hb.java:382)
... 81 more
Caused by: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is: 
java.security.cert.CertPathValidatorException: The certificate issued by CN=CYSPOSVSPAAP001.cihs.ad.gov.on.ca, OU=Root Certificate, OU=CYSPOSVSPAAP001Node01Cell, OU=CYSPOSVSPAAP001Node01, O=IBM, C=US is not trusted; internal cause is: 
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.security.cert.PKIXCertPathBuilderImpl.engineBuild(PKIXCertPathBuilderImpl.java:411)
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:258)
at com.ibm.jsse2.util.e.b(e.java:112)
... 87 more
Caused by: java.security.cert.CertPathValidatorException: The certificate issued by CN=CYSPOSVSPAAP001.cihs.ad.gov.on.ca, OU=Root Certificate, OU=CYSPOSVSPAAP001Node01Cell, OU=CYSPOSVSPAAP001Node01, O=IBM, C=US is not trusted; internal cause is: 
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.security.cert.BasicChecker.<init>(BasicChecker.java:111)
at com.ibm.security.cert.PKIXCertPathValidatorImpl.engineValidate(PKIXCertPathValidatorImpl.java:176)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.myValidator(PKIXCertPathBuilderImpl.java:737)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.buildCertPath(PKIXCertPathBuilderImpl.java:649)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.buildCertPath(PKIXCertPathBuilderImpl.java:595)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.engineBuild(PKIXCertPathBuilderImpl.java:357)
... 89 more
Caused by: java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.security.cert.CertPathUtil.findIssuer(CertPathUtil.java:298)
at com.ibm.security.cert.BasicChecker.<init>(BasicChecker.java:108)
... 94 more

Total time: 4 seconds
HeadlessWorkspaceSettings: RESTORED autoBuild=true maxFile=1048576
An error has occurred. See the log file
D:\tmp.kevin\civrs_dev_bld_1\.metadata\.log.
runAnt BUILD FAILED.

2 answers



permanent link
Thomas Hofmann (16) | answered Apr 05 '13, 11:57 a.m.
Did you check whether the CN in the certificate matches the hostname you are using (cysposvspaap001)?
The CN in the certificate must matcht the hostname you use to access the server even if there are different names you could use to make a connection.

permanent link
Thomas Hofmann (16) | answered Apr 08 '13, 12:17 p.m.
 You can also try adding the certificate of the server to the keystore of the JVM that is used as the client:

C:\<build engine>\bin>keytool -import -file c:\rtc.cer -keystore "<path to JRE>\jre\lib\security\cacerts"

For IBM JVMs the default password for the keystore is changeit

Your answer


Register or to post 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.