Ankündigung

Einklappen
Keine Ankündigung bisher.

Datenbank-Zugriff per eigener Java-Klasse

Einklappen
X

Datenbank-Zugriff per eigener Java-Klasse

Einklappen
  • Filter
  • Zeit
Alles löschen
neue Beiträge

  • Datenbank-Zugriff per eigener Java-Klasse

    Gibt es jemanden, der per eigener Java-Klasse Datenbank-Zugriffe auf die Intrexx-DB realisiert? Falls ja, würde mich der Ansatz interessieren.
    Mich nervt es, dass ich Groovy-Prozesse nur einfach verknüpfen kann. Wenn ich die Logik in eine Java-Klasse auslagere, steigert das die Wartbarkeit enorm.

  • #2
    Hi,

    Das generelle Einbinden von eigenen Javaklassen ist in dieser technischen Dokumentation beschrieben:

    https://www.intrexx.com/de/downloads...ntation&s=java

    Folgendes ist ergänzend zu beachten:
    1. Die Intrexx-libs in den java build path des eigenen Projektes einbinden.
    2. Damit die Klasse unter Groovy aufrufbar ist : Annotation @Scriptable eintragen
    für Velocity ist es @VelocityCallable(value="singleton") und der Eintrag in der callables.cfg (wie im Dokument oben beschrieben)
    Man muss für Velocity und Grooovy getrennte Klassen bereitstellen.
    3. Die Datenbank Verbindung kann über ContextConnection.get() geholt werden ( http://docs.intrexx.com/intrexx/vers...onnection.html )
    4. Im Groovy den Import Befehl für die eigene Javaklasse an den Kopf des scriptes stellen
    5. wenn die Klassen unter Intrexx ausgetauscht werden oder der Kontext, dann muss immer der Intrexx-Portaldienst neu gestartet werden


    Es gibt dazu auch an der Academy ein Schulungsangebot ( https://www.intrexx.com/de/academy Entwicklerseminar 3)

    das mal in aller Kürze :-)

    gruss
    Kerstin
    Zuletzt geändert von KerstinS; 20.02.17, 07:26. Grund: link ergänzt

    Kommentar


    • #3
      Hallo,

      wo findet man denn die ganzen benötigten Libs wenn man ein Projekt in Eclipse erstellen will ?

      Kommentar


      • #4
        Unter Properties im Eclipse alle .jars aus der Installation intrexx/lib einbinden

        Kommentar


        • #5
          Hi KerstinS,

          kannst du vielleicht ein Beispiel mit dem Methode ContextConnection.get() posten?

          Kommentar


          • #6
            Hier noch ein spätes Dankeschön an KerstinS (hat sehr geholfen!) und ein Beispiel für das holen der Verbindung.

            Code:
            public boolean setMercateoStatusToDb(String status) {
            
                    boolean successful = false;
            
                    JdbcConnection conn = ContextConnection.get();
            
                    DbQuery qry = new DbQuery();
            
                    DbPreparedStatement stmt = null;
            
                    try {
            
                        stmt = qry.prepare(conn, "update BESTELLANTRAG set STR_MERCATEOTRANSFERSTATUS = ?, dtedit = now() where lid = ? ");
            
                        stmt.setString(1, status);
            
                        stmt.setInt(2, lid);
            
                        stmt.execute();
            
                        successful = true;
            
                    } catch (SQLException e) {
            
                        logger.error("Error in SQL QUERY!", e);
            
                    } finally {
            
                        try {
            
                            stmt.close();
            
                            qry.close();
            
                        } catch (SQLException e) {
            
                            logger.error("DbPreparedStatement oder DbQuery konnte nicht geschlossen werden!", e);
            
                        }
            
                    }
                    return successful;
            
                }

            Kommentar

            Lädt...
            X