oops, It works. But why this is the cause? MyFaces examples also put these context-param in web.xml. It works fine If I have to load multiple configuration files, how to deal with them?'
On 3/17/06, Dennis Byrne <[EMAIL PROTECTED]> wrote: > Remove > > <context-param> > <param-name>javax.faces.CONFIG_FILES</param-name> > <param-value>/WEB-INF/faces-config.xml</param-value> > </context-param> > > and the problem will go away. > > Dennis Byrne > > >-----Original Message----- > >From: Anthony Hong [mailto:[EMAIL PROTECTED] > >Sent: Friday, March 17, 2006 01:03 AM > >To: 'MyFaces Discussion' > >Subject: Re: Phase Listener entered twice > > > >My web.xml > > > ><?xml version="1.0" encoding="UTF-8"?> > > > ><web-app version="2.4" > > xmlns="http://java.sun.com/xml/ns/j2ee" > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee > >http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> > > > > <display-name>JSF Facelets Trail</display-name> > > > > <!-- Use Documents Saved as *.xhtml --> > > <context-param> > > <param-name>javax.faces.DEFAULT_SUFFIX</param-name> > > <param-value>.xhtml</param-value> > > </context-param> > > > > <context-param> > > <param-name>facelets.LIBRARIES</param-name> > > <param-value> > > > > /WEB-INF/facelets/tomahawk.taglib.xml;/WEB-INF/facelets/sandbox.taglib.xml;/WEB-INF/facelets/fsds.taglib.xml; > > </param-value> > > </context-param> > > > > > > <!-- Special Debug Output for Development --> > > <context-param> > > <param-name>facelets.DEVELOPMENT</param-name> > > <param-value>true</param-value> > > </context-param> > > > > <context-param> > > <param-name>facelets.REFRESH_PERIOD</param-name> > > <param-value>2</param-value> > > </context-param> > > > > <context-param> > > <param-name>javax.faces.CONFIG_FILES</param-name> > > <param-value>/WEB-INF/faces-config.xml</param-value> > > </context-param> > > > > <context-param> > > <param-name>javax.faces.STATE_SAVING_METHOD</param-name> > > <param-value>client</param-value> > > </context-param> > > > > <context-param> > > <description> > > This parameter tells MyFaces if javascript code should be > >allowed in the > > rendered HTML output. > > If javascript is allowed, command_link anchors will have > >javascript code > > that submits the corresponding form. > > If javascript is not allowed, the state saving info and > >nested parameters > > will be added as url parameters. > > Default: "true" > > </description> > > <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name> > > <param-value>true</param-value> > > </context-param> > > > > <context-param> > > <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name> > > <param-value>false</param-value> > > </context-param> > > > > <context-param> > > <description> > > If true, rendered HTML code will be formatted, so that it > >is "human readable". > > i.e. additional line separators and whitespace will be > >written, that do not > > influence the HTML code. > > Default: "true" > > </description> > > <param-name>org.apache.myfaces.PRETTY_HTML</param-name> > > <param-value>true</param-value> > > </context-param> > > > > <context-param> > > <description> > > If true, a javascript function will be rendered that is > >able to restore the > > former vertical scroll on every request. Convenient > >feature if you have pages > > with long lists and you do not want the browser page to > >always jump to the top > > if you trigger a link or button action that stays on the same > > page. > > Default: "false" > > </description> > > <param-name>org.apache.myfaces.AUTO_SCROLL</param-name> > > <param-value>true</param-value> > > </context-param> > > > > <filter> > > <filter-name>extensionsFilter</filter-name> > > > > <filter-class>org.apache.myfaces.component.html.util.ExtensionsFilter</filter-class> > > <init-param> > > <description>Set the size limit for uploaded files. > > Format: 10 - 10 bytes > > 10k - 10 KB > > 10m - 10 MB > > 1g - 1 GB > > </description> > > <param-name>uploadMaxFileSize</param-name> > > <param-value>2m</param-value> > > </init-param> > > <init-param> > > <description>Set the threshold size - files > > below this limit are stored in memory, files above > > this limit are stored on disk. > > > > Format: 10 - 10 bytes > > 10k - 10 KB > > 10m - 10 MB > > 1g - 1 GB > > </description> > > <param-name>uploadThresholdSize</param-name> > > <param-value>64k</param-value> > > </init-param> > > <!-- <init-param> > > <param-name>uploadRepositoryPath</param-name> > > <param-value>/temp</param-value> > > <description>Set the path where the intermediary files > >will be stored. > > </description> > > </init-param>--> > > </filter> > > > > <filter-mapping> > > <filter-name>extensionsFilter</filter-name> > > <url-pattern>*.jsf</url-pattern> > > </filter-mapping> > > <filter-mapping> > > <filter-name>extensionsFilter</filter-name> > > <url-pattern>/faces/*</url-pattern> > > </filter-mapping> > > > > <listener> > > > > <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> > > </listener> > > > > <!-- Faces Servlet --> > > <servlet> > > <servlet-name>Faces Servlet</servlet-name> > > <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> > > <load-on-startup>1</load-on-startup> > > </servlet> > > > > <servlet> > > <servlet-name>Upload Servlet</servlet-name> > > <servlet-class>upload.UploadServlet</servlet-class> > > </servlet> > > > > <servlet-mapping> > > <servlet-name>Upload Servlet</servlet-name> > > <url-pattern>upload.do</url-pattern> > > </servlet-mapping> > > > > <!-- extension mapping --> > > <servlet-mapping> > > <servlet-name>Faces Servlet</servlet-name> > > <url-pattern>*.jsf</url-pattern> > > </servlet-mapping> > > > > <welcome-file-list> > > <welcome-file>index.jsf</welcome-file> > > </welcome-file-list> > > > ></web-app> > > > > > >JSF Faces configuration: > > > ><?xml version="1.0"?> > > > ><!DOCTYPE faces-config PUBLIC > > "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN" > > "http://java.sun.com/dtd/web-facesconfig_1_1.dtd"> > > > ><faces-config> > > > > <application> > > <locale-config> > > <default-locale>en</default-locale> > > <supported-locale>zh</supported-locale> > > </locale-config> > > <message-bundle>language.MemberSite</message-bundle> > > <view-handler> > > com.sun.facelets.FaceletViewHandler > > </view-handler> > > <navigation-handler>Navigator</navigation-handler> > > </application> > > > > <lifecycle> > > <phase-listener>ajax.AjaxListener</phase-listener> > > </lifecycle> > > > > <converter> > > <converter-id>DebtorTypeTagConverter</converter-id> > > > > <converter-class>com.fsds.jsf.convertor.DebtorTypeTagConverter</converter-class> > > </converter> > > > > <managed-bean> > > <managed-bean-name>LifeCycleBean</managed-bean-name> > > <managed-bean-class>com.fsds.LifeCycleBean</managed-bean-class> > > <managed-bean-scope>request</managed-bean-scope> > > </managed-bean> > > > > <!-- our NumberBean we just created --> > > <managed-bean> > > <managed-bean-name>NumberBean</managed-bean-name> > > <managed-bean-class>tutorial.NumberBean</managed-bean-class> > > <managed-bean-scope>session</managed-bean-scope> > > <managed-property> > > <property-name>min</property-name> > > <value>1</value> > > </managed-property> > > <managed-property> > > <property-name>max</property-name> > > <value>10</value> > > </managed-property> > > </managed-bean> > > > > <managed-bean> > > <managed-bean-name>PageUtil</managed-bean-name> > > <managed-bean-class>com.fsds.util.PageUtil</managed-bean-class> > > <managed-bean-scope>session</managed-bean-scope> > > </managed-bean> > > > > <managed-bean> > > <managed-bean-name>DebtorController</managed-bean-name> > > > > <managed-bean-class>com.fsds.debtor.DebtorController</managed-bean-class> > > <managed-bean-scope>session</managed-bean-scope> > > </managed-bean> > > > > <!-- going from guess.xhtml to response.xhtml --> > > <navigation-rule> > > <from-view-id>/number/guess.xhtml</from-view-id> > > <navigation-case> > > <from-outcome>success</from-outcome> > > <to-view-id>/number/response.xhtml</to-view-id> > > <redirect/> > > </navigation-case> > > </navigation-rule> > > > > <!-- going from response.xhtml to guess.xhtml --> > > <navigation-rule> > > <from-view-id>/number/response.xhtml</from-view-id> > > <navigation-case> > > <from-outcome>success</from-outcome> > > <to-view-id>/number/guess.xhtml</to-view-id> > > <redirect/> > > </navigation-case> > > </navigation-rule> > > > > <navigation-rule> > > <from-view-id>/template/menu.xhtml</from-view-id> > > <navigation-case> > > <from-outcome>main</from-outcome> > > <to-view-id>/main.xhtml</to-view-id> > > </navigation-case> > > </navigation-rule> > > > > <navigation-rule> > > <description>Debtor Page List navigation rule</description> > > <from-view-id>/debtor/debtor.xhtml</from-view-id> > > <navigation-case> > > <from-outcome>create</from-outcome> > > <to-view-id>/debtor/debtor-create.xhtml</to-view-id> > > </navigation-case> > > <navigation-case> > > <from-outcome>update</from-outcome> > > <to-view-id>/debtor/debtor-update.xhtml</to-view-id> > > </navigation-case> > > </navigation-rule> > > > > <navigation-rule> > > <description>Create Debtor Page navigation rule</description> > > <from-view-id>/debtor/debtor-create.xhtml</from-view-id> > > <navigation-case> > > <from-outcome>success</from-outcome> > > <to-view-id>/debtor/debtor-update.xhtml</to-view-id> > > </navigation-case> > > <navigation-case> > > <from-outcome>error</from-outcome> > > <to-view-id>/debtor/debtor-create.xhtml</to-view-id> > > </navigation-case> > > <navigation-case> > > <from-outcome>discard</from-outcome> > > <to-view-id>/debtor/debtor.xhtml</to-view-id> > > </navigation-case> > > </navigation-rule> > > > > <navigation-rule> > > <description>Update Debtor Page navigation rule</description> > > <from-view-id>/debtor/debtor-update.xhtml</from-view-id> > > <navigation-case> > > <from-action>#{DebtorController.updateDebtor}</from-action> > > <from-outcome>success</from-outcome> > > <to-view-id>/debtor/debtor-update.xhtml</to-view-id> > > </navigation-case> > > <navigation-case> > > <from-outcome>discard</from-outcome> > > <to-view-id>/debtor/debtor.xhtml</to-view-id> > > </navigation-case> > > </navigation-rule> > > > > <navigation-rule> > > <from-view-id>*</from-view-id> > > <navigation-case> > > <from-outcome>indexPage</from-outcome> > > <to-view-id>/index.xhtml</to-view-id> > > <redirect/> > > </navigation-case> > > </navigation-rule> > > > ></faces-config> > > > > > > > > > >-- > > > >Anthony Hong > > > > > -- Anthony Hong

