Menu

Javasccript Server

2015-08-27
2015-08-27
  • Mauro Roiter

    Mauro Roiter - 2015-08-27

    Ciao a tutti,

    mi sto imbattendo in alcuni problemi nelle azioni Javascript Server.
    Il primo era un problema legato all'utilizzo dell'oggetto utils (che non veniva riconosciuto), che ho risolto passando dalla versione 3.2.0 alla versione 3.3.1.
    Ora il problema si è spostato più avanti, ovvero riesco ad utilizzare l'oggetto utils ed in particolare lo utilizzo per eseguire una query della quale vorrei elaborare il risultato. Quindi faccio:

    var rows = utils.executeQuery(sql, null, false, true,
    userInfo.companyId,
    userInfo.siteId,
    userInfo.siteId,
    userInfo.username,
    userInfo.languageId);

    L'oggetto rows dovrebbe essere in formato JSON (come da documentazione), ma così non è. L'oggetto è in realtà una stringa in formato JSON. Ho pensato quindi di convertirla utilizzando il metodo nativo Javascript JSON.parse:

    var jsonRes = JSON.parse(rows);

    ma ricevo un errore di questo tipo:

    Error:
    sun.org.mozilla.javascript.EcmaError: ReferenceError: "JSON" is not defined.'

    Si tratta di un bug? Se sì, c'è un modo per aggirarlo?

    Grazie mille.

    Mauro

     
  • mcarniel

    mcarniel - 2015-08-27

    devi usare:

    eval("("+json+"));

    l'oggetto JSON non è riconosciuto dall'implementazione js di Java standard.

     
  • Mauro Roiter

    Mauro Roiter - 2015-08-27

    Grazie per la risposta tempestiva!

    Ho provato ad utilizzare eval, ma così facendo sembra che l'azione Javasccript Server non venga nemmeno più invocata. Nel file di log, non vedo più i miei log nè quelli della query che dovrebbe essere eseguita, ma non ci sono nemmeno errori o stacktrace di eccezioni.

    L'unica cosa che ho notato è un warning che mi dà 4ws in corrsipondenza della riga dove utilizzo eval:

    "eval can be harmful"

     
  • Mauro Roiter

    Mauro Roiter - 2015-08-27

    Rettifico.

    La funzione viene chiamata e l'eval funziona correttamente.

    Grazie mille

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.