public static void startupSoap() {
    { Object old$Module$000 = Stella.$MODULE$.get();
      Object old$Context$000 = Stella.$CONTEXT$.get();

      try {
        Native.setSpecial(Stella.$MODULE$, Stella.getStellaModule("/SOAP", Stella.$STARTUP_TIME_PHASE$ > 1));
        Native.setSpecial(Stella.$CONTEXT$, ((Module)(Stella.$MODULE$.get())));
        if (Stella.currentStartupTimePhaseP(2)) {
          Soap.SYM_SOAP_STARTUP_SOAP = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("STARTUP-SOAP", null, 0)));
        }
        if (Stella.currentStartupTimePhaseP(5)) {
          { Stella_Class renamed_Class = Stella.defineClassFromStringifiedSource("SOAP-FAULT-EXCEPTION", "(DEFCLASS SOAP-FAULT-EXCEPTION (STELLA-EXCEPTION) :PUBLIC-SLOTS ((FAULT :TYPE |Fault|)))");

            renamed_Class.classConstructorCode = Native.find_java_method("edu.isi.webtools.soap.SoapFaultException", "newSoapFaultException", new java.lang.Class [] {Native.find_java_class("java.lang.String")});
          }
        }
        if (Stella.currentStartupTimePhaseP(6)) {
          Stella.finalizeClasses();
        }
        if (Stella.currentStartupTimePhaseP(7)) {
          Stella.defineFunctionObject("PROCESS-SOAP-RPC-REQUEST", "(DEFUN PROCESS-SOAP-RPC-REQUEST ((SOAPSTRING STRING) (SUPRESSNAMESPACES? BOOLEAN) (STREAM OUTPUT-STREAM)) :DOCUMENTATION \"'envelope' is a string-representation of SOAP envelope containing an\nRPC request.  This functions writes a SOAP envelope containing a service response to `stream'.\" :PUBLIC? TRUE)", Native.find_java_method("edu.isi.webtools.soap.Soap", "processSoapRpcRequest", new java.lang.Class [] {Native.find_java_class("java.lang.String"), java.lang.Boolean.TYPE, Native.find_java_class("edu.isi.stella.OutputStream")}), null);
          Stella.defineFunctionObject("GET-RPC-METHOD", "(DEFUN (GET-RPC-METHOD SYMBOL) ((ENVELOPE |Envelope|)))", Native.find_java_method("edu.isi.webtools.soap.Soap", "getRpcMethod", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.objects.soap_env.Envelope")}), null);
          Stella.defineFunctionObject("GET-RPC-ARGUMENTS", "(DEFUN (GET-RPC-ARGUMENTS (CONS OF |XMLObject|)) ((ENVELOPE |Envelope|)))", Native.find_java_method("edu.isi.webtools.soap.Soap", "getRpcArguments", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.objects.soap_env.Envelope")}), null);
          Stella.defineFunctionObject("DISPATCH-RPC-CALL", "(DEFUN (DISPATCH-RPC-CALL |Envelope|) ((ENVELOPE |Envelope|)))", Native.find_java_method("edu.isi.webtools.soap.Soap", "dispatchRpcCall", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.objects.soap_env.Envelope")}), null);
          Stella.defineFunctionObject("DISPATCH-CALL-WITH-METHOD-AND-ARGS", "(DEFUN (DISPATCH-CALL-WITH-METHOD-AND-ARGS |Envelope|) ((METHODNAME SYMBOL) (ARGUMENTS (CONS OF |XMLObject|))))", Native.find_java_method("edu.isi.webtools.soap.Soap", "dispatchCallWithMethodAndArgs", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Symbol"), Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("CREATE-SOAP-ENVELOPE", "(DEFUN (CREATE-SOAP-ENVELOPE |Envelope|) ((CONTENTS |XMLObject|)))", Native.find_java_method("edu.isi.webtools.soap.Soap", "createSoapEnvelope", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.objects.xml_objects.XMLObject")}), null);
          Stella.defineFunctionObject("CREATE-SOAP-FAULT", "(DEFUN (CREATE-SOAP-FAULT |Fault|) ((FCODE STRING) (FSTRING STRING) (FACTOR STRING) (FDETAIL |XMLObject|)) :DOCUMENTATION \"Create a SOAP Fault object.  `fcode' and `fstring' are required.\n`factor' and `fdetail' are optional fields.  Fault code should be one of\n\\\"SOAP-ENV:VersionMismatch\\\", \\\"SOAP-ENV:MustUnderstand\\\" \\\"SOAP-ENV:Client\\\" or\n\\\"SOAP-ENV:Server\\\".  These may change to keywords in the future.\" :PUBLIC? TRUE)", Native.find_java_method("edu.isi.webtools.soap.Soap", "createSoapFault", new java.lang.Class [] {Native.find_java_class("java.lang.String"), Native.find_java_class("java.lang.String"), Native.find_java_class("java.lang.String"), Native.find_java_class("edu.isi.webtools.objects.xml_objects.XMLObject")}), null);
          Stella.defineFunctionObject("SOAP-RPC-REQUEST-HANDLER", "(DEFUN SOAP-RPC-REQUEST-HANDLER ((XCHG HTTP-EXCHANGE)) :DOCUMENTATION \"Handle a request encoded by a SOAP message envelope in the body of an HTTP POST\ncommand, unpack the envelope, dispatch the request, and return the result as SOAP envelope.\" :PUBLIC? TRUE)", Native.find_java_method("edu.isi.webtools.soap.Soap", "soapRpcRequestHandler", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.http.HttpExchange")}), null);
          Stella.defineFunctionObject("CALL-WEBSERVICE", "(DEFUN (CALL-WEBSERVICE |XMLObject|) ((CALLOBJECT |XMLObject|) (URL STRING)) :DOCUMENTATION \"Package `callObject' into a SOAP envelope, send it to the webservice at `url'.\" :PUBLIC? TRUE)", Native.find_java_method("edu.isi.webtools.soap.Soap", "callWebservice", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.objects.xml_objects.XMLObject"), Native.find_java_class("java.lang.String")}), null);
          Stella.defineFunctionObject("MAKE-SOAP-RPC-REQUEST-HEADERS", "(DEFUN (MAKE-SOAP-RPC-REQUEST-HEADERS HTTP-HEADERS) ())", Native.find_java_method("edu.isi.webtools.soap.Soap", "makeSoapRpcRequestHeaders", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("STARTUP-SOAP", "(DEFUN STARTUP-SOAP () :PUBLIC? TRUE)", Native.find_java_method("edu.isi.webtools.soap._StartupSoap", "startupSoap", new java.lang.Class [] {}), null);
          { MethodSlot function = Symbol.lookupFunction(Soap.SYM_SOAP_STARTUP_SOAP);

            KeyValueList.setDynamicSlotValue(function.dynamicSlots, Http.SYM_STELLA_METHOD_STARTUP_CLASSNAME, StringWrapper.wrapString("_StartupSoap"), Stella.NULL_STRING_WRAPPER);
          }
        }
        if (Stella.currentStartupTimePhaseP(8)) {
          Stella.finalizeSlots();
          Stella.cleanupUnfinalizedClasses();
        }
        if (Stella.currentStartupTimePhaseP(9)) {
          Stella_Object.inModule(((StringWrapper)(Stella_Object.copyConsTree(StringWrapper.wrapString("SOAP")))));
          Http.publishHandler("/ploom/soap-rpc/generic-soap-service", Native.find_java_method("edu.isi.webtools.soap.Soap", "soapRpcRequestHandler", new java.lang.Class [] {Native.find_java_class("edu.isi.webtools.http.HttpExchange")}), Cons.cons(Http.KWD_CONTENT_TYPE, Cons.cons(StringWrapper.wrapString(Http.getHttpMimeType(Http.KWD_XML, null)), Cons.cons(Http.KWD_DOCUMENTATION, Cons.cons(StringWrapper.wrapString("Generic SOAP RPC handler."), Stella.NIL)))));
        }

      } finally {
        Stella.$CONTEXT$.set(old$Context$000);
        Stella.$MODULE$.set(old$Module$000);
      }
    }
  }