cgi c++ tomcat execution problem, weisser screen!



  • hi!

    ich verwende tomcat 5.5.17 und moechte ein cgi-skript ausfuehren (unter verwendung der cgicc library).
    wenn ich in webapps hello.html reinkopiere und ein formular in diesem abschicke, werden die POST-informationen an hello.cgi im ordner WEB-inf/cgi-bin/ gesendet.

    es wird auch anscheinend executed, nur leider erhalte ich einen komplett weissen screen. unter page-source erscheint genau nichts, wenn ich nachschauen moechte ob die site irgendwie kreiert ist.

    was mache ich falsch? einmal hat mir java beim executen auf dem weissen bildschirm diverse flush-exceptions angezeigt. leider hab ich diese nicht notiert.

    lg,
    KITT22

    so habe ich kompiliert:

    bash$ g++ -o hello.cgi hello.cc -I/home/meinName/TriDAS/daq/extern/cgicc/linuxx86/include -L/home/meinName/TriDAS/daq/extern/cgicc/linuxx86/lib -lcgicc

    hier mein hello.cc

    #include <iostream>
    #include <vector>
    #include <string>
    
    #include "cgicc/CgiDefs.h"
    #include "cgicc/Cgicc.h"
    #include "cgicc/HTTPHTMLHeader.h"
    #include "cgicc/HTMLClasses.h"
    
    #include <stdio.h>
    #include <stdlib.h>
    
    using namespace std;
    using namespace cgicc;     // Or reference as cgicc::Cgicc formData; below in object instantiation.
    
    int main(int argc, char **argv)
    {
        try {
           Cgicc formData;
    
           // Send HTTP header: Content-type: text/html
           cout << HTTPHTMLHeader() << endl;
    
           // Print: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
           cout << HTMLDoctype(HTMLDoctype::eStrict) << endl;
    
           // Print: <html lang="en" dir="LTR">
           cout << html().set("lang", "EN").set("dir", "LTR") << endl;
    
           // Set up the HTML document
           cout << html() << head() << title("Cgicc example") << head() << endl;
           cout << body().set("bgcolor","#cccccc").set("text","#000000").set("link","#0000ff").set("vlink","#000080") << endl;
    
           cout << h1("This is a demonstration of the GNU CgiCC library") << endl;
    
                  // Close the HTML document
           cout << body() << html();
        }
        catch(exception& e) {
           // handle any errors here.
           cout << "ERROR!!" << endl;
        }
        return 0;   // To avoid Apache errors.
    }
    


  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • hi!

    mir wurde ein tipp gegeben: dynamic linker!
    nur ich weiss nicht, wie ich die cgicc library in den dynamic linker einfueg!?
    bzw auf diese linke.

    hab schon ein wenig gegoogelt, aber leider erfolglos! 😞

    lg,
    KITT


Anmelden zum Antworten