[jboss-user] [JBoss Seam] - SeamNavigationHandler is no javax.faces.application.Navigati

cmuth do-not-reply at jboss.com
Fri Jul 21 18:50:07 EDT 2006


Hi Folks,

sorry for posting such a noobie issue, but i'm beginning to pull my hair out...  i copied the jboss seam booking example as skeleton for my new application - the booking example unmodified works as it should, but my loanmarket application does not initialize properly. :-(

could you guys please have a look at my application files and tell me what the hell i am doing wrong? i dont see it :-(

Any help is greatly appreciated - thanks a lot in advance!

Stacktrace:

  | 22:38:21,731 INFO  [EJB3Deployer:450] Deployed: file:/opt/jboss/server/default/tmp/deploy/tmp37477loanmarket.ear-contents/loanmarket-ejb.jar
  | 22:38:21,738 INFO  [TomcatDeployer:126] deploy, ctxPath=/loanmarket, warUrl=.../tmp/deploy/tmp37477loanmarket.ear-contents/loanmarket-exp.war/
  | 22:38:21,956 INFO  [FacesConfigurator:94] Reading standard config org/apache/myfaces/resource/standard-faces-config.xml
  | 22:38:21,984 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/tmp/deploy/tmp37477loanmarket.ear-contents/jboss-seam.jar!/META-INF/faces-config.xml
  | 22:38:21,990 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/lib/jboss-seam-debug.jar!/META-INF/faces-config.xml
  | 22:38:21,996 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/lib/jboss-seam.jar!/META-INF/faces-config.xml
  | 22:38:22,006 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/lib/jboss-seam-ui.jar!/META-INF/faces-config.xml
  | 22:38:22,025 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/tmp/deploy/tmp37477loanmarket.ear-contents/loanmarket-exp.war/WEB-INF/lib/jboss-seam-debug.jar!/META-INF/faces-config.xml
  | 22:38:22,069 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/tmp/deploy/tmp37477loanmarket.ear-contents/loanmarket-exp.war/WEB-INF/lib/jboss-seam-ui.jar!/META-INF/faces-config.xml
  | 22:38:22,364 INFO  [FacesConfigurator:94] Reading config jar:file:/opt/jboss/server/default/tmp/deploy/tmp37477loanmarket.ear-contents/loanmarket-exp.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/faces-config.xml
  | 22:38:22,370 INFO  [FacesConfigurator:94] Reading config /WEB-INF/faces-config.xml
  | 22:38:22,778 ERROR [StartupServletContextListener:119] Error initializing ServletContext
  | java.lang.IllegalArgumentException: Class org.jboss.seam.jsf.SeamNavigationHandler is no javax.faces.application.NavigationHandler
  |         at org.apache.myfaces.config.FacesConfigurator.getApplicationObject(FacesConfigurator.java:536)
  |         at org.apache.myfaces.config.FacesConfigurator.configureApplication(FacesConfigurator.java:458)
  |         at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:141)
  |         at org.apache.myfaces.webapp.StartupServletContextListener.initFaces(StartupServletContextListener.java:66)
  |         at org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:49)
  |         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
  |         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
  |         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
  |         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
  |         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  | 


Okay, here we go...
___________________________________
EAR structure:

  | |-- META-INF
  | |   |-- MANIFEST.MF
  | |   |-- application.xml
  | |   `-- jboss-app.xml
  | |-- jboss-seam.jar
  | |-- loanmarket-ejb.jar
  | `-- loanmarket.war
  | 

loanmarket-ejb.jar structure:

  | |-- META-INF
  | |   |-- MANIFEST.MF
  | |   |-- ejb-jar.xml
  | |   `-- persistence.xml
  | |-- import.sql
  | |-- org
  | |   `-- jboss
  | |       `-- seam
  | |           `-- example
  | |               `-- booking
  | |                   |-- Booking.class
  | |                   |-- BookingList.class
  | ...snip....
  | 

and loanmarket.war structure:

  | |-- META-INF
  | |   `-- MANIFEST.MF
  | |-- WEB-INF
  | |   |-- classes
  | |   |-- components.xml
  | |   |-- faces-config.xml
  | |   |-- lib
  | |   |   |-- el-api.jar
  | |   |   |-- el-ri.jar
  | |   |   |-- jboss-seam-debug.jar
  | |   |   |-- jboss-seam-ui.jar
  | |   |   |-- jsf-facelets.jar
  | |   |   |-- myfaces-api-1.1.3.jar
  | |   |   `-- myfaces-impl-1.1.3.jar
  | |   |-- pages.xml
  | |   `-- web.xml
  | |-- book.xhtml
  | |-- confirm.xhtml
  | |-- conversations.xhtml
  | ...snip...
  | 

my application.xml:

  | <application>
  |         <display-name>Loan Market</display-name>
  |         <module>
  |                 <web>
  |                         <web-uri>loanmarket.war</web-uri>
  |                         <context-root>/loanmarket</context-root>
  |                 </web>
  |         </module>
  |         <module>
  |                 <ejb>loanmarket-ejb.jar</ejb>
  |         </module>
  |         <module>
  |             <java>jboss-seam.jar</java>
  |         </module>
  | </application>
  | 

jboss-app.xml:

  | <jboss-app>
  |       <loader-repository> 
  |       seam.jboss.org:loader=loanmarket
  |       </loader-repository> 
  | </jboss-app>
  | 

ejb-jar:

  | <ejb-jar>
  |    <assembly-descriptor>
  |       <interceptor-binding>
  |          <ejb-name>*</ejb-name>
  | <interceptor-class>org.jboss.seam.ejb.SeamInterceptor</interceptor-class>
  |       </interceptor-binding>
  |    </assembly-descriptor>
  | </ejb-jar>
  | 

seam.properties are empty?!

WEB-INF/components.xml:

  | <components>
  |     <component name="org.jboss.seam.core.init">
  |         <property name="debug">true</property>
  |         <property name="myFacesLifecycleBug">true</property>
  |         <property name="jndiPattern">#{ejbName}/local</property>
  |     </component>
  |     <!-- 120 second conversation timeout -->
  |     <component name="org.jboss.seam.core.manager">
  |         <property name="conversationTimeout">120000</property>
  |     </component>
  |     <component class="org.jboss.seam.core.Ejb" 
  |                installed="false"/>
  | </components>
  | 

WEB-INF/faces-config:

  | <faces-config>
  | 
  | 
  | 
  |     <!-- Navigation rules for the Booking demo app -->
  | 
  |     <navigation-rule>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>login</from-outcome>
  |             <to-view-id>/home.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  |         
  | 
  |         <navigation-case>
  |             <from-outcome>register</from-outcome>
  |             <to-view-id>/register.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>password</from-outcome>
  |             <to-view-id>/password.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>main</from-outcome>
  |             <to-view-id>/main.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  | 
  | 
  | 
  |         <navigation-case>
  | 
  |             <from-outcome>hotel</from-outcome>
  | 
  |             <to-view-id>/hotel.xhtml</to-view-id>
  | 
  |             <redirect />
  | 
  |         </navigation-case>
  | 
  | 
  | 
  |     </navigation-rule>
  | 
  | 
  | 
  |     <navigation-rule>
  | 
  | 
  |         <from-view-id>/hotel.xhtml</from-view-id>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>book</from-outcome>
  |             <to-view-id>/book.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  | 
  | 
  | 
  |     </navigation-rule>
  | 
  | 
  |     <navigation-rule>
  | 
  | 
  |         <from-view-id>/book.xhtml</from-view-id>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>confirm</from-outcome>
  |             <to-view-id>/confirm.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  | 
  | 
  | 
  |     </navigation-rule>
  | 
  | 
  |     <navigation-rule>
  | 
  | 
  |         <from-view-id>/confirm.xhtml</from-view-id>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>confirmed</from-outcome>
  |             <to-view-id>/main.xhtml</to-view-id>
  | 
  |             <redirect/>
  |         </navigation-case>
  | 
  | 
  |         <navigation-case>
  |             <from-outcome>back</from-outcome>
  |             <to-view-id>/book.xhtml</to-view-id>
  | 
  |             <redirect />
  |         </navigation-case>
  | 
  | 
  |     </navigation-rule>
  | 
  | 
  |     <!-- Facelets support -->
  | 
  | 
  | 
  |     <application>
  | 
  |         <view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
  | 
  |     </application>
  | 
  |     
  | 
  |     <!-- Select one of the two standard persistence lifecycle models for the Seam application -->
  | 
  | 
  |     <lifecycle>
  |         <phase-listener>org.jboss.seam.jsf.SeamPhaseListener</phase-listener>
  |     </lifecycle>
  | 
  | 
  | </faces-config>
  | 
  | 

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">
  | 
  | 
  |     <!-- Seam -->
  |    
  |     <listener>
  |         <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
  |     </listener>
  | 
  | 
  | 
  |     <!-- Propagate conversations across redirects -->
  | 
  |     <filter>
  | 
  |         <filter-name>Seam Redirect Filter</filter-name>
  | 
  |         <filter-class>org.jboss.seam.servlet.SeamRedirectFilter</filter-class>
  | 
  |     </filter>
  | 
  |     
  | 
  |     <filter-mapping>
  | 
  |         <filter-name>Seam Redirect Filter</filter-name>
  | 
  |         <url-pattern>*.seam</url-pattern>
  | 
  |     </filter-mapping>
  | 
  | 
  | 
  |     <!-- JSF -->
  | 
  |     
  | 
  |     <context-param>
  |         <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
  |         <param-value>client</param-value>
  |     </context-param>
  | 
  | 
  | 
  |     <context-param>
  | 
  |         <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
  | 
  |         <param-value>.xhtml</param-value>
  | 
  |     </context-param>
  | 
  | 
  |     <context-param>
  | 
  |         <param-name>facelets.DEVELOPMENT</param-name>
  | 
  |         <param-value>true</param-value>
  | 
  |     </context-param>
  | 
  | 
  | 
  |     <servlet>
  |         <servlet-name>Faces Servlet</servlet-name>
  |         <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
  |         <load-on-startup>1</load-on-startup>
  |     </servlet>
  | 
  | 
  |     <!-- Faces Servlet Mapping -->
  | 
  |     <servlet-mapping>
  |         <servlet-name>Faces Servlet</servlet-name>
  |         <url-pattern>*.seam</url-pattern>
  |     </servlet-mapping>
  | 
  | 
  |     <!-- MyFaces -->
  | 
  |     <listener>
  | 
  |         <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
  | 
  |     </listener>
  | 
  |  
  | 
  |     <!-- JSF RI -->
  | 
  |     <!--
  | 
  |     <listener>
  | 
  |         <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
  | 
  |     </listener> 
  | 
  |     -->
  | 
  | </web-app>
  | 
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3960056#3960056

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3960056



More information about the jboss-user mailing list