[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Jan 2003
    Beiträge
    302
    Rainer,

    ich habe ein Problem mit den sample.js auf dieser Seite.....
    https://www.ibm.com/developerworks/i...i-with-nodejs/

    Ich habe alle Beispiele erfolgreich durch, bekomme nur beim letzten Beispiel mit dem "CMD ausführen" einen Fehler, der wohl mit dem XML-Service der AS400 zu tun hat und ich nicht genau weiß, wie ich da weiterkomme..
    Hier der Fehler aus der Putty-Console..

    Anhang 394

    Und hier das sample.js-Script....

    // sample4 4.Teil von https://www.ibm.com/developerworks/i...ejs/index.html
    // dazu gehört sample2.html


    var http = require('http');
    var fs = require('fs');
    var url = require('url');
    var db = require('/QOpenSys/QIBM/ProdData/OPS/Node6/os400/db2i/lib/db2a');
    var xt = require('/QOpenSys/QIBM/ProdData/OPS/Node6/os400/xstoolkit/lib/itoolkit');
    var DBname = "*LOCAL";
    var userId = "user";
    var passwd = "password";

    var ip = "10.50.40.202";
    var port = 8886;
    //console.log('__dirname: ', __dirname);

    var webserver = http.createServer((req,res) => {
    var realPath = __dirname + url.parse(req.url).pathname;
    fs.exists(realPath, (exists) => {
    if(!exists){
    var sql = url.parse(req.url, true).query.sql;
    var cl = url.parse(req.url, true).query.cl;
    if(sql && sql.length > 0) {
    console.log("SQL statement : " + sql);
    var dbconn = new db.dbconn();
    dbconn.conn(DBname, userId, passwd); // Connect to the DB
    var stmt = new db.dbstmt(dbconn);
    stmt.exec(sql, (rs) => { // Query the statement
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end(JSON.stringify(rs));
    stmt.close();
    dbconn.disconn();
    dbconn.close();
    });
    }
    if(cl && cl.length > 0) {
    console.log("CL statement : " + cl);
    var conn = new xt.iConn(DBname, userId, passwd);
    conn.add(xt.iSh("system -i " + cl));
    conn.run((rs) => {
    res.writeHead(200, {'Content-Type': 'text/plain'});

    res.end(xt.xmlToJson(rs)[0].data); => hier tritt der Fehler auf !

    });
    }
    } else {
    var file = fs.createReadStream(realPath);
    res.writeHead(200, {'Content-Type':'text/html'});
    file.on('data', res.write.bind(res));
    file.on('close', res.end.bind(res));
    file.on('error', (err) => {
    res.writeHead(500, {'Content-Type':'text/plain'});
    res.end("500 Internal Server Error");
    });
    }
    });
    });
    webserver.listen(port, ip);
    console.log('Server running at http://' + ip + ':' + port);



    Hier das sample.js-script als textdatei..
    Anhang 395

    Ich weiß gar nicht, ob und wie ich den XMLSERVICE installieren/aktivieren muss....

    Vielen Dank vorab für die Mühe !

  2. #2
    Registriert seit
    Jan 2003
    Beiträge
    302
    Oh man....sorry !!!!
    ....der Fehler liegt natürlich in der CCSID des Jobs !!!
    Über die Problematik hatte ich einen Hinweis "gelesen"...aber nur kurz

    Jetzt läuft das Beispiel fehlerfrei...
    Und weiter geht's...nun die Integration in Net.Data als Ersatz für die SQL-Schnittstelle dort !!1

    Danke +sorry noch einmal !

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •