我需要在freemarker中加載和處理模板。我正在使用管道流通過freemarker讀回生成的結果。Freemarker中的管道流問題
示例代碼:
PipedInputStream pi = new PipedInputStream();
PipedOutputStream po = new PipedOutputStream(pi);
Writer writer = new OutputStreamWriter(po);
configuration.getTemplate("xx").process(rootMap, writer);
的問題是,有時它的freemarker procsss方法內凍結。 沒有錯誤,沒有例外,但它不是從process
方法返回。
如果我將管道流轉換成ByteArray流,它工作正常。
我是否正確使用管道流?
爲什麼要讀回生成的結果?你想用它做什麼? – 2010-09-02 07:50:33
@Arne:我想讀取生成的模板並將其寫入另一個流。 (zip流)。 – mhshams 2010-09-02 08:40:05
爲什麼不簡單地在zip流中使用OutputStreamWriter? – 2010-09-02 08:46:00