Program: 10920
Project: 10920
Buggy source:
@Override protected final void doPost(HttpServletRequest req,HttpServletResponse resp) throws ServletException, IOException {
  if (!useControlProtocol) {
    resp.sendError(HttpServletResponse.SC_NOT_IMPLEMENTED,"String_Node_Str" + "String_Node_Str");
    return;
  }
  getLogger().debug("String_Node_Str" + req.getRequestURI());
  if (!req.isAsyncSupported()) {
    resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,"String_Node_Str" + this.getClass().getName() + "String_Node_Str");
    return;
  }
  if (isHandlerNull()) {
    resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,getHandlerSimpleClassName() + "String_Node_Str" + "String_Node_Str"+ getHandlerSimpleClassName());
    return;
  }
  String contentId=req.getPathInfo();
  if (contentId != null) {
    contentId=contentId.substring(1);
  }
  AsyncContext asyncCtx=req.startAsync();
  asyncCtx.addListener(new ContentAsyncListener());
  JsonRpcRequest message=null;
  try {
    message=protocolManager.receiveJsonRequest(asyncCtx);
  }
 catch (  JsonSyntaxException jse) {
    protocolManager.sendJsonError(asyncCtx,JsonRpcResponse.newError(ERROR_PARSE_ERROR,"String_Node_Str" + jse.getMessage(),0));
    return;
  }
catch (  JsonIOException jie) {
    protocolManager.sendJsonError(asyncCtx,JsonRpcResponse.newError(ERROR_INTERNAL_ERROR,"String_Node_Str" + jie.getMessage(),0));
    return;
  }
  if (message == null) {
    protocolManager.sendJsonError(asyncCtx,JsonRpcResponse.newError(ERROR_INTERNAL_ERROR,"String_Node_Str",0));
    return;
  }
  AbstractContentRequest contentRequest=null;
  if (message.getMethod().equals(METHOD_START)) {
    contentRequest=createContentRequest(asyncCtx,contentId);
    contentRequestManager.put(contentRequest);
  }
 else   if (message.getSessionId() != null) {
    contentRequest=contentRequestManager.get(message.getSessionId());
    if (contentRequest == null) {
      protocolManager.sendJsonError(asyncCtx,JsonRpcResponse.newError(ERROR_INVALID_REQUEST,"String_Node_Str" + message.getSessionId(),message.getId()));
      return;
    }
  }
 else {
    protocolManager.sendJsonError(asyncCtx,JsonRpcResponse.newError(ERROR_INVALID_REQUEST,"String_Node_Str",message.getId()));
    return;
  }
  Future<?> future=executor.getExecutor().submit(createAsyncRequestProcessor(contentRequest,message,asyncCtx));
  req.setAttribute(ContentAsyncListener.FUTURE_REQUEST_PROCESSOR_ATT_NAME,future);
  req.setAttribute(ContentAsyncListener.CONTENT_REQUEST_ATT_NAME,contentRequest);
  req.setAttribute(ContentAsyncListener.CONTROL_PROTOCOL_REQUEST_MESSAGE_ATT_NAME,message);
}

Fixed version (ground truth):
@Override protected final void doPost(HttpServletRequest req,HttpServletResponse resp) throws ServletException, IOException {
  getLogger().debug("String_Node_Str" + req.getRequestURI());
  if (!req.isAsyncSupported()) {
    resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,"String_Node_Str" + this.getClass().getName() + "String_Node_Str");
    return;
  }
  if (isHandlerNull()) {
    resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,getHandlerSimpleClassName() + "String_Node_Str" + "String_Node_Str"+ getHandlerSimpleClassName());
    return;
  }
  String contentId=req.getPathInfo();
  if (contentId != null) {
    contentId=contentId.substring(1);
  }
  AsyncContext asyncCtx=req.startAsync();
  asyncCtx.addListener(new ContentAsyncListener());
  if (useControlProtocol) {
    doRequest4JsonControlProtocol(asyncCtx,contentId,resp);
  }
 else {
    doRequest4SimpleHttpProtocol(asyncCtx,contentId,resp);
  }
}