Autor Thema: Variant does not contain... Deklarationsproblem?  (Gelesen 3766 mal)

Offline magic_halli

  • Senior Mitglied
  • ****
  • Beiträge: 348
  • Geschlecht: Männlich
Variant does not contain... Deklarationsproblem?
« am: 23.12.08 - 12:03:40 »
Hi,

in einem Agent verwende ich LS2J, um mit Java zusammen zu arbeiten.
Folgendes Problem:
Ich rufe mittels LotusScript und LS2J eine meiner Java-Klassen und daraus eine Methode auf. Diese Methode gibt mir entweder 'Null' oder ein konkretes 'Object einer anderen Klasse' zurück.
Diesen Rückgabewert will ich nun auswerten.

Hier erstmal mein relevanter Code:
Code
Set jClass_SucheGUIPosteingang = jSession.GetClass("SucheGUIPosteingang")
Set jObject_SucheGUIPosteingang = jClass_SucheGUIPosteingang.CreateObject("(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",server,serverport,user,pass)	
Set jMethod_SucheGUIPosteingang = jClass_SucheGUIPosteingang.GetMethod("getConnector","()LAfpsHttpConnector;")
	
Dim connected As Variant
connected =  jMethod_SucheGUIPosteingang.Invoke(jObject_SucheGUIPosteingang)
Wenn 'Null' zurückkommt sehe ich im LotusScript Debugger, dass connected den Wert 'Null' hat. Wenn aber das Object zurückgeliefert wird, kommt der Fehler: "Variant does not contain an object."!

Was ist hier falsch???



Vermutung: Es liegt an der Deklaration der Variablen 'connected' (As Variant)?! Wie müsste denn sonst die Deklaration aussehen?

Danke und Gruß
Lotus Notes 8.0.2

Offline it898ur

  • Senior Mitglied
  • ****
  • Beiträge: 478
Re: Variant does not contain... Deklarationsproblem?
« Antwort #1 am: 23.12.08 - 13:54:17 »
Hallo,

die Lotus Script to Java Bridge unterstützt nur einfache Datentypen (String, Integer) und keine Objekte !

Gruß

André

Offline magic_halli

  • Senior Mitglied
  • ****
  • Beiträge: 348
  • Geschlecht: Männlich
Re: Variant does not contain... Deklarationsproblem?
« Antwort #2 am: 23.12.08 - 13:56:10 »
Hallo,

die Lotus Script to Java Bridge unterstützt nur einfache Datentypen (String, Integer) und keine Objekte !
...also keine Chance einen Rückgabewert, der ein Object ist, auszuwerten?! Mh, Mist.

Danke
Lotus Notes 8.0.2

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Variant does not contain... Deklarationsproblem?
« Antwort #3 am: 23.12.08 - 14:05:13 »
Aber das Objekt dürfte doch datenmässig aus verschiedenen erlaubten Datentypen bestehen.
Da kannst du dann im Objekt getter-Methoden reinmachen.

Beispiel:
Code
class Person {

String name; 
int age; 

public String getName() {
return this.name; 
}

public int getAge() {
return this.age;
}
}
Diese getter-Methoden kannst du dann wiederum aus LS2J ansprechen.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline magic_halli

  • Senior Mitglied
  • ****
  • Beiträge: 348
  • Geschlecht: Männlich
Re: Variant does not contain... Deklarationsproblem?
« Antwort #4 am: 23.12.08 - 15:44:12 »
Ich habs jetzt über nen "Umweg" gelöst... In Java eine neue Methode geschrieben, in welcher meine eigentliche Methode, die Null oder das Object liefert, ausgeführt wird und dann, je nachdem was als return kommt einfach nen boolschen-Wert gesetzt. Diesen boolschen Wert lasse ich mir nun durch meine quasi "Hilfsmethode" zurückliefern und rufe diese dann auch mittels LS2J in Notes auf.
Klappt!  ;D   

@Pitiyankee
Getter passen leider in der einen Klasse nicht ins Konzept. Von daher jetzt diese Lösung.


Danke und Gruß
Lotus Notes 8.0.2

Offline MadMetzger

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.052
  • Geschlecht: Männlich
  • f.k.a. Alexis Pyromanis
Re: Variant does not contain... Deklarationsproblem?
« Antwort #5 am: 23.12.08 - 16:55:51 »
Hm... magic_halli, das verstehe ich nicht, warum getter-Methoden in der einen Klasse nicht ins Konzept passen? Erklär das doch mal bitte.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz