pragma home page
QuestBYte home page
support
services
live demo
download
faq

FAQ pragma::tims



Allgemein

Linux

PostgreSQL


  • "Fehler: 4023" - "Fehler beim Verbindungsaufbau. Angegebene Datenbank-URL nicht gefunden."

    Zwei Fehlerquellen kommen hier in Betracht:

    1. Sollte PostgreSQL eingesetzt werden, können folgende Schritte ausgeführt werden. Es gibt zwei relevante Konfigurationsdateien im Verzeichnis "data" des PostgreSQL-Home-Verzeichnisses (bspw. C:\Programme\PostgreSQL\8.1\data): pg_hba.conf und postgresql.conf.

    In der pg_hba.conf sollten unter "# IPv4 local connections:" die eigene Adresse des Servers und die des Tomcat-Servers eingetragen werden, bspw.:

    host all all 192.168.1.1/32 md5

    In der postgresql.conf sollte der Eintrag "listen_adresses" folgendermaßen aussehen:

    listen_addresses = '*'

    Nach einem Neustart von PostgreSQL sollte alles lauffähig sein.

    2. Es sollte überprüft werden, ob die WebStart-Applikationen richtig konfiguriert worden sind. Diese finden sich im Tomcat-Verzeichnis unter "webapps". Für die beiden WebStart-Applikation pragma::tims (Verzeichnis pragma-tims) und pragma::admin (Verzeichnis pragma-admin), könnte in der jeweils zugehörigen JNLP-Datei (bspw. tims.jnlp) ein Fehler sein. Es sollte einen Eintrag der folgenden Form geben:

    <application-descmain-class="com.mceti.tims.sc.TimsLoginDialog">
    <argument>192.168.1.1:8080/pragma-tims/</argument>
    <argument>192.168.1.1:5432</argument>
    <argument>pragma_tims</argument>
    <argument>postgres</argument>
    </application-desc>

    Dies ist das Beispiel für pragma::tims. Wichtig sind die IP-Adressen und Ports in den <argument>-Tags. Das erste "argument" ist die Tomcat-Adresse. Das zweite ist die Adresse der Datenbank. Stimmen die Angaben in diesen Dateien?

    Sollte auch der pragma::tims c³ eingesetzt werden, kann die Konfiguration hierfür ähnlich überprüft werden. Diese befindet sich in der Datei <Tomcat-HOME>\webapps\pragma-tims-c3\WEB-INF\web.xml.

    Relevant ist hier der Eintrag:

    <context-param>
    <param-name>server.url</param-name>
    <param-value>192.168.1.1:5432</param-value>
    </context-param>

    Die IP-Adresse sollte dem des Datenbankservers entsprechen. Nach Änderungen muss Tomcat neu gestartet werden.

  • Tomcat nicht erreichbar.
    Fehlermeldung: "Interner Fehler" - "Der Server ist nicht erreichbar. Prüfen Sie, ob Tomcat gestartet ist." (Linux)

    • Im localhost.log findet sich die Exception:
      StandardWrapperValve[AdminLoginDialogServlet]: Servlet.service() for servlet AdminLoginDialogServlet threw exception java.security.AccessControlException: access denied (java.util.PropertyPermission user.language write) ...
    • Fügen Sie zur Konfigurationsdatei /etc/tomcat5/policy.d/03catalina.policy folgendes hinzu:
      // pragma::tims 
      grant codeBase "file:/var/lib/tomcat5/webapps/pragma-admin/-" {
      permission java.security.AllPermission; };
      grant codeBase "file:/var/lib/tomcat5/webapps/pragma-tims/-" {
      permission java.security.AllPermission; };
      grant codeBase "file:/var/lib/tomcat5/webapps/pragma-tims-c3/-" {
      permission java.security.AllPermission; };
    • Fügen Sie zur Konfigurationsdatei /etc/tomcat5/policy.d/04webapps.policy folgendes hinzu:
      // pragma::tims
      permission java.util.PropertyPermission "user.language", "write";
  • Ticket kann nicht angelegt werden. "Fehler: 5056" - "There has been an exception." (PostgreSQL)

    Im Protokoll (pragma_tims_BL_log.txt) findet sich
    org.postgresql.util.PSQLException:
    FEHLER: could not find tsearch config by local
    Ein einfache Lösung für dieses Problem ist es, das default locale der Datenbank durch das locale des Servers zu ersetzen. Starten Sie psql auf der pragma::tims Datenbank und lassen sich das locale ihres Servers anzeigen, um es danach als default zu setzen, z.B.:
    postgres@myserver:/$ psql pragma_tims -U postgres
    pragma_tims=# show lc_collate;
    lc_collate
    -------------
    en_US.UTF-8
    (1 row)
    pragma_tims=# UPDATE pg_ts_cfg SET locale = 'en_US.UTF-8'
    WHERE ts_name = 'default';
    UPDATE 1
    Dies sollte in den meisten Fällen ausreichen. Eine aufwendigere Lösung ist es ein tsearch2-dictionary für ihr Locale zu erstellen (siehe unter "tearch2 configuration", weiteres auch unter "could not find tsearch by locale").
  • Wie erstellt man ein Backup ("Dump") der Datenbank mit PostgreSQL?

    Benutzen Sie das Kommandozeilentool pg_dump, welches im "bin"-Verzeichnis von PostgreSQL zu finden ist. Beispiel (ohne Zeilenumbruch):
    pg_dump -i -h localhost -p 5432 -U postgres -F p -D -v -f
    c:\pragma_tims.backup pragma_tims
    Dieser Dump beinhaltet die komplette Datenbank OHNE die Benutzer. Sollte nur die Datenbank auf demselben PostgreSQL-Server hergestellt werden, ist diese ausreichend, da die Benutzer dort vorhaden sind. Für ein Backup mit Benutzern muss das Programm pg_dumpall verwendet werden, welches das kompletten Datenbankcluster inkl. aller Benutzer und ALLER Datenbanken dumped. Beispiel:
    pg_dumpall > c:\database.backup -U postgres -p 5432
     
Suche  |  Sitemap  |  Kontakt  |  Impressum