2012-09-04 44 views
0

我試圖在Weblogic 10.3.6(JSF 1.2,將JPA修補到2.0)和ADF Faces上使用myFaces extVal Bean驗證。 在Weblogic 10.3.6上可以同時使用「ADF Faces」和「Apache myFaces extVal Bean驗證」嗎?Bean驗證ADF和myFaces extVal on weblogic 10.3.6

我HABE嘗試添加下列庫:

asm-1.5.3.jar 
cglib-2.1_3.jar 
myfaces-extval-bean-validation-1.2.5.jar 
myfaces-extval-core-1.2.5.jar 
myfaces-extval-property-validation-1.2.5.jar 
myfaces-extval-trinidad-support-1.2.5.jar 
validation-api-1.0.0.GA.jar 

結果異常以下:

java.lang.ClassCastException:  
org.apache.myfaces.trinidadinternal.renderkit.core.CoreRenderingContext cannot be cast to oracle.adf.view.rich.render.RichRenderingContext 
at oracle.adf.view.rich.render.RichRenderer.getRichRenderingContext(RichRenderer.java:1230) 
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1259) 
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:341) 
at org.apache.myfaces.extensions.validator.core.renderkit.ExtValLazyRendererProxy.encodeEnd(ExtValLazyRendererProxy.java:77) 
at org.apache.myfaces.extensions.validator.core.renderkit.ExtValRendererWrapper.encodeEnd(ExtValRendererWrapper.java:312) 
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:767) 
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937) 
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933) 
at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:266) 
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:197) 
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189) 
at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193) 
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:911) 
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:367) 
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:222) 
at org.apache.myfaces.extensions.validator.core.startup.ExtValLifecycleWrapper.render(ExtValLifecycleWrapper.java:79) 
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) 
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) 
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) 
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) 
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106) 
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446) 
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60) 
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446) 
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271) 
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177) 
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119) 
at java.security.AccessController.doPrivileged(Native Method) 
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315) 
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442) 
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103) 
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171) 
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) 
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) 
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) 
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) 
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) 
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) 
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) 
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178) 

所以原因是,我已經混了MyFaces實現ADF執行,對不對? 所以我想在Weblogic 10.3.6上使用extVal for JSF 1.2和ADF並不合適。

我見過以下站點: http://buttso.blogspot.de/2011/05/jsf-20-jpa-20-and-bean-validation-on.html 在Weblogic 10.3上使用JSF 2.0,JPA 2.0和BeanValidation。 所以在我的情況下是不可能使用JSF 2.0的。 而且我必須使用ADF(Faces)。

我只是想確保沒有其他的可能性讓它工作。

問候,

最大

回答

0

「有JSF 2.0,JPA 2.0和BeanValidation的Weblogic上10.3使用。所以在我的情況下,無法使用JSF 2.0,而且我必須使用ADF(面)。」

實際上,它支持帶有ADF Faces的JSF 2.0的JDeveloper 11g R2(11.1.2.2)。儘管JDeveloper 11g R2基於WLS 10.3.6,但它需要來自客戶支持的特定補丁才能工作。所以你可以升級到JSF 2.0和ADF Faces,但是你需要一個特定的JDeveloper(ADF Faces)版本和一個補丁