Autor Thema: Weiterleitung im Server-Side JavaScript  (Gelesen 4211 mal)

Offline MLoy

  • Junior Mitglied
  • **
  • Beiträge: 57
Weiterleitung im Server-Side JavaScript
« am: 05.11.10 - 16:32:47 »
Hallo,

ich muss am Ende eine Server-Side JavaScripts (Button Event) auf eine andere URL weiterleiten.
Das ist alles keine Problem, funktioniert mit

facesContext.getExternalContext().redirect("http://www.google.de");

super, allerdings müsste ich auf eine neue Seite umleiten.
Habt ihr da ne Idee? Vielleicht verfolge ich auch komplett den falschen Ansatz.


Schon mal ein schönes Wochenende.

Marcus

Offline heini_schwammerl

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 697
  • Geschlecht: Männlich
Re: Weiterleitung im Server-Side JavaScript
« Antwort #1 am: 08.11.10 - 17:47:11 »
Also ich finde www.google.de schon ziemlich neu. Bitte ein wenig mehr Infos (oder jemand Anderes versteht Dich besser).
Gruß

Henning

Offline MLoy

  • Junior Mitglied
  • **
  • Beiträge: 57
Re: Weiterleitung im Server-Side JavaScript
« Antwort #2 am: 08.11.10 - 21:02:02 »
OK, hab mich vielleicht etwas undeutlich ausgedrückt.

Ich berechne eine URL (Server-Side) und möchte diese anschließend in einem neuen Fenster bzw. einem neuen Tab öffnen.

Google war nur ein Beispiel

Offline atbits

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • sei Du selbst die Veränderung, die Du Dir wünschst
    • atBits
Re: Weiterleitung im Server-Side JavaScript
« Antwort #3 am: 09.11.10 - 09:48:31 »
Du kannst Serverseitig kein neues Fenster öffnen.
Das geht nur mit clientseitigem JavaScript.

Grüße David
David Schiffer
================================
atBits GmbH & Co. KG - https://atbits.de
im Einsatz: Lotus Domino 8.5, 9, 10

Offline MLoy

  • Junior Mitglied
  • **
  • Beiträge: 57
Re: Weiterleitung im Server-Side JavaScript
« Antwort #4 am: 09.11.10 - 12:01:09 »
Schade, aber trotzdem Danke!

Offline heini_schwammerl

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 697
  • Geschlecht: Männlich
Re: Weiterleitung im Server-Side JavaScript
« Antwort #5 am: 12.11.10 - 18:02:12 »
Du könntest ja den Button eine neue xpage in einem neuen TAB öffnen lassen die dann die Verarbeitung vornimmt und am Ende die Url öffnet.
Du startest sozusagen clientseitig eine Verarbeitung n neuen TAB um dann serverseitig den redirect zu benutzen. Blöd ist halt nur das wenn aus irgendeinen Gründen der Redirect nicht klappt Du dann einen TAB bereits geöffnet hast.
Der neuen XPage könntest Du die UNID des aktuellen Dokuments ggf. als Parameter mitgeben.
Ich hoffe, ich habe mich verständlich ausgedrückt.

Offline atbits

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • sei Du selbst die Veränderung, die Du Dir wünschst
    • atBits
Re: Weiterleitung im Server-Side JavaScript
« Antwort #6 am: 12.11.10 - 18:41:25 »
Na klar sowas geht...
Und wenn es serverseitig fehlschlägt kann man immer noch im SSJ ein Client-JS printen mit
Code
window.close()

 :love:
Ich dachte das wäre klar, dass ich im SSJ natürlich Client-JS generieren kann...

Schönes WE - David
David Schiffer
================================
atBits GmbH & Co. KG - https://atbits.de
im Einsatz: Lotus Domino 8.5, 9, 10

Offline HaPe

  • Junior Mitglied
  • **
  • Beiträge: 81
  • Geschlecht: Männlich
  • Geht net, gibts net ...
    • Mein kleine Seite
Re: Weiterleitung im Server-Side JavaScript
« Antwort #7 am: 19.01.11 - 19:49:24 »
Hi Leute,

auch wenn der thread schon etwas älter ist schreibe ich den verweis mal dazu. habe länger nach der Lösung gesucht und die ist einfach unf Genial: http://xpagesblog.com/xpages-blog/2010/4/30/calling-client-side-javascript-from-server-side-javascript.html

Ich habe in meine xPage ganz oben den Block eingefügt:
Code
<xp:scriptBlock id="scriptBlock1">
<xp:this.value><![CDATA[
var pleaseAlert = function() {
var flag = "#{javascript:requestScope.pleaseAlert}";
if( flag == "1" ) {
alert("The new bookmark has been created");
window.close();
}
};
XSP.addOnLoad(pleaseAlert);
]]></xp:this.value>
</xp:scriptBlock>

Im Serverside JS steht dann am ende nur ein:
Code
//A function is added in the script block to the XSP.onLaod event
//This function checks for the Variable. If it is "1" the user will
// be informed of the save and the window will close
requestScope.pleaseAlert = "1";

Gruß
   HaPe
Gruß
   Hanspeter

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz