diff --git a/spring-context/src/main/java/org/springframework/scripting/jruby/JRubyScriptUtils.java b/spring-context/src/main/java/org/springframework/scripting/jruby/JRubyScriptUtils.java index 2530ae4ad5..a0115803c3 100644 --- a/spring-context/src/main/java/org/springframework/scripting/jruby/JRubyScriptUtils.java +++ b/spring-context/src/main/java/org/springframework/scripting/jruby/JRubyScriptUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2013 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,7 +25,6 @@ import java.util.List; import org.jruby.Ruby; import org.jruby.RubyArray; -import org.jruby.RubyException; import org.jruby.RubyNil; import org.jruby.ast.ClassNode; import org.jruby.ast.Colon2Node; @@ -116,10 +115,12 @@ public abstract class JRubyScriptUtils { /** * Find the first {@link ClassNode} under the supplied {@link Node}. - * @return the found {@code ClassNode}, or {@code null} - * if no {@link ClassNode} is found + * @return the corresponding {@code ClassNode}, or {@code null} if none found */ private static ClassNode findClassNode(Node node) { + if (node == null) { + return null; + } if (node instanceof ClassNode) { return (ClassNode) node; } @@ -229,9 +230,6 @@ public abstract class JRubyScriptUtils { /** * Exception thrown in response to a JRuby {@link RaiseException} * being thrown from a JRuby method invocation. - *

Introduced because the {@code RaiseException} class does not - * have useful {@link Object#toString()}, {@link Throwable#getMessage()}, - * and {@link Throwable#printStackTrace} implementations. */ @SuppressWarnings("serial") public static class JRubyExecutionException extends NestedRuntimeException { @@ -242,12 +240,7 @@ public abstract class JRubyScriptUtils { * @param ex the cause (must not be {@code null}) */ public JRubyExecutionException(RaiseException ex) { - super(buildMessage(ex), ex); - } - - private static String buildMessage(RaiseException ex) { - RubyException rubyEx = ex.getException(); - return (rubyEx != null && rubyEx.message != null) ? rubyEx.message.toString() : "Unexpected JRuby error"; + super(ex.getMessage(), ex); } }