myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Georg Füchsle <giofy...@googlemail.com>
Subject Re: <f:setPropertyActionListener does not work
Date Fri, 06 May 2011 09:36:16 GMT
Hallo,

we are afraid that we are not using JSF1.2 on WebSphere 6.1:
When we switch the class loader for the application in the WebSphere console:
Enterprise Applications > "Application Name"> Class loader

Class loader order : -->  "Classes loaded with application class loader first"
and
WAR class loader policy : --> "Class loader for each WAR file in application"

then the application will start and produce the exception when the
f:setPropertyActionListener is called.


Otherwise if we switch the classloader for the Web-module:

Class loader order : -->  "Classes loaded with application class loader first"
and
WAR class loader policy : --> "Single class loader for application"


the application cannot be started. When calling the first page the
following message is displayed in the browser:

Error 404: SRVE0201E: Das Servlet [javax.faces.webapp.FacesServlet]
ist keine Servlet-Klasse.

(in English: the servlet [javax.faces.webapp.FacesServlet] is not a
servlet class)



- Can we output to the page the JSF-Version that is used?
- Or do we use a wrong set of jar-Versions?
- Should the JSF1.2 jars be used from a 'shared library reference' in WebSphere?

Thanks Georg


2011/5/5 Georg Füchsle <giofyxle@googlemail.com>:
> Hallo Leonardo,
>
> thank you for your interest!
> Here the exception:
>
> [05.05.11 09:47:25:663 CEST] 0000001a ServletWrappe E   SRVE0068E: Es
> wurde eine Ausnahme angefangen, die in einer der Servicemethoden des
> Servlet Faces Servlet ausgelöst wurde. Ausgelöste Ausnahme:
> javax.servlet.ServletException
>        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:209)
>        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
>        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:593)
>        at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:533)
>        at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
>        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
>        at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
>        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
>        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
>        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
>        at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
>        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
>        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
>        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
>        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
>        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
>        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
>        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
>        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
> ---- Begin backtrace for Nested Throwables
> java.lang.IllegalArgumentException
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>        at java.lang.reflect.Method.invoke(Method.java:618)
>        at com.sun.faces.el.PropertyResolverImpl.setValue(PropertyResolverImpl.java:179)
>        at com.sun.facelets.el.LegacyELContext$LegacyELResolver.setValue(LegacyELContext.java:201)
>        at com.sun.el.parser.AstValue.setValue(AstValue.java:113)
>        at com.sun.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:246)
>        at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:93)
>        at com.sun.facelets.el.LegacyValueBinding.setValue(LegacyValueBinding.java:68)
>        at com.sun.facelets.tag.jsf.core.SetPropertyActionListenerHandler$LegacySetPropertyListener.processAction(SetPropertyActionListenerHandler.java:88)
>        at javax.faces.event.ActionEvent.processListener(ActionEvent.java:57)
>        at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:683)
>        at javax.faces.component.UICommand.broadcast(UICommand.java:297)
>        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:302)
>        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:419)
>        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)
>        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:239)
>        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:91)
>        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
>        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:593)
>        at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:533)
>        at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
>        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
>        at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
>        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
>        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
>        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
>        at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
>        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
>        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
>        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
>        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
>        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
>        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
>        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
>        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
>
> [05.05.11 09:47:25:672 CEST] 0000001a WebApp        E   [Servlet
> Error]-[Faces Servlet]: java.lang.IllegalArgumentException
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>        at java.lang.reflect.Method.invoke(Method.java:618)
>        at com.sun.faces.el.PropertyResolverImpl.setValue(PropertyResolverImpl.java:179)
>        at com.sun.facelets.el.LegacyELContext$LegacyELResolver.setValue(LegacyELContext.java:201)
>        at com.sun.el.parser.AstValue.setValue(AstValue.java:113)
>        at com.sun.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:246)
>        at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:93)
>        at com.sun.facelets.el.LegacyValueBinding.setValue(LegacyValueBinding.java:68)
>        at com.sun.facelets.tag.jsf.core.SetPropertyActionListenerHandler$LegacySetPropertyListener.processAction(SetPropertyActionListenerHandler.java:88)
>        at javax.faces.event.ActionEvent.processListener(ActionEvent.java:57)
>        at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:683)
>        at javax.faces.component.UICommand.broadcast(UICommand.java:297)
>        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:302)
>        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:419)
>        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)
>        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:239)
>        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:91)
>        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
>        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:593)
>        at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:533)
>        at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
>        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
>        at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
>        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
>        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
>        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
>        at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
>        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
>        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
>        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
>        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
>        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
>        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
>        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
>        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
>
>
> regards
> Georg
>
>
> 2011/5/5 Leonardo Uribe <lu4242@gmail.com>:
>> Hi
>>
>> Could you provide the exception to see if there is a configuration problem?
>>
>> regards,
>>
>> Leonardo
>>
>> 2011/5/4 Georg Füchsle <giofyxle@googlemail.com>:
>>> Hallo
>>>
>>> I have made up a small JSF-Project using maven.
>>> It works as long I will not use <f:setPropertyActionListener.
>>> When <f:setPropertyActionListener is called, it runs into an exception.
>>>
>>> I deploy to WebShpere 6.1.
>>>
>>> I tried to switch the class loading without success.
>>> Looking forward for any help!
>>>
>>> Thanks Georg
>>>
>>>
>>> *******************************************************
>>> Here my sources:
>>> pom.xml:
>>>
>>> <project xmlns="http://maven.apache.org/POM/4.0.0"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
>>> http://maven.apache.org/maven-v4_0_0.xsd">
>>>        <modelVersion>4.0.0</modelVersion>
>>>        <groupId>de.safir</groupId>
>>>        <artifactId>InvestInformWeb</artifactId>
>>>        <version>0.0.1-SNAPSHOT</version>
>>>        <packaging>war</packaging>
>>>        <name />
>>>        <description />
>>>        <dependencies>
>>>                <dependency>
>>>                        <groupId>org.apache.openejb</groupId>
>>>                        <artifactId>javaee-api</artifactId>
>>>                        <version>5.0-3</version>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>javax.faces</groupId>
>>>                        <artifactId>jsf-api</artifactId>
>>>                        <version>1.2_04</version>
>>>                        <scope>compile</scope>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>javax.servlet</groupId>
>>>                        <artifactId>jstl</artifactId>
>>>                        <version>1.2</version>
>>>                        <scope>provided</scope>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>javax.servlet.jsp</groupId>
>>>                        <artifactId>jsp-api</artifactId>
>>>                        <version>2.1</version>
>>>                        <scope>provided</scope>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>javax.faces</groupId>
>>>                        <artifactId>jsf-impl</artifactId>
>>>                        <version>1.2_04</version>
>>>                        <scope>compile</scope>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>com.sun.facelets</groupId>
>>>                        <artifactId>jsf-facelets</artifactId>
>>>                        <version>1.1.9</version>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>javax.el</groupId>
>>>                        <artifactId>el-api</artifactId>
>>>                        <version>1.0</version>
>>>                </dependency>
>>>                <dependency>
>>>                        <groupId>com.sun.el</groupId>
>>>                        <artifactId>el-ri</artifactId>
>>>                        <version>1.0</version>
>>>                </dependency>
>>>        </dependencies>
>>>        <build>
>>>                <sourceDirectory>${basedir}/src</sourceDirectory>
>>>                <outputDirectory>${basedir}/WebRoot/WEB-INF/classes</outputDirectory>
>>>                <resources>
>>>                        <resource>
>>>                                <directory>${basedir}/src</directory>
>>>                                <excludes>
>>>                                        <exclude>**/*.java</exclude>
>>>                                </excludes>
>>>                        </resource>
>>>                </resources>
>>>                <plugins>
>>>                        <plugin>
>>>                                <groupId>org.apache.maven.plugins</groupId>
>>>                                <artifactId>maven-war-plugin</artifactId>
>>>                                <configuration>
>>>                                        <webappDirectory>${basedir}/WebRoot</webappDirectory>
>>>                                        <warSourceDirectory>${basedir}/WebRoot</warSourceDirectory>
>>>                                        <archive>
>>>                                                <manifest>
>>>                                                    
   <addClasspath>true</addClasspath>
>>>                                                </manifest>
>>>                                        </archive>
>>>                                </configuration>
>>>                        </plugin>
>>>                        <plugin>
>>>                                <groupId>org.apache.maven.plugins</groupId>
>>>                                <artifactId>maven-compiler-plugin</artifactId>
>>>                                <version>2.3.2</version>
>>>                                <configuration>
>>>                                        <source>1.5</source>
>>>                                        <target>1.5</target>
>>>                                </configuration>
>>>                        </plugin>
>>>                </plugins>
>>>        </build>
>>> </project>
>>>
>>>
>>>
>>> ************************************************************
>>> The web-Page:
>>>
>>> <?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:f="http://java.sun.com/jsf/core">
>>>        <head>
>>>                <title>Testseite</title>
>>>                <meta http-equiv="keywords" content="enter,your,keywords,here"
/>
>>>                <meta http-equiv="description"
>>>                        content="A short description of this page."
/>
>>>                <meta http-equiv="content-type" content="text/html;
charset=UTF-8" />
>>>        </head>
>>>        <body>
>>>                <f:view>
>>>                <h:form id="iiweb">
>>>                <p>
>>>                        <h:inputText value="#{ersteBean.text}"/><br/>
>>>                        <h:outputText value="#{ersteBean.neuerText}"
/>
>>>                        <br/>
>>>                        <h:commandButton action="#{ersteBean.laden}"
id="textajax" value="drücken">
>>>                                <f:setPropertyActionListener
target="#{ersteBean.neuerText}"    value="Text"/>
>>>                        </h:commandButton>
>>>                        <br/>
>>>                </p>
>>>                </h:form>
>>>        </f:view>
>>>        </body>
>>> </html>
>>>
>>> *************************************************************
>>> and the backing bean:
>>>
>>> package de.safir;
>>>
>>> public class ersteBean {
>>>        private String text;
>>>        private String neuerText;
>>>
>>>        public String laden() {
>>>                return "";
>>>        }
>>>
>>>        public String getText() {
>>>                return text;
>>>        }
>>>
>>>        public void setText(String text) {
>>>                this.text = text;
>>>        }
>>>
>>>        public String getNeuerText() {
>>>                return neuerText;
>>>        }
>>>
>>>        public void setNeuerText(String neuerText) {
>>>                this.neuerText = neuerText;
>>>        }
>>> }
>>>
>>
>

Mime
View raw message