myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Leonardo Uribe (JIRA)" <...@myfaces.apache.org>
Subject [jira] Commented: (MYFACES-1955) MyFaces 1.2.4 and WebLogic 10.3- strict servlet API: cannot call getWriter() after getOutputStream()
Date Wed, 22 Apr 2009 00:23:47 GMT

    [ https://issues.apache.org/jira/browse/MYFACES-1955?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12701329#action_12701329
] 

Leonardo Uribe commented on MYFACES-1955:
-----------------------------------------

Trying to check this issue, the following facts appears:

1. myfaces 1.2 + facelets  works without problem. The bug does not appear, so this confirms
the fact that this is a weblogic jsp compiler bug.

2. There is a way to make work myfaces 1.2 + jsp on weblogic. I tried add this configuration
to WEB-INF/weblogic.xml file:

<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd
http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <jsp-descriptor>
        <encoding>utf-8</encoding>
    </jsp-descriptor>

</weblogic-web-app>

The default encoding for jsp files is utf-8, but put this configuration triggers something
inside weblogic jsp compiler that makes it work (the version tested was myfaces 1.2.6).

The weblogic server version tested was 10.3. It could be good have confirmation if this works
for other weblogic server versions. I hope this helps people that wants to use myfaces on
weblogic.


> MyFaces 1.2.4 and WebLogic 10.3- strict servlet API: cannot call getWriter() after getOutputStream()
> ----------------------------------------------------------------------------------------------------
>
>                 Key: MYFACES-1955
>                 URL: https://issues.apache.org/jira/browse/MYFACES-1955
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 1.2.2, 1.2.3, 1.2.4
>         Environment: Windows Vista, WebLogic 10.3, MyFaces 1.2.4
>            Reporter: Paulo Moreira
>            Assignee: Leonardo Uribe
>         Attachments: MYFACES-1955.patch
>
>
> 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="#{user.name}" /></td>
>                         </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>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message