JSF Mojarra 2.1.5: java.lang.IllegalStateException: Cannot create a session after the response has been

bronks

Top Contributor
Hi!

Ich habe eine kleine App mit Tomcat 7.0 und JSF Mojarra 2.1.5 gebaut. Es gibt ein Problem, wenn ich Templates in Zusammenhang mit dem Form,siehe letzer Code, benutze.

Bitte schaut Euch mal den u.g. Code an. Wo liegt der Fehler?

Folgen Exception erhalte ich:
Code:
SCHWERWIEGEND: Error Rendering View[/index.xhtml]
java.lang.IllegalStateException: Cannot create a session after the response has been committed
	at org.apache.catalina.connector.Request.doGetSession(Request.java:2862)
	at org.apache.catalina.connector.Request.getSession(Request.java:2307)
	at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:897)
	at com.sun.faces.context.ExternalContextImpl.getSession(ExternalContextImpl.java:155)
        bla ... bla ...


Code des Templates:
Code:
<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html">
    
    <h:head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
        <title>Title</title>
        <link rel="STYLESHEET" type="text/css" href="application/css/application.css" />
        <title>Title</title>
     </h:head>
    
    <h:body style="margin:0px;">
        
        <table style="height:100%; width:100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
                <td id="top" width="100%" colspan="2">
                    <ui:include src="header.xhtml" />
                </td>
            </tr>
            <tr style=" height : 96px;" align="left">
                <td id="left" style="height:100%; width : 220px;">
                    <ui:include src="navi.xhtml" />
                </td>
                <td id="content" style="height:100%;width:100%;padding-left:10px;padding-top:10px;vertical-align:top;">
                        <ui:insert name="content">Content</ui:insert>
                </td>
            </tr>
        </table>
    </h:body>
</html>


Code des Contents:
Code:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core">
    <h:head>
        
    </h:head>
    <h:body>

        <ui:composition template="./template.xhtml">
            <ui:define name="content">
                <p><h:messages /></p>
                <h:form id="asdf">
                    <h:inputText value="#{processBean.scanCode}" style="font-size:xx-large;font-weight:bold;width:200px" /><br />
                    <h:commandButton action="#{processBean.processScanCode}" value="OK" />
                </h:form>
            </ui:define>
        </ui:composition>

    </h:body>
</html>

Danke!

Bronks
 
Zuletzt bearbeitet:

bronks

Top Contributor
Sind Deine Beans alle Serializable?
Die einzige Bean sieht so aus:
Habe ich etwas vergessen?

Code:
import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

@ManagedBean
@SessionScoped
public class ProcessBean implements Serializable{

    private String scanCode;
    
    public String getScanCode() {
    return scanCode;
    }
    
    public void setScanCode(String scanCode) {
    this.scanCode = scanCode;
    }

    public ProcessBean() {
    }
}
 

JimPanse

Bekanntes Mitglied
Auf den ersten Blick würde ich sagen das die Methode
Java:
processScanCode
und die
Java:
 serialVersionUID
fehlt ... hört sich für mich aber eher danach an das die Session oder der FacesContext noch nicht instanziert worden bevor du die Seite aufrufst...
 

bronks

Top Contributor
Auf den ersten Blick würde ich sagen das die Methode
Java:
processScanCode
und die
Java:
 serialVersionUID
fehlt ... hört sich für mich aber eher danach an das die Session oder der FacesContext noch nicht instanziert worden bevor du die Seite aufrufst...
Die Methode [processScanCode] hat nur gefehlt, weil ich gerade verzweifelt herumexperimentiert habe. Die [serialVerionUID] habe ich hinzugefügt, aber leider ändert sich nichts.

Hier mal der komplette Log:
Code:
Using CATALINA_BASE:   "E:\apache-tomcat-7.0.25"
Using CATALINA_HOME:   "E:\apache-tomcat-7.0.25"
Using CATALINA_TMPDIR: "E:\apache-tomcat-7.0.25\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk1.6.0_29"
Using CLASSPATH:       "E:\apache-tomcat-7.0.25\bin\bootstrap.jar;E:\apache-tomcat-7.0.25\bin\tomcat-juli.jar"
Listening for transport dt_shmem at address: tomcat_shared_memory_id
02.02.2012 19:14:05 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_29\bin;... ...
02.02.2012 19:14:05 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
02.02.2012 19:14:05 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
02.02.2012 19:14:05 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 473 ms
02.02.2012 19:14:05 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
02.02.2012 19:14:05 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.25
02.02.2012 19:14:05 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory E:\apache-tomcat-7.0.25\webapps\docs
02.02.2012 19:14:05 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory E:\apache-tomcat-7.0.25\webapps\examples
02.02.2012 19:14:05 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory E:\apache-tomcat-7.0.25\webapps\host-manager
02.02.2012 19:14:05 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory E:\apache-tomcat-7.0.25\webapps\manager
02.02.2012 19:14:05 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory E:\apache-tomcat-7.0.25\webapps\ROOT
02.02.2012 19:14:05 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
02.02.2012 19:14:05 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
02.02.2012 19:14:05 org.apache.catalina.startup.Catalina start
INFO: Server startup in 587 ms
02.02.2012 19:14:07 org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor E:\apache-tomcat-7.0.25\conf\Catalina\localhost\TestApp.xml
02.02.2012 19:14:12 com.sun.faces.config.ConfigureListener contextInitialized
INFO: Mojarra 2.1.1 (FCS 20110408) für Kontext '/TestApp' wird initialisiert.
02.02.2012 19:14:12 com.sun.faces.spi.InjectionProviderFactory createInstance
INFO: JSF1048: PostConstruct/PreDestroy-Annotationen vorhanden.  Verwaltete Bean-Methoden, die mit diesen Annotationen markiert sind, lassen die entsprechenden Annotationen verarbeiten.
02.02.2012 19:14:13 org.apache.catalina.util.LifecycleBase start
INFO: The start() method was called on component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/TestApp]] after start() had already been called. The second call will be ignored.
02.02.2012 19:14:14 com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
SCHWERWIEGEND: Error Rendering View[/index.xhtml]
java.lang.IllegalStateException: Cannot create a session after the response has been committed
bla ... bla ...
 
Zuletzt bearbeitet:

bronks

Top Contributor
Mehrere Tage sind vergangen und endlich habe ich den Fehler gefunden. Das Stand in einer navi.xhtml und verursachte den Fehler:
Code:
<tr>
                                        
   <td width="12"></td>
   <td width="157"></td>
</tr>

Wegen sowas kann Mojarra keine Session erstellen. Das ist doch lächerlich.

Mit MyFaces habe ich es auch probiert. Der o.g. Fehler ist nicht gekommen, aber da gibt es immer noch den Bug mit dem nicht supporteten Content Type text/css im IE9.

Ich gehe jetzt in die Vinothek. Morgen pfeiff ich auf die Arbeit, denn ich mag nimmer. :)
 
Zuletzt bearbeitet:

bronks

Top Contributor
Zur Verdeutlichung, der Schadcode nocheinmal im Hexeditor:
attachment.php


Bevor es mich vor Wut zerreißt ... ... -> Vinothek :)
 

bronks

Top Contributor
Jetzt habe ich das ganze noch gestestet mit:
- Mojarra 2.1.1 -> funktioniert nicht
- Mojarra 2.0.1 -> funktioniert

Warum interessiert sich Mojarra 2.1.x dafür, was in einem total langweiligen HtmlText steht?
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
xehpuk JSF URL-Encoding-Probleme bei <h:link> (Mojarra) Web Tier 4
LimDul Komplexe Generierung von Java-Klassen aus WSDL Web Tier 1
E Java Servlet doPost request, Mehrere Parameter mit demselben Namen aus Tabellenzeilen Web Tier 2
platofan23 Java Login Überprüfung ohne Srciptlets in der JSP Web Tier 4
Dimax JSP Progress Bar in JSP nur mit Java Web Tier 4
S Einträge aus Datenbank einzeln darstellen (JSP, JAVA, HTML) Web Tier 9
R JavaScript für Java Enterprise Entwickler Web Tier 1
O JSF Java Unsigned Applet PrivilegedActionException Problem Web Tier 2
S JSP Hm... Vorlage für Java Basierende Webseite? Web Tier 0
S Button klick soll Java methode aufrufen Web Tier 2
R Tomcat - java.lang.OutOfMemoryError: PermGen space Web Tier 0
F JSP jSP Datei mit normalem Java Programm auslesen? Web Tier 5
T Spark Java Web Framework Web Tier 0
G Probleme mit Java + Tomcat | Cannot switch on a value of type String for source level below 1.7 Web Tier 8
S java.lang.ExceptionInInitializerError: Wieso??? Web Tier 3
N JSP Free Webhoster Java Backend? PHP? Web Tier 1
D Java EE Servlet login Problem Web Tier 1
L Servlet Java Entschlüsselungsprogramm in Webapplikation einbinden Web Tier 0
Streeber java.lang.NoClassDefFoundError: org/sqlite/NativeDB Web Tier 0
M GWT - Externe Java Libs auf Server Seite - zB. JDBC Web Tier 6
S Java Bean und Java Servlet Web Tier 2
L java.io.NotSerializableException für domain Objekte - Design Problem? Web Tier 12
H MVC in Java pur / Controller als Instanz? / Theorie! Web Tier 4
T Einsteigerfragen zu Servlets/Webprogrammierung mit Java Web Tier 11
J Übergabe von Parameter aus JSP an Java Web Tier 2
nrg Java-Code in Taglib wird nicht richtig ausgeführt. Web Tier 7
D JSF Überprüfen der Session ID in JSF und JAVA Web Tier 9
H JSP, Eclipse, Tomcat - Java Klasse wird nicht gefunden Web Tier 8
A Parameterübergabe an Servlet und Aufruf von Servlets per Java Code Web Tier 7
J JSF Java Beans Konventionen Web Tier 2
P Blog in Java/JSP Web Tier 5
S Per JavaScript Java ansteuern - Welche Technik? Web Tier 2
T Seam-Komponenten oder Java Bean soll direkt nach Appserver-Start "leben" Web Tier 4
B Thread start bei Java Web Anwendung Web Tier 6
M Suche Java Framework Web Tier 2
B Tomcat 6 ergibt Fehler - java.net.SocketException Web Tier 2
G Probleme mit EclipseLink und Java.util.Date Web Tier 3
ruutaiokwu js kalendar, der mit java.text.SimpleDateFormat kombatibel ist... Web Tier 4
B Java EE 6 Problem (EL) Web Tier 4
F Migration eines CMS von PHP nach JAVA Web Tier 3
R GWT 2.1.1 mit Java 1.6 statt 1.5 Web Tier 8
W JSP - Attribut-Werte aus JAVA-Klasse ? Web Tier 8
T Werte aus java Klasse in jsp nutzen Web Tier 5
N java.lang.NoClassDefFoundError: org/jdom/JDOMException Web Tier 3
M JSP Ausgabe von Java-Objekten Web Tier 7
D JSP, Java Applets einbinden Web Tier 2
LadyMilka java.lang.NumberFormatException: For input string: ... Web Tier 5
H Probleme beim Aufrufen von Java- oder Servlet-Methoden aus Javascript Web Tier 2
K Bilder in Java-Webapplikationen Web Tier 12
S Java Servlet Content Type Web Tier 3
K Analye einer Seite (Java, JSP, ...) Web Tier 12
J rich:modalpanel vom java-code aus öffnen und schliessen Web Tier 2
S Expression Language in Java Web Tier 13
A Ssh connection mit java jsch? Web Tier 2
W Java code aus JSP-File durch JSTL code ersetzen Web Tier 8
M Body onUnload Java Methode aufrufen Web Tier 13
F Frage zu Java Beans Web Tier 17
M Java Framework für größere Projekte verwenden Web Tier 5
U access denied bei Datei Schreiben mit Java unter Linux trotz gesetzter Rechte Web Tier 2
P Java-Program -> Web Programm Web Tier 6
F Java Applets in html einbinden Web Tier 10
A SSL-Zertifikat in Java-Webanwendungen laden Web Tier 4
ruutaiokwu Wert hinter JSP-Tag nach Java-String in Skriptlet Web Tier 4
N java bean in eclipse Web Tier 6
S Java Code in JSF Web Tier 10
N Servlet und java.lang.NoClassDefFoundError Web Tier 4
D request.contextPath in Java-Klasse ausführen Web Tier 5
T In einem Struts Tag Werte mit Java einfügen Web Tier 2
G [JAVA / JSP] ArrayList in JSTL foreach verarbeiten Web Tier 4
G CSV-Anbindung an Java Web Tier 2
G Java Server Face Performancelastig? Web Tier 2
H Java Servlet und HTML Form Web Tier 3
U Java Application auf Tomcat Web Tier 5
G Validierung mit Java Server Faces Web Tier 4
I JSF: String abschneiden, wenn zu lang Web Tier 2

Ähnliche Java Themen

Neue Themen


Oben