Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Camel中模拟文件端点_Java_File_Junit_Apache Camel - Fatal编程技术网

Java 在Camel中模拟文件端点

Java 在Camel中模拟文件端点,java,file,junit,apache-camel,Java,File,Junit,Apache Camel,我希望对骆驼路线进行单元测试,如下所示: from("file://config") .process(configProcessor) 我已使用adviceWith将from替换为一个直接端点,并使用生产者模板发送测试交换,但是configProcessor中的In-exchange主体属于文件类型,并且有一些问题,如建议不要尝试模拟文件对象 是否可以传递另一个扩展文件但不写入磁盘的对象,或者我是否应该创建一个临时文件,或者甚至重构configProcessor,以将I/O从处理中分

我希望对骆驼路线进行单元测试,如下所示:

from("file://config")
    .process(configProcessor)
我已使用adviceWith将from替换为一个直接端点,并使用生产者模板发送测试交换,但是
configProcessor
中的In-exchange主体属于文件类型,并且有一些问题,如建议不要尝试模拟文件对象


是否可以传递另一个扩展文件但不写入磁盘的对象,或者我是否应该创建一个临时文件,或者甚至重构
configProcessor
,以将I/O从处理中分离出来?

最后,我选择将处理从
process()
中分离出来。这不完全是我所希望的,但它是有效的。

您的问题是,当您测试代码时,configProcess只接受类型“file”,而您的测试代码不向“file”发送消息?不完全是,因此configProcessor当前只接受类型“file”,而我的测试代码当前发送一个引用磁盘上文件的文件对象。我不想发送对磁盘上文件的引用。这是否意味着能够发送引用内存位置的文件对象或其他内容。你能发布你的代码吗?你找到问题的根源了吗?