I am trying to run a seam application using primefaces within Tomcat 7.0.47 and I keep getting this

WARNING: uncaught exception, passing to exception handler
java.lang.IllegalStateException: No phase id bound to current thread (make sure you do not    have two SeamPhaseListener instances installed)
at org.jboss.seam.contexts.PageContext.getPhaseId(PageContext.java:163)
at org.jboss.seam.contexts.PageContext.isBeforeInvokeApplicationPhase(PageContext.java:175)
at org.jboss.seam.contexts.PageContext.getCurrentWritableMap(PageContext.java:91)
at org.jboss.seam.contexts.PageContext.remove(PageContext.java:105)
at org.jboss.seam.Component.newInstance(Component.java:2205)
at org.jboss.seam.Component.getInstance(Component.java:2034)
at org.jboss.seam.Component.getInstance(Component.java:2013)
at org.jboss.seam.Component.getInstance(Component.java:2007)
at org.jboss.seam.Component.getInstance(Component.java:1980)
at org.jboss.seam.Component.getInstance(Component.java:1975)
at org.jboss.seam.faces.FacesPage.instance(FacesPage.java:92)
at org.jboss.seam.core.ConversationPropagation.restorePageContex

I am using IntelliJ ide, also tried eclipse to no avail. What can I do?

1

There are 1 answers

0
Andrew Judson On

I also encountered this issue.

It is caused by Tomcat 7 loading listeners twice. (Tomcat 6, it used to warn about listeners trying to load twice and disregard them.. You could use this to warn you about which listener is reloading)..

In my case it was in my web.xml

<listener>
    <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>

During my investigation it appears that this isn't required in web.xml as it is loaded elsewhere via another mechanism.

Hopefully this helps you.

~Andrew J