解決策を見つけました!
processStatusLine をオーバーライドし、ステータスが 100 であることを確認します。
最初の 100 が期待されていることを思い出してください (サーバーは、POST を続行できることを通知します)。私の場合は、それを安全に無視できます。このようにして、サーバーが応答しているすべての情報を取得します。
public class Counting100PostMethod extends PostMethod {
Logger log = Logger.getLogger(Counting100PostMethod.class);
boolean first100 = true;
public Counting100PostMethod() {
super();
}
public Counting100PostMethod(String s) {
super(s);
}
@Override
protected void processStatusLine(HttpState httpState, HttpConnection httpConnection) {
super.processStatusLine(httpState, httpConnection);
int status = getStatusCode();
if (status == 100) {
if (first100) {
first100 = false;
} else {
// can now increment counter
log.debug("Increment counter");
}
}
}