Sreenath
Sreenath

Reputation: 23

Warning: This page calls for XML namespace http://richfaces.org/rich declared with prefix rich but no taglibrary exists for that namespace

I have the following code in my Facelet:

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:rich="http://richfaces.org/rich"
    xmlns:ui="http://java.sun.com/jsf/facelets">
    <h:form>
        <h:panelGrid columns="1">
            <rich:paint2D id="painter" width="300" height="120"
                data="#{paintData}" format="png" paint="#{paintBean.paint}" >
            </rich:paint2D>
            <h:panelGroup> 
                <h:outputText value="Change text color " />
                <rich:colorPicker colorMode="hex" value="#{paintData.color}">
                    <a4j:support event="onchange" reRender="painter"/>
                </rich:colorPicker>
            </h:panelGroup>
        </h:panelGrid>
    </h:form>
</html>

And I have the following jars in my /lib folder:

  1. richfaces-api-3.3.3.Final.jar
  2. richfaces-ui-3.3.3.Final.jar
  3. richfaces-impl-3.3.3.Final.jar

In UI I am getting the following message:

Warning: This page calls for XML namespace http://richfaces.org/rich declared with prefix rich but no taglibrary exists for that namespace.

And in console I got the following exception:

SEVERE: Error configuring application listener of class com.sun.faces.config.ConfigureListener
java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener

How is this caused and how can I solve it?

Upvotes: 2

Views: 3862

Answers (1)

BalusC
BalusC

Reputation: 1108567

java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener

The JSF implementation itself is missing in runtime classpath. You seem to have explicitly configured a

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

in your web.xml while not having Mojarra installed.

Download and install Mojarra. Older versions are composed of jsf-api.jar and jsf-impl.jar files and newer versions (since 2.0.9/2.1.6) exist of a single javax.faces.jar file. Note that RichFaces 3.x implementation is by default not JSF 2.x compatible. You need to have a JSF 2.x compatible build richfaces-impl-jsf2-3.3.3.Final.jar. See also JBoss Wiki on the subject.

Upvotes: 2

Related Questions