JSF AJAX-Aufruf ohne Komponente

J

JSF-Neuling

Gast
Hallo,
ich würde gerne eine AJAX-Anfrage über die JSF-Funktionen abschicken, die in einer Funktion im Java-Code des Projekts das dahinter steht mündet, ohne dass ich es an eine Komponente binden muss.

Ich habe zwar einen Button der diese Funktion wie gewünscht feuert aber wenn sie von anderen Aktionen, die nichts mit dem Button zu tun haben, ausgelöst wird, funktioniert es nicht.
Es gibt zwar die Funktion jsf.ajax.request, doch damit von der die Action-Methode am Button aufgerufen wird, wird das "event" benötigt. Das event-Objekt habe ich allerdings nicht, da es ja anderweitig ausgelöst wird (und ein "action" als String funktioniert auch nicht).

Das wäre die eine Frage, eine andere:
Wie kann ich einer AJAX-Anfrage bei JSF noch zusätzliche Rückgabeparameter mitgeben, die ich in der callback Methode von Javascript auslesen kann? Geht dies auch ohne dass ich es in eine Komponente schreibe?
Ich würde nämlich gerne eine Lade-Funktion einbauen. Das was zurück kommt muss aber nicht in einer Komponente stehen, weil es durch Javascript weiter verarbeitet wird.
Ich könnte es nun in ein secret-Feld speichern aber ich kann mir gut vorstellen, dass es einer schönere Umsetzung gibt.

Danke
 
S

Sym

Gast
Wann genau möchtest Du das Event denn verschicken? Also was soll der Anwender tun, damit etwas passiert? Oder soll das über einen Pushdienst geschehen?

Du sprichst von JSF2? Welche Implementierung verwendest Du?
 

JimPanse

Bekanntes Mitglied
mal ein Blick in die Spezifikation:

JSR-000314 JavaServer Faces 2.0 Final Release

Chapter 14.2
Java:
  jsf.ajax.request()
The event argument is the JavaScript event object ....
Typically, this function is attached as a JavaScript event handler (such as “onclick”).

d.h. das Event-Objekt wird direkt über das ausgelöste JavaScript-Event gesetzt.

Beispiel:

JSFAtWork, JSF 2.0 und Apache MyFaces

von MyFaces.


Java:
<h:selectBooleanCheckbox id="useCreditCard"
    value="#{customerBean.customer.useCreditCard}"
    valueChangeListener=
        "#{customerBean.useCreditCardChanged}"
    onchange="jsf.ajax.request(
        this, event, {render: 'form:ccData'});"/>

event = onchange. Müßte man mal versuchen ob das auch mit einfachen HTML-Elementen funktioniert.


Grüße
 
J

JSF-Neuling

Gast
Hallo,
danke für die Antworten. Leider komme ich erst jetzt zum Antworten.


Wann genau möchtest Du das Event denn verschicken? Also was soll der Anwender tun, damit etwas passiert? Oder soll das über einen Pushdienst geschehen?
Auf meiner Seite ist auch googlemaps. Über eine Aktion von GoogleMaps soll es ausgelöst werden.

Du sprichst von JSF2? Welche Implementierung verwendest Du?
Im Moment Mojarra. Da ich auf Weblogic von Oracle irgend wann wechseln muss, könnte es sein, dass ich die Implementation auch wechsle (ich hab mich noch nicht informiert, was ich bei weblogic benutzen muss).



mal ein Blick in die Spezifikation:

JSR-000314 JavaServer Faces 2.0 Final Release

Chapter 14.2
Java:
  jsf.ajax.request()
The event argument is the JavaScript event object ....
Typically, this function is attached as a JavaScript event handler (such as “onclick”).

d.h. das Event-Objekt wird direkt über das ausgelöste JavaScript-Event gesetzt.

Beispiel:

JSFAtWork, JSF 2.0 und Apache MyFaces

von MyFaces.


Java:
<h:selectBooleanCheckbox id="useCreditCard"
    value="#{customerBean.customer.useCreditCard}"
    valueChangeListener=
        "#{customerBean.useCreditCardChanged}"
    onchange="jsf.ajax.request(
        this, event, {render: 'form:ccData'});"/>

event = onchange. Müßte man mal versuchen ob das auch mit einfachen HTML-Elementen funktioniert.


Grüße
dann muss ich schauen, ob ich so ein event von googlemaps bekomme. schau ich gleich mal.




Weiß wer was zu der Frage oben, zu der noch keine Antwort kam?
Also ob und wenn wie ich über AJAX-Anfragen zusätzliche Parameter verschicken und erhalten kann, die ich über JavaScript auswerten kann (ohne ein secret input feld).

Danke
 
J

JSF-Neuling

Gast
Hallo,
die Fragen wäre noch aktuell.

Zum einen: Kann ich eine zusätzliche Antwort per AJAX zurück geben, die nicht in einer Komponente steht und die ich in JavaScript auslesen kann.

Zum anderen: Wie kann ich eine JSF-AJAX-Anfrage verschicken, die nicht von einer Komponente ausgelöst wird aber deren onclick-Methoden auslösen kann.
Es kam dafür noch ein weiteres Szenario dazu:
Alle 5 Minuten soll die AJAX-Anfrage "speichern", die auch über einen Button ausgelöst werden kann, angestoßen werden (Autospeicherung für eine Sicherungskopie).
Das heißt, ich will eine JSF-AJAX-Anfrage auslösen, die mir eine bestimmte Methode anschließend aufruft.


Danke für eure hilfe
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
pkm Probleme mit einem AJAX-Call in einem dynamischen Webprojekt Web Tier 15
S AJAX/RestController Post Problem Web Tier 18
J JSF/JEE6 asynchronie Statusmeldungen per ajax Web Tier 1
J Funktion für AJAX - Problem mit Return Web Tier 14
D Servlet 1 Servlet für alles - Wie Cookies per Ajax? Web Tier 1
J Wicket: Füllen von Textarea via AJAX irgendwo auf der PAGE Web Tier 1
S JSF mit Ajax? Web Tier 3
V Wie baue ich eine Ajax Webanwendung? Suche Beispielanwendung (UML) eines AJAX Service Web Tier 0
P JSF Ajax aktualisiert Seite neu Web Tier 2
L JSF Composit Component mit ajax funktioniert nicht. Web Tier 4
M Ajax Fehler zur Laufzeit Web Tier 5
T JSF Primefaces: DataTable Ajax Update - Weiterleitung von anderer Seite Web Tier 11
S JSF SelectOneMenu - Probleme mit AJAX Web Tier 6
S JSF ComboBox mit JSF 2.0/ajax Web Tier 4
Kenan89 Class Funktion mit Ajax rufen Web Tier 13
P JSF tag "ajax" not found Web Tier 3
M JSF DataTable refreshen mit Ajax? Web Tier 5
R JSF Mit Ajax ganze Seite neu laden Web Tier 2
J Ajax ist undefiniert Web Tier 3
P JSF AJAX render wird nicht ausgeführt Web Tier 4
M JSF Ajax Command Link Web Tier 2
X Seite wird mit AJAX neu geladen Web Tier 4
S Richfaces 4.0 Ajax Waitingpanel Web Tier 2
G JSF 2x h:selectManyCheckbox ohne duplikate Auswahl/selectManyCheckbox und f:ajax Web Tier 3
P JSF Login per Ajax validieren. Was ist der Beste Weg? Web Tier 4
S Ajax Request verhindert forward? Web Tier 8
P JSF Ajax refresh nach Linkklick Web Tier 4
B Ajax JSON Objekt verschicken Web Tier 3
N Htmlunit Test mit Ajax Web Tier 2
D JSF Ajax mit Facelets (PrimeFaces) Web Tier 4
G mit Ajax ein Image vom Server holen Web Tier 2
J JSP und Ajax Web Tier 6
7 Struts+AJAX- Session-Handling? Web Tier 2
H Richfaces - Taglib Problem gelb unterstrichen Ajax Output Web Tier 6
S Framework, AJAX Drag and Drop Hilfe? Web Tier 2
H Welches Ajax Framework Web Tier 8
7 Struts und Ajax. Problem mit Actions Web Tier 2
F AJAX: Inhalt nachladen + load icon Web Tier 2
I AJAX - Problem Web Tier 18
I AJAX update Web Tier 2
T <f:ajax> in JSF2.0 Komponente ein- und ausblenden Web Tier 4
D [JSF] Center per Ajax wechseln Web Tier 3
D Ajax und Validation ohne große Umstrukturierung Web Tier 3
G Probleme mit Ajax Login (jsp) Web Tier 5
I Ajax DOM speichern Web Tier 27
V Image Map und Ajax-Richfaces Web Tier 5
J Ajax in MyFaces? Web Tier 6
K Orientierungslosigkeit: Webservice+Ajax(echo2)+Session-Management Web Tier 4
S Beschleunigung Verarbeitung, ...Ajax Client-Side? Web Tier 3
C RichFaces Ajax ReRender funktioniert nicht. Web Tier 2
T Ajax / Javascript Plugin für Eclipse Web Tier 1
G AJAX und J2EE Web Tier 6
N RequestDispatcher: include-Aufruf einer jsp scheitert nach mehreren forward-Aufrufen Web Tier 1
A Faces Context nicht mehr erreichbar nach Servlet Aufruf Web Tier 1
A Aufruf eines Servlets auf einer JSP Seite funktioniert nicht Web Tier 10
D JSF Aufruf des Value Attributes trotz rendered = false Web Tier 2
A Parameterübergabe an Servlet und Aufruf von Servlets per Java Code Web Tier 7
H Managed Bean Aufruf auf Stack legen Web Tier 10
R Direkten Servlet-Aufruf verhindern (JSP) Web Tier 3
I Automatische Weiterleitung JSF mit Aufruf einer Methode Web Tier 2
T Aufruf von Visual Server Pages Web Tier 3
F Redirect nach Aufruf einer JSP Web Tier 5
M druckansicht erzeugen - doppelter aufruf? Web Tier 2
F Beim Aufruf von einer JSF Seite eine Methode ausführen Web Tier 9
platofan23 Java Login Überprüfung ohne Srciptlets in der JSP Web Tier 4
A JSF form absenden ohne require validation (andere schon) Web Tier 4
E Kann man ein Formular in JSP auch per Tastendruck ohne Javascript-Verwendung abschicken? Web Tier 2
T JSF Datenbankzugriff ohne Persistenzschicht Web Tier 3
H JSF JSF 2.0 (Primefaces) commandLinks mit action="mypage.xhtml" ohne die URL im Browser zu ändern Web Tier 8
M JSF Datatable, nichts geht ohne vorher zu refreshen... Web Tier 4
D Servlet JSP Umfrage ohne Formular Web Tier 2
S [JSF] CommandButton/Link ohne Validierung Web Tier 3
JCODA Tomcat ohne Fenster starten Web Tier 5
R Zugriff auf geschützten Bereich ohne Authentifizierung Web Tier 10
ruutaiokwu template engine gesucht ohne abhängigkeit zum servlet container Web Tier 2
D Struts2 Combobox ohne Eingabefeld Web Tier 2
G Framework ohne JSP? Web Tier 10
T Tomcat Projekt ohne Eclipse starten Web Tier 11
D Wicket mit Spring ohne extra Proxies Web Tier 4
D MultiActionController von Spring ohne action und / aufrufen Web Tier 3
G pdf direkt darstellen ohne downloadfenster Web Tier 4
U JSP form-Daten (ohne name-Attribut) an Servlet = Problem Web Tier 6

Ähnliche Java Themen

Neue Themen


Oben