code: @Override
      public void error(VirtualConnection vc, TCPWriteRequestContext wsc, IOException ioe) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
              Tr.debug(tc, "error called: vc=" + vc + " ioe=" + ioe);
          }
          HttpInboundServiceContextImpl mySC = (HttpInboundServiceContextImpl) vc.getStateMap().get(CallbackIDs.CALLBACK_HTTPISC);
  
          if (mySC.getHttpConfig().getDebugLog().isEnabled(DebugLog.Level.WARN)) {
              mySC.getHttpConfig().getDebugLog().log(DebugLog.Level.WARN, HttpMessages.MSG_WRITE_FAIL, mySC);
          }
          mySC.logLegacyMessage();
          // pass on the error if possible, else just close the connection
          mySC.setPersistent(false);
          if (null != mySC.getAppWriteCallback()) {
              mySC.getAppWriteCallback().error(vc, ioe);
          } else {
              mySC.getLink().getDeviceLink().close(vc, ioe);
          }
      }
docs: Called by the channel below us when an error occurs during a write.
  
  @param vc
  - VirtualConnection
  @param wsc
  - TCPWriteRequestConext
  @param ioe