Servlet Manuelles Rendern einer JSF Datei

jwiesmann

Bekanntes Mitglied
Hi Folks,

heute hab ich mal eine interessante Aufgabenstellung bzw. Konstellation .. wie auch immer.

Ich würde gerne eine JSF Seite manuell rendern indem ich ein Servlet aufrufe. Das scheint auch zu funktionieren, jedoch wird mir nichts ausgegeben:
Beispiel:
Java:
ViewHandler views = facesContext.getApplication().getViewHandler();
UIViewRoot iViewRoot = views.createView(facesContext, "/mypage.xhtml");
views.renderView(facesContext, iViewRoot);

FacesContext hole ich mir wie hier beschrieben: Thoughts About: What your mama don't tell you about JSF

Das scheint soweit auch zu funktionieren, wenn ich z.b. den Namen der Datei ändere, bekomme ich einen Fehler, dass die Datei nicht gefunden wird etc...

Mein Problem bzw. meine Vermutung ist, dass die Response nicht korrekt geschrieben wird. Die Seite bleibt weiß / leer.
renderView läuft ohne Fehler durch...
Vielleicht hat von euch ja jemand eine gute Idee :)

Achso, mein Aufruf lautet wie folgt:
http://localhost:8080/MyServlet?action=renderCustomer&customerId=744 (wobei ich nicht glaub, dass das relevant ist)

Edit sagt:
Was ich noch schnell sagen muss, wenn ich die JSF Seite absichtlich "kaputt" mache, bekomme ich auch einen Fehler (
Code:
Element type "tr:navigationPane" must be followed by either attribute specifications, ">" or "/>".
).
Somit kann man sagen, die Page wird zu 100% gerendert .. nur die Darstellung fehlt...
Gruß!
 
Zuletzt bearbeitet:

JimPanse

Bekanntes Mitglied
Hi,

ich bin mir nicht sicher aber ich glaube das mapping zum Faces-servlet fehlt!

d.h. entweder /mypage.jsf oder /faces/mypage.xhtml (kommt darauf wie du das mapping in der web.xml definiert hast).

probier es mal aus.

Grüße
 

jwiesmann

Bekanntes Mitglied
klingt gut ... da ich absolut keine Ahnung hast, was du genau meinst :)

in meiner web.xml hab ich nur folgenden Eintrag
[XML]
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/MyServlet</url-pattern>
</servlet-mapping>
[/XML]

Gruß
 

JimPanse

Bekanntes Mitglied
na statt
Java:
ViewHandler views = facesContext.getApplication().getViewHandler();
UIViewRoot iViewRoot = views.createView(facesContext, "/mypage.xhtml");
views.renderView(facesContext, iViewRoot);

Java:
ViewHandler views = facesContext.getApplication().getViewHandler();
UIViewRoot iViewRoot = views.createView(facesContext, "/faces/mypage.xhtml");
views.renderView(facesContext, iViewRoot);

um JSF mit zuteilen das es sich um ein faces-request handelt.

Greetz
 

jwiesmann

Bekanntes Mitglied
Hey JimPanse :)

hat leider nicht funktioniert, ich hatte nur aus datenschutzgründen den Namen "wegeditiert".
Ich hab die Idee nun wieder verworfen .. trotzdem danke!

Gruß
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Rendern einer Komponente nach actionListener Web Tier 2
I Menü erstellen: h:panelGrid rendern in Abhängigkeit von CommandLink Web Tier 2
J Faces response aus einem anderen Servlet heraus rendern Web Tier 4
ff html:text aus mapped properties rendern Web Tier 2
M In einer HTML Tabelle positionieren Web Tier 4
I Daten einer Datenbank in ein Formular einfügen Web Tier 3
N RequestDispatcher: include-Aufruf einer jsp scheitert nach mehreren forward-Aufrufen Web Tier 1
Shams Problem mit der verwirklichung einer Readmethode in einer Chatapplikation Web Tier 3
F JSF Popup mit einer Checkbox Auswahlliste Web Tier 1
A Aufruf eines Servlets auf einer JSP Seite funktioniert nicht Web Tier 10
M JSF JSP, Facelets und einbinden einer js-Datei Web Tier 2
J JSF Initialisierung einer ApplicationScoped Bean Web Tier 2
J Anzeige einer Hierarchie Web Tier 5
M Exception beim Erstellen einer Query Web Tier 9
N JSF Architektur/Design einer JEE 6 + JSF 2.x Webanwendung mit Subdomänen Web Tier 4
J Performance einer Webanwendung Web Tier 2
V JSF Rendering abhängig von einer Auswahl Web Tier 8
P JSF Merkwürdiges Verhalten einer Bean Web Tier 11
S Auswahl eine Zeile von einer HTML Tabelle im Servlet Web Tier 4
X JSP Auslesen der Daten einer Session Web Tier 3
1 JSP Mit Daten einer c:forEach Rechnen ? Web Tier 4
H Seiten-reload als Result einer Action Web Tier 3
N Wie mache ich in einer xhtml (JSF) einen redirect? Web Tier 3
F Prinzipielle Architektur einer Web-Anwendung Web Tier 4
A [JSF 2.0] Ausgabe aus Schleife bzw. einer ArrayList Web Tier 9
E Servlet zum speichern einer Datei in einer Datenbank Web Tier 3
K Analye einer Seite (Java, JSP, ...) Web Tier 12
I Automatische Weiterleitung JSF mit Aufruf einer Methode Web Tier 2
O Focus auf Textfeld, in letzter Reihe einer dataTable Web Tier 2
M Frage zur Konfiguration einer RichFaces DataTable Web Tier 4
I Eine Bean von einer anderen Bean aufrufen Web Tier 2
C PanelGrid aus einer Liste Web Tier 3
J JSF: Initialisieren einer Property mit Wert? Web Tier 5
P Struts2 - Mehrere Methoden/Actions in einer Klasse + Validation Web Tier 2
S Attribute einer HttpSession / unchecked cast Web Tier 8
Schandro JSP soll dynamische Anzahl an Parametern einer JavaScript-Function erzeugen Web Tier 8
N Architektur einer Such-Webanwendung Web Tier 4
E Methode einer Bean aus anderer Bean aufrufen Web Tier 10
F Redirect nach Aufruf einer JSP Web Tier 5
O struts - Gültigkeit einer Action an Session binden?! Web Tier 4
C navigation auf einer jsp Seite Web Tier 3
pusteblume Mehrere Objekte einer Bean Web Tier 10
D JSF+Weiterleitung zu einer Login-Page Web Tier 1
F Darstellung einer Tabelle mit JSP Web Tier 4
F Beim Aufruf von einer JSF Seite eine Methode ausführen Web Tier 9

Ähnliche Java Themen

Neue Themen


Oben