"Unable to parse document" error when setting PortletBridge 3.0.0 for Public Render Parameter
mescaja Jan 12, 2012 4:20 AMHi
I´m trying setup a portlet with a Public Render Parameter. I´m using Porlet Bridge 3.0.0 version. Here´s my faces-config.xml. The bit causing trouble is highlighted in red.
<?xml version='1.0' encoding='UTF-8'?>
<faces-config version="2.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bridge="http://myfaces.apache.org/portletbridge"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
<managed-bean>
<managed-bean-name>user</managed-bean-name>
<managed-bean-class>com.escaja.portlets.UserJSFManagedBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<navigation-rule>
<from-view-id>/view.xhtml</from-view-id>
<navigation-case>
<from-outcome>SayHello</from-outcome>
<to-view-id>/view2.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
<navigation-rule>
<from-view-id>/view2.xhtml</from-view-id>
<navigation-case>
<from-outcome>TryAgain</from-outcome>
<to-view-id>/view.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
<application>
<application-extension>
<bridge:public-parameter-mappings>
<bridge:public-parameter-mapping>
<parameter>JsfRichFacesHelloUserPortlet:prpExample</parameter>
<model-el>#{user.prpExampleMember}</model-el>
</bridge:public-parameter-mapping>
</bridge:public-parameter-mappings>
</application-extension>
</application>
</faces-config>
The error below comes up when deploying the portlet war file to a Tomcat 7.0.23 instance packaged with GateIn 3.2. The portlet does not appears in the Application Registry in GateIn after deployment.
When I remove the bit in red from the faces-config.xml file, the error goes away, the war file gets deployed fine, It shows in the Applicaiton Registry, I´m able to add the portlet on to a page in GateIn and the portlet functions correctly.
Error message below. By the looks it seems that it can´t resolve <bridge:public-parameter-mapping>
INFO: Inicializando Mojarra 2.1.1 (FCS 20110408) para el contexto '/FirstJsfRichFacesPortlet'
12-ene-2012 9:49:13 com.sun.faces.config.ConfigManager initialize
INFO: Unsanitized stacktrace from failed start...
com.sun.faces.config.ConfigurationException: java.util.concurrent.ExecutionException: com.sun.faces.config.ConfigurationException: Unable to parse document 'jndi:/localhost/FirstJsfRichFacesPortlet/WEB-INF/faces-config.xml': null
at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:675)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:322)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.util.concurrent.ExecutionException: com.sun.faces.config.ConfigurationException: Unable to parse document 'jndi:/localhost/FirstJsfRichFacesPortlet/WEB-INF/faces-config.xml': null
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
at java.util.concurrent.FutureTask.get(FutureTask.java:83)
at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:673)
... 16 more
Caused by: com.sun.faces.config.ConfigurationException: Unable to parse document 'jndi:/localhost/FirstJsfRichFacesPortlet/WEB-INF/faces-config.xml': null
at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:923)
at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:868)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:659)
... 16 more
Caused by: java.lang.NullPointerException
at com.sun.faces.config.ConfigManager$ParseTask.getDocument(ConfigManager.java:967)
at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:914)
... 20 more
12-ene-2012 9:49:13 com.sun.faces.config.ConfigureListener contextInitialized
GRAVE: Critical error during deployment:
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:379)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NullPointerException
at com.sun.faces.config.ConfigManager$ParseTask.getDocument(ConfigManager.java:967)
at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:914)
at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:868)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:659)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:322)
... 15 more
12-ene-2012 9:49:13 org.apache.catalina.core.StandardContext startInternal
GRAVE: Error listenerStart
12-ene-2012 9:49:13 org.apache.catalina.core.StandardContext startInternal
GRAVE: Falló en arranque del Contexto [/FirstJsfRichFacesPortlet] debido a errores previos
12-ene-2012 9:49:13 com.sun.faces.config.ConfigureListener contextDestroyed
GRAVE: Unexpected exception when attempting to tear down the Mojarra runtime
java.lang.IllegalStateException: La aplicación no se ha inicializado correctamente durante el inicio, no se encuentra la fábrica: javax.faces.application.ApplicationFactory
at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:894)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:319)
at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:112)
at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:325)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4805)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5453)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:160)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
12-ene-2012 9:49:13 org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
GRAVE: La aplicación web [/FirstJsfRichFacesPortlet] creó un ThreadLocal con clave del tipo [javax.faces.context.FacesContext$1] (valor [javax.faces.context.FacesContext$1@60c9326f]) y un valor del tipo [com.sun.faces.config.InitFacesContext] (valor [com.sun.faces.config.InitFacesContext@390e470d]) pero no pudo quitarlo cuando la aplicación web se paró. Los hilos se van a renovar con el tiempo para intentar evitar in posible fallo de memoria.