AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
07.06.20 - 05:42:58
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Lotus Notes / Domino Sonstiges
| |-+  Java und .NET mit Notes/Domino (Moderatoren: Axel, m3)
| | |-+  JAVA Agent
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: JAVA Agent  (Gelesen 3959 mal)
arcon
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 47


Notes4Ever


WWW
« am: 04.12.03 - 14:51:16 »

Ich habe mit Eclips eine Progi geschrieben welches mir Daten
aus unserem LDAP Verzeichnis liefert.

Wenn ich nun dieses Script in einem Notes JAVA Agenten verwende bekomme
ich die Meldung das er die Class javax.naming.Context nicht findet  Huh

Hier der Code aus Eclips:

package Ldap;

   import javax.naming.Context;
   import javax.naming.directory.InitialDirContext;
   import javax.naming.directory.DirContext;
   import javax.naming.directory.Attributes;
   import javax.naming.NamingException;
   import java.util.Hashtable;

public class ReadLdap {

   

   
     public static void main(String[] args) {
        // Provider
           System.out.println("Hashtabelle fuer Properties");
        Hashtable env = new Hashtable(11);
           System.out.println("INITIAL_CONTEXT_FACTORY : com.sun.jndi.ldap.LdapCtxFactory");
        env.put(Context.INITIAL_CONTEXT_FACTORY,
            "com.sun.jndi.ldap.LdapCtxFactory");
           System.out.println("PROVIDER_URL : ldap://ldap.xxxxx.at");
        env.put(Context.PROVIDER_URL, "ldap://ldap.wuestenrot.at/uid=rxx,ou=personen,o=xxxxx,c=at");
           System.out.println("Context");
        try {
         // initialisieren des Contextes
            System.out.println("Initialisieren des Contextes");
         DirContext ctx = new InitialDirContext(env);
         // Attribute des Objektes abfragen
            System.out.println("Attribute abfragen");
         Attributes attrs = ctx.getAttributes("");
         // suche ("sn") und Ausgabe
      
         System.out.println("sn: " + attrs.get("sn").get());
      
      
         // und tschüss ...
         ctx.close();
        } catch (NamingException e) {
           System.err.println("Problem : " + e);
        }
     
   }
}



Weis da einer was da los ist ?
« Letzte Änderung: 05.12.03 - 10:20:36 von arcon » Gespeichert
Gandhi
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 918


Domino for the masses


« Antworten #1 am: 04.12.03 - 14:59:54 »

Welche Notes Version (wichtig wg. vorhandenem SDK)
Gespeichert

Der "Wenn ich" und der "Hätt' ich" das sind zwei arme Leut'
oder für den Süden:
Hatti Tatti Wari - san drei Larifari
arcon
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 47


Notes4Ever


WWW
« Antworten #2 am: 04.12.03 - 15:11:01 »

Ups sorry,

Ver. 5.0.11
Gespeichert
Gandhi
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 918


Domino for the masses


« Antworten #3 am: 04.12.03 - 15:23:36 »

Domino 5.x benutzt meines Wissens noch JDK 1.1....wahrscheinlich ist die Library da noch nicht drin....
Falls dem tatsächlich so ist, müsstest Du entweder die Klassen importieren oder die JDK auf dem Server austauschen.
Gespeichert

Der "Wenn ich" und der "Hätt' ich" das sind zwei arme Leut'
oder für den Süden:
Hatti Tatti Wari - san drei Larifari
Axel Janssen temp
Gast
« Antworten #4 am: 04.12.03 - 15:24:07 »

cooler Ansatz. Cool

Dann hast du eine Java Version 1.1.8. Was vermutlich ein echtes Problem darstellt.

Weiterhin bezweifele ich irgendwie stark, dass javax.naming.xxx.* Bestandteil irgendeines jsdks sind (nicht mal 1.4).

Hast du die vielleicht in dein eclipse-Projekt als external jars oder wie-auch-immer reinimportiert?

Ich glaube, du müsstest irgendeine jndi-Implementierung finden, die mit Java1.1.8 läuft.

try google. Und halte uns bitte informiert.

Gruß Axel  

*für alle: JNDI ist Bestandteil der J2EE und ist eine API, die Zugriffe auf Naming und Directory Dienst ermöglicht (LDAP, Novell, etc).

« Letzte Änderung: 04.12.03 - 15:24:52 von Axel Janssen temp » Gespeichert
Axel Janssen temp
Gast
« Antworten #5 am: 04.12.03 - 15:33:56 »


Weiterhin bezweifele ich irgendwie stark, dass javax.naming.xxx.* Bestandteil irgendeines jsdks sind (nicht mal 1.4).

das war Quatsch. JNDI ist zumindest seit Java1.2 Bestandteil des Sun-JSDK.
Spezifikationsmässig offenbar als optional package.
Steht bei euch irgendwie ein upgrade auf Domino6 ins Haus würde ich solange warten. Das könnte damit ohne weiteres funktionieren.  
Gespeichert
arcon
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 47


Notes4Ever


WWW
« Antworten #6 am: 05.12.03 - 10:18:19 »

Hi, danke für die Antworten !

Habe mich auch noch etwas schlauer gemacht bezüglich der Klassen.

Also der umstieg auf 6 oder 6.5 wird noch dauern !

Mit 6 geht es da sieht man auch ettliche Klassen mehr bei den
Referenzen im Agent unter anderem auch diese javax.naming...

Jetzt gibts eigentlich nur zwei möglichkeiten oder ?

1.) Ein Applications Server der mit Ver. 6 läuft und aus LDAP daten bereitstellt und dann dem Mailserver Ver. 5 die Daten gibt. Was wiederum Geld kostet und noch mehr Server benötigt Sad.

2.) Man löst die benötigten Klassen aus der rt.jar 1.4 und bindet Sie
selbst im Java Agenten ein wenn sowas über haubt möglich ist.
[Vorsicht Gehirngespienst Smiley].

Währe der Punkt 2. möglich ? Kann mir da wer Hilfestellung geben ?

thx, arcon
Gespeichert
arcon
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 47


Notes4Ever


WWW
« Antworten #7 am: 05.12.03 - 10:23:06 »

Domino 5.x benutzt meines Wissens noch JDK 1.1....wahrscheinlich ist die Library da noch nicht drin....
Falls dem tatsächlich so ist, müsstest Du entweder die Klassen importieren oder die JDK auf dem Server austauschen.

Wie kann man die JDK austauschen die Notes verwendet ?
Gespeichert
Axel Janssen temp
Gast
« Antworten #8 am: 05.12.03 - 11:21:05 »

1.) Ein Applications Server der mit Ver. 6 läuft und aus LDAP daten bereitstellt und dann dem Mailserver Ver. 5 die Daten gibt. Was wiederum Geld kostet und noch mehr Server benötigt Sad.
Mach es mit Tomcat. Der ist gut und umsonst:
http://jakarta.apache.org/tomcat/index.html
(nimm 4 oder 5). 5 hat glaub ich seit kurzem das erste stable Release. Wir haben aber auch schon in einem Projekt beim Kunden die beta im Einsatz. 4 ist aber auch völligst in Ordnung.  
Hier ist die Installationsanleitung.
http://www.moreservlets.com/Using-Tomcat-4.html
Tomcat läuft standardmässig auf port 8080 (kann umgestellt werden). Er kommt so nicht mit Domino ins Gehege.
Du müsstest deinen Agenten als Servlet umschreiben (nicht schwierig).
Du kannst diese Serverseitige Anwendung mit Hilfe des Sysdeo-plugins sogar debuggen (arbeite ich auch mit):http://www.sysdeo.com/eclipse/tomcatPlugin.html

Du kannst dabei übrigens auch Domino als client verwenden. Die rustikale Lösung wäre mittels java.net.URLConnection (oder so ähnlich) mit Tomcat aus Domino heraus zu kommunizieren.  
2.) Man löst die benötigten Klassen aus der rt.jar 1.4 und bindet Sie
selbst im Java Agenten ein wenn sowas über haubt möglich ist.
[Vorsicht Gehirngespienst Smiley].
No Way. Du kannst auch nicht die JVM von Domino austauschen.


gruß Axel
« Letzte Änderung: 05.12.03 - 11:24:04 von Axel Janssen temp » Gespeichert
arcon
Frischling
*
Offline Offline

Geschlecht: Männlich
Beiträge: 47


Notes4Ever


WWW
« Antworten #9 am: 05.12.03 - 13:16:46 »

Thx für Tip,

werde mir mal Tomcat ansehen bzw. ob es nicht reicht ein
eigenständiges Java Programm zuschreiben welches die notwendigen
Daten von LDAP in eine Notes DB schreibt.

cya, arcon
Gespeichert
Axel Janssen temp
Gast
« Antworten #10 am: 05.12.03 - 15:55:02 »

Thx für Tip,

werde mir mal Tomcat ansehen bzw. ob es nicht reicht ein
eigenständiges Java Programm zuschreiben welches die notwendigen
Daten von LDAP in eine Notes DB schreibt.

cya, arcon
Das geht natürlich auch. Du kannst das Programm ja über den Betriebssystemscheduler laufen lassen. Es gibt auch Java-eigene Scheduler-Lösungen. Wir benutzen da eine openSource-Lsg in einem Projekt. Nur leider fällt mir da der Name momentan partout nicht ein.   Huh
Gespeichert
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: