code: public void print(String s) throws IOException {
          if (s==null) s="null";
          int len = s.length();
          for (int i = 0; i < len; i++) {
              char c = s.charAt (i);
  
              //
              // XXX NOTE:  This is clearly incorrect for many strings,
              // but is the only consistent approach within the current
              // servlet framework.  It must suffice until servlet output
              // streams properly encode their output.
              //
              if ((c & 0xff00) != 0) {        // high order byte must be zero
                  String errMsg = lStrings.getString("err.not_iso8859_1");
                  Object[] errArgs = new Object[1];
                  errArgs[0] = Character.valueOf(c);
                  errMsg = MessageFormat.format(errMsg, errArgs);
                  throw new CharConversionException(errMsg);
              }
              write (c);
          }
      }
docs: Writes a <code>String</code> to the client,
  without a carriage return-line feed (CRLF)
  character at the end.
  
  
  @param s                       the <code>String</code> to send to the client
  
  @exception IOException         if an input or output exception occurred