Spring XD:" Stream在有效载荷和#34之间关闭; shell处理器的异常

时间:2015-08-27 15:45:09

标签: java spring bash shell spring-xd

简单的 shell处理器获取输入数据并回送它:

nano  /tmp/echo.sh
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
#!/bin/bash
[ $# -ge 1 -a -f "$1" ] && input="$1" || input="-"
cat $input
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

通过以下方式部署到Spring XD时工作正常:

stream create test --definition "file --mode=contents --outputType=text/plain | shell --command='bash /tmp/echo.sh' | b:file --binary=true --dirExpression='''/tmp/out''' --nameExpression=headers[file_name]" --deploy

但是当我尝试扩展shell脚本来调用web服务时,例如由

#!/bin/bash
[ $# -ge 1 -a -f "$1" ] && input="$1" || input="-"
#cat $input
 curl http://some.address/webservice -d 'output=xml' -d "text=$(cat $input)"

我总是得到一个" Stream在Spring XD的有效负载和#34; 异常之间关闭。即使我尝试通过

返回(现有)文件
#!/bin/bash
[ $# -ge 1 -a -f "$1" ] && input="$1" || input="-"
#cat $input
 cat /tmp/output.xml

我得到同样的例外。

0 个答案:

没有答案