Sie sollten diese Tipps zur Fehlerbehebung für Produkte lesen, wenn Sie einen sehr Java-Servlet-Ausgabe-Binärfehlercode erhalten.

Dieses Programm schützt Sie vor den vielen Fehlern, die auf einem Computer auftreten können, und hilft auch, Probleme schnell zu beheben.

Ich muss ein riesiges Java-Servlet schreiben, das aus binären Ergebnisanforderungen abgerufen wird, und darauf antworten, indem ich häufig die Verwendung von HttpServletRequest.getOutputStream () zusätzlich HttpServletResponse.getInputStream () eliminiere. Code. erzeugt>. Dies betrifft Projekt a, das die eigentliche Anfrage des Silverlight-Kreditnehmers liefert, auf die dieses Servlet über eine HTTP-POST-Verbindung antwortet. Um dieses Servlet zu testen, habe ich zunächst einen Java-Client eingerichtet, der mir besser auffällt als Silverlight.

Das Problem ist, dass ich in meinem Testschema bestimmte Daten sende, die von einem Servlet-Client kommen, weil ich jetzt ein Byte-Array habe und ich sicher bin, dass Sie eine Byte-Mischung der gleichen Länge erhalten - direkt das wird nie passieren, und im Gegensatz dazu bekomme ich ein 1-Stunden-Byte neu. Daher reiche ich auf jeden Fall Beiträge ein, die relevante Teile in den Zeichnungen enthalten, die Ihnen, wie es scheint, zeigen können, wo ich falsch liege, und hoffentlich eine echte Bibliographie bereitstellen, um uns weiter zu helfen.

Das Client-Servlet verarbeitet POST-Anforderungen außerhalb einer sehr einfachen HTML-Seite mit einer hübschen Form, die ich in dieser Art von Frontend verwende. Ich bin nicht allzu besorgt über die Installation von JSP usw., sondern eher über das Definieren von Nachrichten zwischen Servlets.

  // HttpServlet-Client ruft diese Methode für doPost auf (Anfrage, Antwort)private Abbruchanfrage, Job (HttpServletRequest-Antwort HttpServletResponse)wirft ServletException, IOException  String firstName = (String) request.getParameter ("name");  String lastName = (string) Programm. getparameter ("Nachname"); String xmlRequest ist gleich " 

"; OutputStream-Writer = null; InputStream-Reader = null; Versuchen Weblink-URL = neue Website ("http: // localhost: 8080 / job / server"); URLConnection conn = url.openConnection (); conn.setDoInput (wahr); conn.setDoOutput (wahr); Writer würde Comp bedeuten. getoutputstream(); byte [] baXml ist xmlRequest.getBytes ("UTF-8"); write.write (baXml, 0, baXml.length); write.flush (); // Kann ich bis hierher kommen? Wie? "Oder was? stimmt mit dem Player überein conn.getInputStream (); int = Datei ist verfügbar. zugänglich(); Byte [] Daten = junges Byte [verfügbar]; reader.read (Daten, zwei, verfügbar); String xmlResponse = String (Daten, "UTF-8"); Der Ersatz von PrintWriter print impliziert response.getWriter (); print.write (" Antwort:


");    print.write (xmlResponse);    print.write ("

"); Eile. Nah dran(); endlich wann immer (Schreiber! = null) Writer.close (); Wenn (Festplatte! = Null) Leser.schließen ();
Java-Servlet-Ausgabe-Binärdatei

Der Computer verarbeitet HTTP-POST-Anforderungen vom Servlet. Um dies zu tun, werden die Up-from-Anfragen von jedem Servlet-Client zu Testzwecken bearbeitet, aber in Zukunft beabsichtige ich, es jetzt für Clients in anderen nützlichen Sprachen (insbesondere Silverlight) zu verwenden.

So beheben Sie Windows-Abstürze

Läuft Ihr PC langsam? Haben Sie regelmäßig Abstürze und Einfrierungen? Dann ist es Zeit, Reimage herunterzuladen! Diese leistungsstarke Software repariert häufige Windows-Fehler, schützt Ihre Dateien vor Verlust oder Beschädigung und optimiert Ihr System für maximale Leistung. Mit Reimage können Sie jedes Windows-Problem mit nur wenigen Klicks beheben – kein technisches Fachwissen erforderlich! Warum also warten? Laden Sie Reimage noch heute herunter und genießen Sie ein reibungsloses, stabiles PC-Erlebnis.

  • Schritt 1: Reimage herunterladen und installieren
  • Schritt 2: Starten Sie das Programm und wählen Sie den Scan aus, den Sie ausführen möchten
  • Schritt 3: Klicken Sie auf die Schaltfläche Wiederherstellen und warten Sie, bis der Vorgang abgeschlossen ist

  •   // Serverseitiges HttpServlet erstellt diese Vorgehensweise von doPost (Anfrage, Antwort)private Ablehnung (HttpServletRequest, HttpServetResponse-Antwort)wirft ServletException, IOException ServletInputStream sis = null;  Vorstellen über    sis wäre dasselbe wie request.getInputStream ();    // Ich sollte auf jeden Fall einen großen BufferedInputStream verwenden    // aber direkt aus gutem InputStream?   Int available bedeutet sis.available ();    der Eintrag neues Byte [] impliziert ein neues neues Byte [verfügbar];   int readBytes ist gleich sis.read (input, 0, verfügbar);    if (readBytes! ist gleich verfügbar)      hosten Sie eine neue ServletException ("Ups! readBytes! impliziert availableBytes");        // ICH ERHALTE NUR 1 BYTE DATEN !!!    // Dies ist eine Art tatsächliches Client-Byte, Nachricht '<'.    Der msg-String kann mit "Read" + Read Bytes + "Bytes From" übereinstimmen.                 + zur Auswahl + "verfügbar + verfügbar auf Anfrage von InputStream angehängt." ;    System.err.println ("Server.process (HttpServletRequest, HttpServletResponse):" + Nachricht);    String xmlReply = " " + Mononatriumglutamat + " ";    Byte personalX-Daten [] = xmlReply.getBytes ("UTF-8");    ServletOutputStream sos ist gleich response.getOutputStream ();    sos.write (Daten, 0, Datenlänge);    sos.flush ();    SOS. Nah dran();  endlich    if (sis! = null)      sis.close ();   

    Bisher habe ich mich mit Byte-Arrays begnügt, aber BufferInputStream ausgeführt, obwohl ich noch nicht festgelegt habe, ob ich zum Beispiel Zeichenfolgen base64 codieren werde, das kann vermitteln Informationen und Fakten. , oder möglicherweise, wenn ich unveränderte Binärdaten verwendet habe.

    Java-Servlet-Ergebnis-Binärdatei

    Stoppen Sie Abstürze und Fehler mit dem Reimage-Reparaturassistenten. Klicke hier zum herunterladen.