根据Kafka文件:
生产者负责选择将哪个消息分配给主题中的哪个分区.
因此我的主要问题是:
如何使用kafka-console-producer.sh(或Kafka Java客户端)将消息发送到所选分区?
我想在消息发送时指定某种"分区ID".可能这样的"分区ID"存储在Zookeeper中的某个地方.你知道哪一个值(在Zookeeper中)识别Kafka分区吗?
我有非常简单的JSF bean,如下所示:
import org.jboss.seam.annotations.Name;
@Name(Sample.NAME)
public class Sample {
public static final String NAME="df";
private String text = "text-test";
public void sampleM(){
System.out.println("Test: "+text);
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
Run Code Online (Sandbox Code Playgroud)
和JSF表单连接这个组件:
<h:form id="sampleForm">
<h:commandButton id="sampleButton" action="#{df.sampleM()}" value="ok" />
</h:form>
Run Code Online (Sandbox Code Playgroud)
现在,我想以编程方式将POST请求发送到此表单.
根据我的调查,这里的关键是POST参数.正确选择可以得到正确的结果(字符串'测试:文本测试'打印在serwer的控制台上).
所以问题是:我应该如何选择正确的POST数据?
上面显示的JSF表单生成此HTML表单:
<form id="sampleForm" name="sampleForm" method="post" action="/pages/main/main.smnet" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="sampleForm" value="sampleForm" />
<input id="sampleForm:sampleButton" type="submit" name="sampleForm:sampleButton" value="ok" />
<input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="j_id65" autocomplete="off" /> …Run Code Online (Sandbox Code Playgroud)