Class cast exception in PKeyRSA.java ------------------------------------ Key: JRUBY-3557 URL: http://jira.codehaus.org/browse/JRUBY-3557 Project: JRuby Issue Type: Bug Components: OpenSSL Affects Versions: JRuby 1.2 Environment: jruby 1.2 on Mac OS X Reporter: Martin Englund Priority: Minor
Trying to get puppet running on jruby I got the following error, due to an import of javax.crypto.Cipher Index: PKeyRSA.java =================================================================== --- PKeyRSA.java (revision 9524) +++ PKeyRSA.java (working copy) @@ -298,7 +298,7 @@ char[] passwd = null; String algo = null; if(args.length > 0 && !args[0].isNil()) { - algo = ((Cipher)args[0]).getAlgorithm(); + algo = ((org.jruby.ext.openssl.Cipher)args[0]).getAlgorithm(); if(args.length > 1 && !args[1].isNil()) { passwd = args[1].toString().toCharArray(); } [mar...@mbp:puppet-0.24.8] 572$ puppetmasterd --no-daemonize PKeyRSA.java:412:in `export': java.lang.ClassCastException: org.jruby.ext.openssl.Cipher cannot be cast to javax.crypto.Cipher from org/jruby/ext/openssl/PKeyRSA$i_method_0_0$RUBYINVOKER$export.gen:-1:in `call' from JavaMethod.java:624:in `call' from DynamicMethod.java:169:in `call' from CachingCallSite.java:293:in `cacheAndCall' from CachingCallSite.java:152:in `call' from CallTwoArgNode.java:59:in `interpret' from LocalAsgnNode.java:123:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from IfNode.java:112:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:125:in `call' from DefaultMethod.java:126:in `call' from CachingCallSite.java:253:in `cacheAndCall' from CachingCallSite.java:72:in `call' from CallNoArgNode.java:61:in `interpret' from NewlineNode.java:104:in `interpret' from IfNode.java:114:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:125:in `call' from DefaultMethod.java:126:in `call' from CachingCallSite.java:253:in `cacheAndCall' from CachingCallSite.java:72:in `call' from CallNoArgNode.java:61:in `interpret' from NewlineNode.java:104:in `interpret' from IfNode.java:114:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:125:in `call' from DefaultMethod.java:126:in `call' from CachingCallSite.java:253:in `cacheAndCall' from CachingCallSite.java:72:in `call' from CallNoArgNode.java:61:in `interpret' from InstAsgnNode.java:91:in `interpret' from NewlineNode.java:104:in `interpret' from InterpretedBlock.java:192:in `evalBlockBody' from InterpretedBlock.java:143:in `yield' from Block.java:100:in `yield' from YieldNode.java:115:in `interpret' from ReturnNode.java:88:in `interpret' from IfNode.java:114:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:220:in `call' from DefaultMethod.java:171:in `call' from WrapperMethod.java:82:in `call' from CachingCallSite.java:303:in `cacheAndCall' from CachingCallSite.java:161:in `callBlock' from CachingCallSite.java:176:in `callIter' from CallTwoArgBlockNode.java:62:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:125:in `call' from DefaultMethod.java:126:in `call' from CachingCallSite.java:253:in `cacheAndCall' from CachingCallSite.java:72:in `call' from CallNoArgNode.java:61:in `interpret' from NewlineNode.java:104:in `interpret' from IfNode.java:114:in `interpret' from NewlineNode.java:104:in `interpret' from InterpretedMethod.java:125:in `call' from DefaultMethod.java:126:in `call' from CachingCallSite.java:253:in `cacheAndCall' from CachingCallSite.java:72:in `call' from CallNoArgNode.java:61:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:182:in `call' from DefaultMethod.java:153:in `call' from CachingCallSite.java:283:in `cacheAndCall' from CachingCallSite.java:121:in `callBlock' from CachingCallSite.java:126:in `call' from RubyClass.java:554:in `call' from DynamicMethod.java:152:in `call' from CachingCallSite.java:273:in `cacheAndCall' from CachingCallSite.java:112:in `call' from CallOneArgNode.java:57:in `interpret' from InstAsgnNode.java:91:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:182:in `call' from DefaultMethod.java:153:in `call' from CachingCallSite.java:283:in `cacheAndCall' from CachingCallSite.java:121:in `callBlock' from CachingCallSite.java:126:in `call' from RubyClass.java:554:in `call' from DynamicMethod.java:152:in `call' from CachingCallSite.java:273:in `cacheAndCall' from CachingCallSite.java:112:in `call' from CallOneArgNode.java:57:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedBlock.java:192:in `evalBlockBody' from InterpretedBlock.java:143:in `yield' from Block.java:100:in `yield' from RubyEnumerable.java:599:in `call' from CallBlock.java:82:in `yield' from Block.java:100:in `yield' from RubyHash.java:1014:in `visit' from RubyHash.java:546:in `visitAll' from RubyHash.java:1011:in `each' from org/jruby/RubyHash$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:-1:in `call' from RubyClass.java:332:in `finvoke' from RuntimeHelpers.java:373:in `invoke' from RubyEnumerable.java:67:in `callEach' from RubyEnumerable.java:596:in `collect' from org/jruby/RubyEnumerable$s_method_0_0$RUBYFRAMEDINVOKER$collect.gen:-1:in `call' from CachingCallSite.java:263:in `cacheAndCall' from CachingCallSite.java:81:in `callBlock' from CachingCallSite.java:86:in `call' from CallNoArgBlockNode.java:64:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:163:in `call' from DefaultMethod.java:144:in `call' from CachingCallSite.java:273:in `cacheAndCall' from CachingCallSite.java:112:in `call' from FCallOneArgNode.java:36:in `interpret' from LocalAsgnNode.java:123:in `interpret' from NewlineNode.java:104:in `interpret' from IfNode.java:112:in `interpret' from NewlineNode.java:104:in `interpret' from BlockNode.java:71:in `interpret' from InterpretedMethod.java:182:in `call' from DefaultMethod.java:153:in `call' from CachingCallSite.java:283:in `cacheAndCall' from CachingCallSite.java:121:in `callBlock' from CachingCallSite.java:126:in `call' from RubyClass.java:554:in `call' from DynamicMethod.java:152:in `call' from CachingCallSite.java:273:in `cacheAndCall' from CachingCallSite.java:112:in `call' from puppetmasterd:239:in `rescue_4$RUBY$__rescue___6' from puppetmasterd:234:in `__file__' from puppetmasterd:-1:in `load' from Ruby.java:577:in `runScript' from Ruby.java:480:in `runNormally' from Ruby.java:354:in `runFromMain' from Main.java:229:in `run' from Main.java:110:in `run' from Main.java:94:in `main' -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email