Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung - XPages => Thema gestartet von: Driri am 09.03.11 - 13:47:56

Titel: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: Driri am 09.03.11 - 13:47:56
Hallo,

ich habe eine XPage, die via DbColumn und via DbLookup Werte aus einer View in einer Datenbank auf einem anderen Dominoserver auslesen soll.

Z.B. so :

Code
db = new Array('server','path\\db.nsf'); 
var keys = @Unique(@DbColumn(db,'view', 1)); 
if (!keys)
{
	return 'no result';
}
else
{
	return keys;	
}

Wenn ich die XPage mit meinem User (Manager) aufrufe, werden die Werte korrekt ausgelesen.

Melde ich mich jetzt aber mit einem anderen User (getestet mit Leser, Autor, Editor, Manager) an, ist keys leer. D.h. der DbColum liefert keinen Wert zurück.


Der Testuser kann die zugrundeliegende View problemlos öffnen (im Browser getestet).


Ich habe auch mal ausprobiert, eine Datenbankeigenschaft auszulesen :

Code
var db:NotesDatabase = session.getDatabase('server','path\\db.nsf');
return db.getTitle();

Mit meinem User bekomme ich den korrekten Wert zurück, mit dem Testuser bekomme ich Null.


domlog.nsf und log.nsf der beteiligten Server liefern mir leider auch keinen Hinweis, was da schiefgeht.


Hat jemand einen Tipp ? Das sieht für mich wie ein Berechtigungsproblem aus, ich weiß aber nicht wo ich danach suchen soll.
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: heini_schwammerl am 10.03.11 - 12:29:04
Hallo Ingo,
hast Du schon einmal die Backslashe gegen / (ForwardSlash) getauscht. Ich meine 8.5.2 hätte in diesem Zusammenhang einen Bug.
Gruß

Henning
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: Driri am 10.03.11 - 12:52:44
Ja, das hatte ich schon getestet, sorry.

Macht leider keinen Unterschied und hätte mich vermutlich vollends um den Verstand gebracht, weil es ja bei einem User funktioniert und beim anderen nicht  ;)

Trotzdem danke für den Tipp.
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: Driri am 10.03.11 - 12:57:57
Was ich gerade noch getestet habe :

Wenn ich die XPage 1:1 in die Datenbank kopiere, auf die der DbLookup/DbColumn zielt, funktioniert es bei allen Usern.
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: heini_schwammerl am 10.03.11 - 13:36:30
Hallo Ingo,
dann spare ich mir den Tipp statt server mal @DbName()[0] zu probieren. Das hast Du sicher auch schon überprüft.
Um zu überprüfen ob es ein Berechtigungsproblem ist könntest Du die zweite Abfrage mal als sessionAsSigner.getDatabase laufen lassen.
Gruß
Henning
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: Driri am 10.03.11 - 15:10:53
Habe ich nicht getestet, aber @DbName würde mich ja eh nicht weiterbringen, wenn ich auf einen anderen Server zugreifen will.

sessionAsSigner kann ich leider nicht testen, wir haben noch kein 8.5.2 auf den Servern laufen  :(
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: heini_schwammerl am 10.03.11 - 17:16:20
Ja sorry. War ein Denkfehler von mir.
Kam mir nur so in den Sinn da ich zwei Server mit dem selben Namen, aber in 2 verschiedenen Organisationen habe (server01/Org1 und server01/Org2). Da kann ich eine Datenbank nicht im Designer öffnen da er intern immer nur den CommonName verwendet und dann regelmäßig die DB auf dem falschen Server öffnen will. Ansonsten gelten für XPages auch die Einstellungen unter dem Punkt Sicherheit im Server Adressbuch.
Die IBM würde jetzt wohl pauschal sagen. Der Fehler ist im aktuellen Release behoben (auch wenn es das evtl. gar nicht ist).
Titel: Re: Problem bei DbLookup/DbColumn auf anderen Server
Beitrag von: Driri am 11.03.11 - 08:34:30
Das wars, danke.

Im Serverdokument war unter Security bei den Trusted Servers kein Server eingetragen. Dort muß zumindest beim Zielserver der aufrufende Server eingetragen werden.

Jetzt funktioniert die XPage auch mit den Testusern.