corani
Sep 24th, 2009, 08:40 AM
I'm using Spring Integration 1.0.3.RELEASE, and have troubles getting the filename-generator to work.
My spring configuration is as follows:
...
<integration:channel id="file-channel" />
<file:outbound-channel-adapter directory="/tmp/integration" channel="template-channel" filename-generator="filename-generator" />
<bean id="filename-generator" class="some.FileNameGenerator" />
...
The implementation of the filename generator is as follows:
public class FilenameGenerator extends DefaultFileNameGenerator {
@Override
public String generateFileName(Message<?> message) {
System.out.println("generateFileName(" + message.getPayload() + ")");
String filename = super.generateFileName(message);
System.out.println("Generate filename: " + filename);
if (message.getPayload() instanceof SomeMessage) {
filename = "example_filename.txt";
}
System.out.println("Generate filename: " + filename);
return filename;
}
}
I see the filename-generator getting called, but no file is written to disk. When I replace "some.FileNameGenerator" with "org.springframework.integration.file.DefaultFileNa meGenerator" no file is written either. When I remove the filename-generator attribute, the file gets written.
Am I doing something wrong, or is this a bug?
My spring configuration is as follows:
...
<integration:channel id="file-channel" />
<file:outbound-channel-adapter directory="/tmp/integration" channel="template-channel" filename-generator="filename-generator" />
<bean id="filename-generator" class="some.FileNameGenerator" />
...
The implementation of the filename generator is as follows:
public class FilenameGenerator extends DefaultFileNameGenerator {
@Override
public String generateFileName(Message<?> message) {
System.out.println("generateFileName(" + message.getPayload() + ")");
String filename = super.generateFileName(message);
System.out.println("Generate filename: " + filename);
if (message.getPayload() instanceof SomeMessage) {
filename = "example_filename.txt";
}
System.out.println("Generate filename: " + filename);
return filename;
}
}
I see the filename-generator getting called, but no file is written to disk. When I replace "some.FileNameGenerator" with "org.springframework.integration.file.DefaultFileNa meGenerator" no file is written either. When I remove the filename-generator attribute, the file gets written.
Am I doing something wrong, or is this a bug?