我试图拆分一个ArrayList并使用Apache Camel将每个元素写入自己的文件,就像在这个简化的例子中一样:
from("timer://poll?period=10000").process(new Processor(){
public void process(Exchange exchange){
ArrayList<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
list.add("three");
exchange.getIn().setBody(list, ArrayList.class);
}
}).split(body()).log(body().toString()).to("file:some/dir");
Run Code Online (Sandbox Code Playgroud)
日志打印每个项目,但只有"三"保存到文件.我究竟做错了什么?
一月
我已经在WildFly论坛上问了这个问题,但到目前为止还没有得到任何答案.所以我在这里尝试.
自从我从WildFly 8.1升级到8.2后,我在连接到bean的tabView中遇到了一个commandButton问题.
这是一个简单的JSF页面:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head></h:head>
<h:body>
<h:form>
<p:tabView binding="#{testBean.tabView}">
<p:tab title="Tab">
<p:commandButton value="Inside" action="#{testBean.testInside}"/>
</p:tab>
</p:tabView>
<p:commandButton value="Outside" action="#{testBean.testOutside}"/>
</h:form>
</h:body>
</html>
Run Code Online (Sandbox Code Playgroud)
和豆:
@Named
@SessionScoped
public class TestBean implements Serializable {
private TabView tabView = new TabView();
public TabView getTabView() {
return tabView;
}
public void setTabView(TabView tabView) {
this.tabView = tabView;
}
public void testInside() {
System.out.println("inside");
}
public void testOutside() {
System.out.println("outside");
}
}
Run Code Online (Sandbox Code Playgroud)
单击"内部"按钮会触发testInside() 两次."外部"按钮(tabView外部)表现正常,只触发一次方法.删除tabView绑定可以消除此问题.我正在使用PrimeFaces 4.0. …