RESOLVED - BATCH-589: StepExecutionResourceProxy's toString() leads to NPE

added assertion delegate is not null in toString (similar to other methods) and removed the toString usage in FlatFileItemReader#setResource
This commit is contained in:
robokaso
2008-04-16 08:09:50 +00:00
parent 33ab740a1f
commit 3d30a64f0b
2 changed files with 3 additions and 9 deletions

View File

@@ -291,9 +291,9 @@ public class StepExecutionResourceProxy extends StepExecutionListenerSupport imp
* Delegates to the proxied Resource.
*/
public String toString() {
Assert.state(delegate != null, "The delegate resource has not been initialised. "
+ "Remember to register this object as a StepListener.");
return delegate.toString();
}
}

View File

@@ -72,8 +72,6 @@ public class FlatFileItemReader extends ExecutionContextUserSupport implements I
private Resource resource;
private String path;
private RecordSeparatorPolicy recordSeparatorPolicy;
private String[] comments;
@@ -181,7 +179,7 @@ public class FlatFileItemReader extends ExecutionContextUserSupport implements I
} catch (RuntimeException ex) {
// add current line count to message and re-throw
int lineCount = getReader().getPosition();
throw new FlatFileParseException("Parsing error at line: " + lineCount + " in resource=" + path
throw new FlatFileParseException("Parsing error at line: " + lineCount + " in resource=" + resource.getDescription()
+ ", input=[" + line + "]", ex, line, lineCount);
}
}
@@ -255,10 +253,6 @@ public class FlatFileItemReader extends ExecutionContextUserSupport implements I
*/
public void setResource(Resource resource) {
this.resource = resource;
path = resource.toString();
if (path.length() > 50) {
path = path.substring(0, 20) + "..." + path.substring(path.length());
}
}
/**