Geronimo 3.0 backward compatibility for JEE 5 component

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Geronimo 3.0 backward compatibility for JEE 5 component

zilinchen
Is Geronimo 3.0 backward compatibility for JEE 5 component?

such as web component JSP2.1/Servlet2.5 with MyFace 1.2.x implementation (JSF 1.2)

We have a web component works well on Geronimo 2.1, and looking for move it to Geronimo 3.0.
As we have a third party library is based on JSF1.2 and can't be upgrade, So how can we deploy this JEE 5 component on 3.0 without upgrade JSF/JSP spec?

Reply | Threaded
Open this post in threaded view
|

Re: Geronimo 3.0 backward compatibility for JEE 5 component

Ivan Xu
Think you could ship the JSF 1.2 libraries in your application, also configure the property -Dorg.apache.geronimo.jsf.support=false disable server processing while starting the server.


2013/2/5 zilinchen <[hidden email]>
Is Geronimo 3.0 backward compatibility for JEE 5 component?

such as web component JSP2.1/Servlet2.5 with MyFace 1.2.x implementation
(JSF 1.2)

We have a web component works well on Geronimo 2.1, and looking for move it
to Geronimo 3.0.
As we have a third party library is based on JSF1.2 and can't be upgrade, So
how can we deploy this JEE 5 component on 3.0 without upgrade JSF/JSP spec?





--
View this message in context: http://apache-geronimo.328035.n3.nabble.com/Geronimo-3-0-backward-compatibility-for-JEE-5-component-tp3986278.html
Sent from the Users mailing list archive at Nabble.com.



--
Ivan
Reply | Threaded
Open this post in threaded view
|

Re: Geronimo 3.0 backward compatibility for JEE 5 component

kevan
Administrator
In reply to this post by zilinchen

On Feb 4, 2013, at 3:06 PM, zilinchen <[hidden email]> wrote:

> Is Geronimo 3.0 backward compatibility for JEE 5 component?
>
> such as web component JSP2.1/Servlet2.5 with MyFace 1.2.x implementation
> (JSF 1.2)
>
> We have a web component works well on Geronimo 2.1, and looking for move it
> to Geronimo 3.0.
> As we have a third party library is based on JSF1.2 and can't be upgrade, So
> how can we deploy this JEE 5 component on 3.0 without upgrade JSF/JSP spec?

From a specification perspective, Java EE 6 is backward compatible with Java EE 5. Implementation specifics (e.g. configuration settings, extensions, etc) may not necessarily be backward compatible.

Have you deployed your application on G 3.0 and are seeing problems?

--kevan
Reply | Threaded
Open this post in threaded view
|

Re: Geronimo 3.0 backward compatibility for JEE 5 component

zilinchen
1,  add MyFace api and impl jars as dependencies
2,  using -Dorg.apache.geronimo.jsf.support=false in geronimo.bat to startup server.

noticed the two module still loaded

Module 20/74 org.apache.geronimo.configs/myfaces/3.0-w20120730/car                    started in   .010s
Module 21/74 org.apache.geronimo.configs/myfaces-deployer/3.0-w20120730/car           started in   .139s

and got exception as below

Caused by: org.osgi.framework.BundleException: The bundle "com.xxxx... [401]" could not be resolved. Reason: Package uses conflict: Import-Package: org.apache.myfaces.application; version="[1.2.8,1.2.8]", Package uses conflict: Import-Package: org.apache.myfaces.lifecycle; version="[1.2.8,1.2.8]", Package uses conflict: Import-Package: org.apache.myfaces.el.unified.resolver; version="[1.2.8,1.2.8]", Package uses conflict: Import-Package: org.apache.myfaces.config.impl.digester; version="[1.2.8,1.2.8]", Package uses conflict: Import-Package: org.apache.myfaces.config; version="[1.2.8,1.2.8]", Package uses conflict: Import-Package: org.apache.myfaces.portlet; version="[1.2.8,1.2.8]"
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.getResolverError(AbstractBundle.java:1327)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.getResolutionFailureException(AbstractBundle.java:1311)
        at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:323)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
        at org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:311)
Reply | Threaded
Open this post in threaded view
|

Re: Geronimo 3.0 backward compatibility for JEE 5 component

zilinchen
1, var\config.xml, set load false to below

    <module load="false" name="org.apache.geronimo.configs/myfaces/3.0-w20120730/car"/>
    <module load="false" name="org.apache.geronimo.configs/myfaces-deployer/3.0-w20120730/car"/>

2, package all old jars in WEB-INF\lib of my war
myfaces-api-1.2.8.jar
myfaces-impl-1.2.8.jar
jstl-1.2-1.jar
etc.

3, add listener definition in web.xml (otherwise complaint for that)

<listener>
  <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
</listener>

Now It can be dployed and loaded successfully, but after Form-Login
from index.jsp, get exception as below

2013-02-07 17:26:44,511 ERROR [compiler] Compiler Initialization Error
java.io.FileNotFoundException: JAR entry META-INF/ not found in C:\devtools\WasCEDV\repository\asm\asm-all\3.2\asm-all-3.2.jar
        at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:133)
        at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:82)
        at com.sun.facelets.util.Classpath.search(Classpath.java:69)
        at com.sun.facelets.compiler.TagLibraryConfig.loadImplicit(TagLibraryConfig.java:428)
        at com.sun.facelets.compiler.Compiler.initialize(Compiler.java:87)
        at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
        at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:218)
        at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:149)
        at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:100)
        at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:517)
        at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:567)
        at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
        at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
        at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471)
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
        at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:745)
        at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:716)
        at org.apache.jsp.start_jsp._jspService(start_jsp.java:71)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
        at org.apache.geronimo.tomcat.security.SecurityValve.invoke(SecurityValve.java:89)
        at org.apache.geronimo.tomcat.security.jacc.JACCSecurityValve.invoke(JACCSecurityValve.java:54)
        at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:731)
        at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:48)
        at org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
        at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:267)
        at org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:397)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:896)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:735)
2013-02-07 17:26:44,572 ERROR [viewhandler] Error Rendering View[/index.jsp]
java.lang.NullPointerException
        at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
        at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
        at com.sun.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:95)
        at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:524)
        at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:567)
        at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
        at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
        at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471)
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
        at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:745)
        at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:716)
        at org.apache.jsp.start_jsp._jspService(start_jsp.java:71)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
        at org.apache.geronimo.tomcat.security.SecurityValve.invoke(SecurityValve.java:89)
        at org.apache.geronimo.tomcat.security.jacc.JACCSecurityValve.invoke(JACCSecurityValve.java:54)
        at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:731)
        at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:48)
        at org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
        at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:267)
        at org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:397)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:896)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:735)
2013-02-07 17:26:44,575 ERROR [[Faces Servlet]] Servlet.service() for servlet Faces Servlet threw exception
Reply | Threaded
Open this post in threaded view
|

Re: Geronimo 3.0 backward compatibility for JEE 5 component

zilinchen
The bug is inside of Jfacelet.jar (1.1.15 B1),  as Geronimo 3.0 have different class loader mechanism, facslet can't load up. With manually update the jfaceslet, we can deploy and startup the old JEE 5 ear