Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.2.2, 1.2.3, 1.2.4
-
None
-
None
-
Windows Vista, WebLogic 10.3, MyFaces 1.2.4
Description
I am trying to run a very simple JSF application using myFaces 1.2.4 and WebLogic 10.3. The application has the following content:
web.xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
faces-config.xml:
<?xml version="1.0"?>
<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
version="1.2">
<navigation-rule>
<from-view-id>/index.jsp</from-view-id>
<navigation-case>
<from-outcome>login</from-outcome>
<to-view-id>/welcome.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<managed-bean>
<managed-bean-name>user</managed-bean-name>
<managed-bean-class>pt.pm.richfaces.UserBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
</faces-config>
index.html:
<html>
<head>
<meta http-equiv="Refresh" content= "0; URL=index.faces"/>
<title>Start Web Application</title>
</head>
<body>
<p>Please wait for the web application to start...</p>
</body>
</html>
index.jsp:
<html>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<f:view>
<head>
<title>A Simple JavaServer Faces Application</title>
</head>
<body>
<h:form>
<h3>Please enter your name and password.</h3>
<table>
<tr>
<td>Name:</td>
<td><h:inputText value="#
</tr>
<tr>
<td>Password:</td>
<td><h:inputSecret value="#{user.password}" /></td>
</tr>
</table>
<p><h:commandButton value="Login" action="login" /></p>
</h:form>
</body>
</f:view>
</html>
My WEB_INF/lib contains the following jars: commons-beanutils-1.7.0, commons-codec-1.3, commons-collections-3.2, commons-digester-1.8, commons-discovery-0.4, commons-logging-1.1.1, glassfish.el_2.1.0, glassfish.jstl_1.2.0.1, myfaces-api-1.2.4, myfaces-impl-1.2.4.
Whenever I try to run my application I get the following exception:
java.lang.IllegalStateException: strict servlet API: cannot call getWriter() aft
er getOutputStream()
at weblogic.servlet.internal.ServletResponseImpl.getWriter(ServletRespon
seImpl.java:308)
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:362)
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderRes
ponseExecutor.java:41)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:
140)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
If instead of using myFaces I use the Sun Reference implementation everything goes well. If I deploy the application (using myFaces) in JBoss 5 it works well. So the problem seems to be related with the use of WLS 10.3 and myFaces 1.2.4.
I tried with 1.2.3 and 1.2.2 and got the issue with both. I tried with 1.2.0 and got another error:
javax.faces.FacesException: weblogic.servlet.jsp.CompilationException: Failed to compile JSP /index.jsp
index.jsp:14:22: Static attribute must be a String literal, its illegal to specify an expression.
<td><h:inputText value="#{user.name}
" /></td>