QualInsight / qualinsight-plugins-sonarqube-badges

Plugin for SonarQube that generates badges displaying information about a project's or view's quality.
GNU Lesser General Public License v3.0
110 stars 141 forks source link

Plugin generates "server error" badges (version 1.2.1) #23

Closed jknodlseder closed 8 years ago

jknodlseder commented 8 years ago

I'm running SonarQube 5.4 and have installed SVG badges. However in the General Settings SVG badges does not show up. I also have problem to access the badges (always get a server error) hence I'm wondering if both are related. Sonar log says:

2016.04.29 23:09:17 INFO  web[o.s.s.p.ServerPluginRepository] Deploy plugin SVG Badges / 1.2.1
...
2016.04.29 23:09:20 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] QualityGateStatusRetriever is now ready.
2016.04.29 23:09:20 INFO  web[c.q.p.s.b.i.SVGImageGenerator] SVGImageGenerator is now ready.
2016.04.29 23:09:20 WARN  web[o.s.a.s.w.WebService$Action] Since is not set on action api/badges/gate
2016.04.29 23:09:20 WARN  web[o.s.a.s.w.WebService$Action] The response example is not set on action api/badges/gate

Below some screenshots. Any clue what's going on? sonar-svg sonar-settings

jknodlseder commented 8 years ago

Want to add: curl seems to indicate that I actually can connect and SVG reacts, but just gives me a server error.

curl -k https://cta-sonar.irap.omp.eu/api/badges/gate?key=gammalib
<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="20" style="fill-opacity:1; color-rendering:auto; color-interpolation:auto; text-rendering:auto; stroke:black; stroke-linecap:square; stroke-miterlimit:10; shape-rendering:auto; stroke-opacity:1; fill:black; stroke-dasharray:none; font-weight:normal; stroke-width:1; font-family:'DejaVu Sans','Verdana','Geneva','Tahoma','Arial','sans-serif'; font-style:normal; stroke-linejoin:miter; font-size:12px; stroke-dashoffset:0; image-rendering:auto;" width="151"><!--Generated by QualInsight SVG Badge Generator--><defs id="genericDefs"/><g><g style="fill:rgb(85,85,85); font-size:11px; stroke:rgb(85,85,85);"><rect height="20" rx="3" ry="3" style="stroke:none;" width="75" x="0" y="0"/><rect height="20" style="stroke:none;" width="6" x="69" y="0"/></g><g style="fill:rgb(0,0,0); fill-opacity:0.3333; font-size:11px; stroke-opacity:0.3333; stroke:rgb(0,0,0);"><text style="stroke:none;" x="4" xml:space="preserve" y="14">quality gate</text></g><g style="fill:white; font-size:11px; stroke:white;"><text style="stroke:none;" x="4" xml:space="preserve" y="14">quality gate</text><rect height="20" rx="3" ry="3" style="fill:rgb(224,93,68); stroke:none;" width="76" x="75" y="0"/><rect height="20" style="fill:rgb(224,93,68); stroke:none;" width="6" x="75" y="0"/></g><g style="fill:rgb(0,0,0); fill-opacity:0.3333; font-size:11px; stroke-opacity:0.3333; stroke:rgb(0,0,0);"><text style="stroke:none;" x="79" xml:space="preserve" y="15">server error</text></g><g style="fill:white; font-size:11px; stroke:white;"><text style="stroke:none;" x="79" xml:space="preserve" y="14">server error</text></g></g></svg>
pawlakm commented 8 years ago

Hi,

Concerning the fact that the plugin does not appear in general settings, there is nothing wrong about it... except the fact that I committed the new documentation too fast... and not on a separate branch (in other words, my bad and I'm really sorry about this) the documentation is indeed related to the next version (2.0.0)

The version you have probably installed from update center is 1.2.1. Related documentation is the following one.

The server error you're facing can have one of these two reasons :

screen shot

screen shot 2

If you're in the second case, the plugin won't be able to display badges. I'm sorry about that.

Does this help ?

pawlakm commented 8 years ago

I reverted the documentation to the one matching version 1.2.1 of the plugin and moved the code of version 2.0.0 to a new branch.

jknodlseder commented 8 years ago

Thanks for your e-mail, Michel.

Unfortunately none of these changed something.

The server base URL is already set and the user authentication was set to Default, which means False. Setting it to true I got indeed an access error

$ curl -k https://cta-sonar.irap.omp.eu/api/badges/gate?key=gammalib
{"err_code":401,"err_msg":"Unauthorized"}
pawlakm commented 8 years ago

ok, can you please uninstall the plugin, download this debug version : qualinsight-sonarqube-badges-1.2.1-DEBUG.zip change the file extension from zip to jar, put it in <sonar install dir>/extensions/plugins then restart your instance.

Then try to call the web service again and check the content of sonar.log, you should have a log similar to this (but you should also have an exception starting with "An error occurred while retrieving quality gate status for key") :

2016.04.30 00:14:54 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] Http GET request line: GET http://localhost:9000/api/resources/index/?resource=com.qualinsight.plugins.sonarqube:qualinsight-plugins-sonarqube-badges&metrics=quality_gate_details&format=json HTTP/1.1
2016.04.30 00:14:54 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] Http GET response body: [{"id":11,"key":"com.qualinsight.plugins.sonarqube:qualinsight-plugins-sonarqube-badges","uuid":"AVNIFMR_27OjMxgGUbpX","name":"SVG Badges Plugin","scope":"PRJ","qualifier":"TRK","date":"2016-03-12T18:53:06+0100","creationDate":"2016-03-05T19:40:33+0100","lname":"SVG Badges Plugin","version":"1.2.0-RC4-SNAPSHOT","description":"This plugin adds a webservice to SonarQube that allows the retrieval of projects' and views' quality gate status as a SVG image (so called badge.)","msr":[{"key":"quality_gate_details","data":"{\"level\":\"OK\",\"conditions\":[{\"metric\":\"new_blocker_violations\",\"op\":\"GT\",\"period\":1,\"error\":\"0\",\"actual\":\"0\",\"level\":\"OK\"},{\"metric\":\"new_critical_violations\",\"op\":\"GT\",\"period\":1,\"error\":\"0\",\"actual\":\"0\",\"level\":\"OK\"},{\"metric\":\"new_sqale_debt_ratio\",\"op\":\"GT\",\"period\":1,\"error\":\"5\",\"actual\":\"0.0\",\"level\":\"OK\"}]}"}]}]

Then copy all relevant log and paste it here please. Thanks,

Michel

jknodlseder commented 8 years ago

Done. Looks like a https certificat problem:

2016.04.30 00:28:08 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] Http GET request line: GET https://cta-sonar.irap.omp.eu/api/resources/index/?resource=gammalib&metrics=quality_gate_details&format=json HTTP/1.1
2016.04.30 00:28:08 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] Http GET request line: GET https://cta-sonar.irap.omp.eu/api/resources/index/?resource=gammalib&metrics=quality_gate_details&format=json HTTP/1.1
2016.04.30 00:28:08 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] An error occurred while retrieving quality gate status for key 'gammalib': {}
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.ssl.Alerts.getSSLException(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[na:1.8.0_66]
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:394) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:134) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:220) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:164) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:139) ~[httpclient-4.5.1.jar:4.5.1]
    at com.qualinsight.plugins.sonarqube.badges.internal.QualityGateStatusRetriever.responseBodyForKey(QualityGateStatusRetriever.java:109) ~[qualinsight-sonarqube-badges-1.2.1-DEBUG.jar:na]
    at com.qualinsight.plugins.sonarqube.badges.internal.QualityGateStatusRetriever.retrieveFor(QualityGateStatusRetriever.java:85) ~[qualinsight-sonarqube-badges-1.2.1-DEBUG.jar:na]
    at com.qualinsight.plugins.sonarqube.badges.extension.BadgesWebService$1.handle(BadgesWebService.java:71) [qualinsight-sonarqube-badges-1.2.1-DEBUG.jar:na]
    at org.sonar.server.ws.WebServiceEngine.execute(WebServiceEngine.java:85) [sonar-server-5.4.jar:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_66]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_66]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_66]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_66]
    at org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:425) [jruby-complete-1.7.9.jar:na]
    at org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:292) [jruby-complete-1.7.9.jar:na]
    at org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:44) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:296) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:72) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallManyArgsNode.interpret(CallManyArgsNode.java:59) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyClass.finvoke(RubyClass.java:527) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:2590) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel.send(RubyKernel.java:2223) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:350) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallOneArgNode.interpret(FCallOneArgNode.java:36) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:118) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:268) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:230) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:366) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:238) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallThreeArgNode.interpret(FCallThreeArgNode.java:40) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yieldSpecific(InterpretedBlock.java:229) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.yieldSpecific(Block.java:111) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ZYieldNode.interpret(ZYieldNode.java:25) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yieldSpecific(InterpretedBlock.java:229) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.yieldSpecific(Block.java:111) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ZYieldNode.interpret(ZYieldNode.java:25) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.WrapperMethod.call(WrapperMethod.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:143) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:154) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallNoArgBlockNode.interpret(FCallNoArgBlockNode.java:32) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:316) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:145) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:154) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:64) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ArrayNode.interpretPrimitive(ArrayNode.java:94) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ArrayNode.interpret(ArrayNode.java:84) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:60) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.LocalAsgnNode.interpret(LocalAsgnNode.java:123) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.executeBody(RescueNode.java:221) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.interpret(RescueNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:81) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyClass.finvoke(RubyClass.java:527) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:2590) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel.send(RubyKernel.java:2223) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:350) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallSpecialArgNode.interpret(FCallSpecialArgNode.java:39) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:268) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:230) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:366) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:238) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallSpecialArgNode.interpret(FCallSpecialArgNode.java:43) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:225) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:214) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:66) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:346) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:204) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallTwoArgNode.interpret(CallTwoArgNode.java:59) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:225) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:214) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:346) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:204) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallTwoArgNode.interpret(FCallTwoArgNode.java:38) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:60) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.executeBody(RescueNode.java:221) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.interpret(RescueNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BeginNode.interpret(BeginNode.java:83) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:336) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.BlockBody.call(BlockBody.java:73) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.call(Block.java:101) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyProc.call(RubyProc.java:290) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyProc.call(RubyProc.java:224) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyProc$INVOKER$i$0$0$call.call(RubyProc$INVOKER$i$0$0$call.gen) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:210) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:206) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yieldSpecific(InterpretedBlock.java:229) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.yieldSpecific(Block.java:111) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ZYieldNode.interpret(ZYieldNode.java:25) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:316) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:145) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:149) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgBlockPassNode.interpret(CallNoArgBlockPassNode.java:53) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:118) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:316) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:145) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:154) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:64) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallOneArgNode.interpret(FCallOneArgNode.java:36) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.executeBody(RescueNode.java:221) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.interpret(RescueNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallOneArgNode.interpret(FCallOneArgNode.java:36) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyClass.finvoke(RubyClass.java:690) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Helpers.invoke(Helpers.java:498) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyBasicObject.callMethod(RubyBasicObject.java:363) [jruby-complete-1.7.9.jar:na]
    at org.jruby.javasupport.JavaEmbedUtils$1.callMethod(JavaEmbedUtils.java:143) [jruby-complete-1.7.9.jar:na]
    at org.jruby.rack.DefaultRackApplication.call(DefaultRackApplication.java:64) [jruby-rack-1.1.13.2.jar:na]
    at org.jruby.rack.AbstractRackDispatcher.process(AbstractRackDispatcher.java:33) [jruby-rack-1.1.13.2.jar:na]
    at org.jruby.rack.AbstractFilter.doFilter(AbstractFilter.java:66) [jruby-rack-1.1.13.2.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.platform.SecurityServletFilter.doHttpFilter(SecurityServletFilter.java:59) [sonar-server-5.4.jar:na]
    at org.sonar.server.platform.SecurityServletFilter.doFilter(SecurityServletFilter.java:49) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.platform.MasterServletFilter$GodFilterChain.doFilter(MasterServletFilter.java:127) [sonar-server-5.4.jar:na]
    at org.sonar.server.platform.MasterServletFilter.doFilter(MasterServletFilter.java:94) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.user.UserSessionFilter.doFilter(UserSessionFilter.java:59) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.platform.ProfilingFilter.doFilter(ProfilingFilter.java:84) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at ch.qos.logback.access.tomcat.LogbackValve.invoke(LogbackValve.java:191) [logback-access-1.1.3.jar:na]
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.8.0_66]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.8.0_66]
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at java.lang.Thread.run(Unknown Source) [na:1.8.0_66]
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[na:1.8.0_66]
    at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.validator.Validator.validate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[na:1.8.0_66]
    ... 404 common frames omitted
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source) ~[na:1.8.0_66]
    at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source) ~[na:1.8.0_66]
    at java.security.cert.CertPathBuilder.build(Unknown Source) ~[na:1.8.0_66]
    ... 410 common frames omitted
2016.04.30 00:28:08 INFO  web[c.q.p.s.b.i.QualityGateStatusRetriever] An error occurred while retrieving quality gate status for key '612': {}
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.ssl.Alerts.getSSLException(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[na:1.8.0_66]
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:394) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:134) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:220) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:164) ~[httpclient-4.5.1.jar:4.5.1]
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:139) ~[httpclient-4.5.1.jar:4.5.1]
    at com.qualinsight.plugins.sonarqube.badges.internal.QualityGateStatusRetriever.responseBodyForKey(QualityGateStatusRetriever.java:109) ~[qualinsight-sonarqube-badges-1.2.1-DEBUG.jar:na]
    at com.qualinsight.plugins.sonarqube.badges.internal.QualityGateStatusRetriever.retrieveFor(QualityGateStatusRetriever.java:85) ~[qualinsight-sonarqube-badges-1.2.1-DEBUG.jar:na]
    at com.qualinsight.plugins.sonarqube.badges.extension.BadgesWebService$1.handle(BadgesWebService.java:71) [qualinsight-sonarqube-badges-1.2.1-DEBUG.jar:na]
    at org.sonar.server.ws.WebServiceEngine.execute(WebServiceEngine.java:85) [sonar-server-5.4.jar:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_66]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_66]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_66]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_66]
    at org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:425) [jruby-complete-1.7.9.jar:na]
    at org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:292) [jruby-complete-1.7.9.jar:na]
    at org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:44) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:70) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallManyArgsNode.interpret(CallManyArgsNode.java:59) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyClass.finvoke(RubyClass.java:527) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:2590) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel.send(RubyKernel.java:2223) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:350) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallOneArgNode.interpret(FCallOneArgNode.java:36) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:118) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:268) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:230) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:236) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallThreeArgNode.interpret(FCallThreeArgNode.java:40) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yieldSpecific(InterpretedBlock.java:229) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.yieldSpecific(Block.java:111) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ZYieldNode.interpret(ZYieldNode.java:25) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yieldSpecific(InterpretedBlock.java:229) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.yieldSpecific(Block.java:111) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ZYieldNode.interpret(ZYieldNode.java:25) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.WrapperMethod.call(WrapperMethod.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:143) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:154) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallNoArgBlockNode.interpret(FCallNoArgBlockNode.java:32) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:143) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:154) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:64) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ArrayNode.interpretPrimitive(ArrayNode.java:94) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ArrayNode.interpret(ArrayNode.java:84) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:60) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.LocalAsgnNode.interpret(LocalAsgnNode.java:123) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.executeBody(RescueNode.java:221) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.interpret(RescueNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:56) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:81) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyClass.finvoke(RubyClass.java:527) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:2590) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel.send(RubyKernel.java:2223) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:350) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallSpecialArgNode.interpret(FCallSpecialArgNode.java:39) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:268) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:230) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:236) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallSpecialArgNode.interpret(FCallSpecialArgNode.java:43) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:225) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:214) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:66) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:202) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallTwoArgNode.interpret(CallTwoArgNode.java:59) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:225) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:214) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:202) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallTwoArgNode.interpret(FCallTwoArgNode.java:38) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:60) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.executeBody(RescueNode.java:221) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.interpret(RescueNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BeginNode.interpret(BeginNode.java:83) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.VCallNode.interpret(VCallNode.java:88) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:336) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.BlockBody.call(BlockBody.java:73) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.call(Block.java:101) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyProc.call(RubyProc.java:290) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyProc.call(RubyProc.java:224) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyProc$INVOKER$i$0$0$call.call(RubyProc$INVOKER$i$0$0$call.gen) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:210) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:206) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:384) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.InterpretedBlock.yieldSpecific(InterpretedBlock.java:229) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Block.yieldSpecific(Block.java:111) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ZYieldNode.interpret(ZYieldNode.java:25) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:316) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:145) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:149) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgBlockPassNode.interpret(CallNoArgBlockPassNode.java:53) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:118) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:161) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:190) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:143) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:154) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:64) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.ToAryNode.interpret(ToAryNode.java:69) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.MultipleAsgnNode.interpret(MultipleAsgnNode.java:127) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallOneArgNode.interpret(FCallOneArgNode.java:36) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.executeBody(RescueNode.java:221) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.RescueNode.interpret(RescueNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.FCallOneArgNode.interpret(FCallOneArgNode.java:36) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.IfNode.interpret(IfNode.java:116) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [jruby-complete-1.7.9.jar:na]
    at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) [jruby-complete-1.7.9.jar:na]
    at org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182) [jruby-complete-1.7.9.jar:na]
    at org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:198) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyClass.finvoke(RubyClass.java:690) [jruby-complete-1.7.9.jar:na]
    at org.jruby.runtime.Helpers.invoke(Helpers.java:498) [jruby-complete-1.7.9.jar:na]
    at org.jruby.RubyBasicObject.callMethod(RubyBasicObject.java:363) [jruby-complete-1.7.9.jar:na]
    at org.jruby.javasupport.JavaEmbedUtils$1.callMethod(JavaEmbedUtils.java:143) [jruby-complete-1.7.9.jar:na]
    at org.jruby.rack.DefaultRackApplication.call(DefaultRackApplication.java:64) [jruby-rack-1.1.13.2.jar:na]
    at org.jruby.rack.AbstractRackDispatcher.process(AbstractRackDispatcher.java:33) [jruby-rack-1.1.13.2.jar:na]
    at org.jruby.rack.AbstractFilter.doFilter(AbstractFilter.java:66) [jruby-rack-1.1.13.2.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.platform.SecurityServletFilter.doHttpFilter(SecurityServletFilter.java:59) [sonar-server-5.4.jar:na]
    at org.sonar.server.platform.SecurityServletFilter.doFilter(SecurityServletFilter.java:49) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.platform.MasterServletFilter$GodFilterChain.doFilter(MasterServletFilter.java:127) [sonar-server-5.4.jar:na]
    at org.sonar.server.platform.MasterServletFilter.doFilter(MasterServletFilter.java:94) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.user.UserSessionFilter.doFilter(UserSessionFilter.java:59) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.sonar.server.platform.ProfilingFilter.doFilter(ProfilingFilter.java:84) [sonar-server-5.4.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at ch.qos.logback.access.tomcat.LogbackValve.invoke(LogbackValve.java:191) [logback-access-1.1.3.jar:na]
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.8.0_66]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.8.0_66]
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.0.30.jar:8.0.30]
    at java.lang.Thread.run(Unknown Source) [na:1.8.0_66]
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[na:1.8.0_66]
    at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.validator.Validator.validate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[na:1.8.0_66]
    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[na:1.8.0_66]
    ... 389 common frames omitted
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source) ~[na:1.8.0_66]
    at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source) ~[na:1.8.0_66]
    at java.security.cert.CertPathBuilder.build(Unknown Source) ~[na:1.8.0_66]
    ... 395 common frames omitted
pawlakm commented 8 years ago

Ok, thanks for the logs Jürgen.

Here is the explanation of the problem. In order to generate the badge, the plugin needs to call a webservice to retrieve the quality gate status. As SonarQube web services cannot be called directly through an API with SQ < 5.5, Version 1.2.1 of the SVG Badges plugin does this by calling the quality gate web service through HTTP(s) instead. If HTTP is used, there is no problem, however if your instance is a HTTPS one, when the plugin tries to call the service, a HTTPS certificate is required. The plugin does not ignore SSL certificate errors.

You should be able to prevent this error by retrieving your certificate then importing it into your VM's certificate store as follows:

keytool -importcert -file certificate.cer -keystore keystore.jks -alias "Alias"

(nice SO post on this topic here : http://stackoverflow.com/questions/4325263/how-to-import-a-cer-certificate-into-a-java-keystore )

Then you need to restart your SQ instance.

Michel

jknodlseder commented 8 years ago

Thanks a lot for your help.

I'm however not very familiar with all this certificat business, do you know how I can retrieve my certificate?

jknodlseder commented 8 years ago

Found it.

Unfortunately, I still get the same error after adding the certificat to the keystore :-(

pawlakm commented 8 years ago

have you restarted the server ?

what does the keytool -list -v -keystore keystore.jks command return ?

jknodlseder commented 8 years ago

Yes, I restarted the server several times.

The keytool command shows the certificat that I just added:

Nom d'alias : sonar2
Date de création : 30 avr. 2016
Type d'entrée : trustedCertEntry

I tried to generate a keystore.jks file locally, but also installed it in the /usr/java/jre1.8.0_66/lib/security/cacerts file.

pawlakm commented 8 years ago

can you try with this version please : qualinsight-sonarqube-badges-1.2.2-SNAPSHOT.zip

(you need to change extension to jar)

jknodlseder commented 8 years ago

It works!!! Thank you so much (well, I'm actually "failing" the quality gate :-).

quality-gate

Looks like you disabled ssl check? Would it be possible to have this as a configuration option in the future?

I also recognised that the measures are no longer in the doc. Is this a feature that will come with 2.0?

pawlakm commented 8 years ago

Glad to head that it helped you.

In 2.0.0, the plugin does not call web services through HTTP(s) but through a Java API, as a result there is no need to check SSL certificates anymore. IMHO checking certificate in this context is a bit overkill as the web service calls another web service provided by the same instance of SQ (not saying that the information that is returned by the second web service is far from being sensitive, and that if auth is required, the service won't be reachable anyway). If current workaround works, and as 2.0.0 is about be released, I don't plan to try to find a cleaner way to achieve the same result.

And yes measures badges will be available with 2.0.0 (the code is ready, I'm waiting for the release of SQ 5.5.) Again I'm sorry for the misunderstanding and the mess induced by forgetting to create a branch. Anyway, now and thanks to your question, the code of 2.0.0 has been moved to its own branch.

Michel

P.S. If you want to try the new version and measures badges you need to install SQ 5.5-RC2.

jknodlseder commented 8 years ago

Thanks again. I will wait until SQ 5.5 is out and then upgrade also the plugin.

pawlakm commented 8 years ago

You're welcome !

pawlakm commented 8 years ago

@jknodlseder I just released 5.5, it should be available in update center soon.

jknodlseder commented 8 years ago

Thanks a lot for the heads up. I've seen it in the update center. Will move soon to the new SonarQube version.

Le 11 mai 2016 à 01:03, Michel Pawlak notifications@github.com a écrit :

@jknodlseder https://github.com/jknodlseder I just released 5.5, it should be available in update center soon.

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/QualInsight/qualinsight-plugins-sonarqube-badges/issues/23#issuecomment-218317337