2012-12-02 21 views
0

從JSF 1.2遷移到2.1之後,tomcat沒有看到導出爲jar文件的bean。我將應用程序的引擎導出到測試和生產服務器的jar文件中。如果我將類文件複製到WEB-INF/clasess,它的工作原理是正確的。Tomcat 6在jar中看不到bean

使用JSF 1.2這種方法是有效的。有使用faces-bean.xml的地方定義了所有的bean,現在我使用註解,而在faces-bean中只有我不能使用註釋定義的bean。

我在互聯網上發現添加faces-config.xml,但我有它。

我能做些什麼來強制tomacat6從jar文件中查看bean?

我的配置文件:

面孔,confi.xml

<?xml version="1.0" encoding="UTF-8"?> 
<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_2_1.xsd" 
version="2.1"> 
<component> 
    <component-type>org.richfaces.OutputPanel</component-type> 
    <component-class>my.package..UIOutputPanelWorkaround</component-class> 
</component> 

在網頁XML,我有幾個定義文件豆和導航的情況:

<context-param> 
<param-name>javax.faces.CONFIG_FILES</param-name> 
<param-value> 
     /WEB-INF/faces-config/faces-config.xml, 
     /WEB-INF/faces-config/faces-beans-common.xml, 
     /WEB-INF/faces-config/faces-beans-admin.xml, 
     /WEB-INF/faces-config/faces-beans.xml, 
     /WEB-INF/faces-config/faces-navigations.xml, 
     /WEB-INF/faces-config/faces-navigations-admin.xml,  
     /WEB-INF/faces-config/faces-navigations-raports.xml 
    </param-value> 

謝謝! 問候

UPDATE:

一個例外的,我在日誌中發現,爲myBean使用註釋。

WARNING: #{myBean.page1}: javax.el.PropertyNotFoundException: /include/sprawdzSzanse-box-v2.xhtml @34,164 action="#{myBean.page1}": Target Unreachable, identifier 'myBean' resolved to null 
javax.faces.FacesException: #{myBean.page1}: javax.el.PropertyNotFoundException: /include/sprawdzSzanse-box-v2.xhtml @34,164 action="#{myBean.page1}": Target Unreachable, identifier 'myBean' resolved to null 
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:117) 
at javax.faces.component.UICommand.broadcast(UICommand.java:315) 
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794) 
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259) 
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81) 
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) 
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) 
at my.package.LifecycleDecorator.execute(LifecycleDecorator.java:66) 
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at my.package.ie9fix.ie9fixFilter.doFilter(ie9fixFilter.java:41) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176) 
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145) 
at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92) 
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:357) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) 
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) 
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) 
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) 
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) 
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) 
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
at java.lang.Thread.run(Thread.java:636) 
Caused by: javax.faces.el.EvaluationException: javax.el.PropertyNotFoundException: /include/sprawdzSzanse-box-v2.xhtml @34,164 action="#{myBean.page1}": Target Unreachable, identifier 'myBean' resolved to null 
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:95) 
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:101) 
... 58 more 
Caused by: javax.el.PropertyNotFoundException: /include/sprawdzSzanse-box-v2.xhtml @34,164 action="#{myBean.page1}": Target Unreachable, identifier 'myBean' resolved to null 
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:107) 
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) 
... 59 more 
+0

在您的myBean中找到此屬性名稱「page1」。 – KSHiTiJ

+0

屬性存在於myBean中,對於使用@ManagedBean註釋的更少的bean,我有這種異常。 –

回答

0

顯然我解決了這個問題。以前我無法回答名譽太少,我忘了這一點。

我將其添加到MATA-INF faces-config.xml中,該文件放置在帶有類的jar文件中。

包含faces-config.xml中的:

<faces-config 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee/ http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd" 
    version="2.2"> 

</faces-config> 

索裏的一晚,我希望這會幫助別人。