That makes it more difficult :-)

I checked my downloads of myfaces-api and myfaces-impl and tomahawk for
duplications - it was a long shot - but as expected no duplicates.

Try this - take out the myfaces-impl jar from the "WEB-INF/lib" because that
is where the duplicate entry is.  If it really is duplicate it should load
or give you some other error because the JSF version will be wrong.  But the
key is that the duplicate entry will be gone.  If that happens then you know
there is another entry somewhere.

I've also had times when I forgot that I put myfaces jars into a shared lib
directory.  Just for sanity - I would check that too.

Hope that helps,

-Jay

On 1/25/07, Leyzerzon, Simeon <[EMAIL PROTECTED]> wrote:

 Thank you for your answers.

I've put the suggested by Mike 
org.apache.myfaces.CHECK_EXTENSIONS_FILTERcontext-param tag in
the web.xml and it eliminated the previous errror, but introduced a
similar one on another component on the page (see below).

Jay, WebLogic version we are using is 8.1 and it doesn't include JSF for
sure (it didn't exist at the time it was released), I only have the jars I
mentioned before in the app, and I don't mix RI and myfaces, just myfaces
are used.

What we have is this stanza in weblogic.xml:

</jsp-descriptor>

<container-descriptor>

<prefer-web-inf-classes>true</prefer-web-inf-classes>

</container-descriptor>



and here are all the jars we have in web-inf/lib:

  ajax4jsf-1.0.6RC1.jar
  cglib-nodep-2.1_3.jar
  CLRCommons.jar
  commons-beanutils-1.7.0.jar
  commons-codec-1.3.jar
  commons-collections-3.2.jar
  commons-digester-1.7.jar
  commons-el-2.0.jar
  commons-fileupload-1.0.jar
  commons-httpclient-2.0.jar
  commons-javaflow-20060411.jar
  commons-lang-2.1.jar
  commons-logging-1.1.jar
  commons-logging-api-1.1.jar
  commons-validator-1.1.4.jar
  dom4j-1.6.1.jar
  DomainModel.jar
  hibernate-3.2.0.jar
  itext-1.3.1.jar
  jakarta-oro-2.0.7.jar
  jasperreports-1.3.0.jar
  jaxen-1.1-beta-7.jar
  jdom.jar
  jdt-compiler-3.1.1.jar
  jsp-api.jar
  jstl.jar
  jxl-2.6.jar
  log4j-1.2.13.jar
  myfaces-api-1.1.4.jar
  myfaces-impl-1.1.4.jar
  oscache-2.3.2.jar
  png-encoder-1.5.jar
  poi-2.0-final-20040126.jar
  Security.jar
  servlet-api.jar
  spring-2.0-rc4.jar
  standard.jar
  tomahawk-1.1.3.jar


Here is the error:

<Jan 25, 2007 3:43:15 PM EST> <Error> <HTTP> <BEA-101017>
<[ServletContext(id=88
06925,name=GISWeb,context-path=/GISWeb)] Root cause of ServletException.
*javax.faces.FacesException: duplicate class definition:
org/apache/myfaces/tagli
b/core/ValidateLongRangeTag*
        at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc
h(ServletExternalContextImpl.java:422)
        at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:234)
        at org.ajax4jsf.framework.ViewHandlerWrapper.renderView
(ViewHandlerWrapp
er.java:101)
        at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView
(AjaxViewHandle
r.java:222)
        at org.apache.myfaces.lifecycle.LifecycleImpl.render(
LifecycleImpl.java:
384)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        at org.apache.myfaces.webapp.MyFacesServlet.service(
MyFacesServlet.java:
74)
        at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:971)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet
(ServletStubIm
pl.java:402)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java
:28)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.ja
va:27)
        at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter
(Extensions
Filter.java:144)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.ja
va:27)
        at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter
(BaseX
MLFilter.java:75)
        at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter
(BaseFilter.
java:213)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.ja
va:27)
        at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:6356)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs
(Authenticate
dSubject.java:317)
        at weblogic.security.service.SecurityManager.runAs(
SecurityManager.java:
118)
        at weblogic.servlet.internal.WebAppServletContext.invokeServlet
(WebAppSe
rvletContext.java:3635)
        at weblogic.servlet.internal.ServletRequestImpl.execute
(ServletRequestIm
pl.java:2585)
        at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
        at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Caused by: javax.servlet.ServletException: duplicate class definition:
org/apach
e/myfaces/taglib/core/ValidateLongRangeTag
        at weblogic.servlet.internal.RequestDispatcherImpl.forward
(RequestDispat
cherImpl.java:323)
        at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc

Appreciate any additional help!!!
Simeon

 ------------------------------
*From:* Jay Balunas [mailto:[EMAIL PROTECTED]
*Sent:* Thursday, January 25, 2007 3:00 PM
*To:* MyFaces Discussion
*Subject:* Re: duplicate class definition exception

Hello,

I have gotten this exception when I have multiple tomahawk jars, or jsf
jars (RI or myfaces) in the classpath.

I originally got this issue when using jboss and a war file that packaged
the MyFaces jars.  The classloader is basically finding two instances of the
class, and not able to determine which to use.  This may also be a check in
JSF itself - I'm not sure.

I would check if web logic packages a JSF implementation,  If so the only
way I found to get around it was to update the rev in JBoss to the one I
wanted and not include my own in my war.  If this is not an option I think
you'll have to remove the jsf jars from web logic.

Hope this helps,
Jay

On 1/25/07, Mike Kienenberger <[EMAIL PROTECTED]> wrote:
>
> Don't know for sure, but you can start by adding the web.xml
> org.apache.myfaces.CHECK_EXTENSIONS_FILTER context-param to get rid of
> the warning.
>
> Typically if you have a duplicate class issue, it's because you have
> two copies of the jar file, possibly with different versions, in your
> path somewhere.   I think the class in question is part of
> myfaces-impl.jar.   Make sure you don't have any old version jars like
> myfaces-all or myfaces-shared in your path as well.
>
> On 1/25/07, Leyzerzon, Simeon <[EMAIL PROTECTED]>
> wrote:
> >
> >
> >
> > Hi,
> > We are trying to trace the root cause of the following run-time
> exception
> > which seems to be happening every time the server gets restarted and a
> link
> > in the application gets clicked.  We use Weblogic 8.1 sp2 with the
> following
> > myFaces jars:
> >
> >         myfaces-api-1.1.4.jar
> >         myfaces-impl-1.1.4.jar
> >         tomahawk.jar-1.1.3.jar
> > Has anyone experiensed this error? Any suggestions on how to prevent
> it from
> > happening?
> >
> > 10:44:58,068 INFO MyfacesConfig:133 - No context init parameter
> > 'org.apache.myf
> >  aces.CHECK_EXTENSIONS_FILTER' found, using default value true
> >  <Jan 25, 2007 10:44:58 AM EST> <Error> <HTTP> <BEA-101017>
> > <[ServletContext(id=3
> >  1984775,name=GISWeb,context-path=/GISWeb)] Root cause of
> > ServletException.
> >  javax.faces.FacesException: duplicate class definition:
> > org/apache/myfaces/tagli
> >  b/html/HtmlSelectOneMenuTag
> >  at
> > org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc
> >  h(ServletExternalContextImpl.java:422)
> >  at
> > org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView (JspV
> >  iewHandlerImpl.java:234)
> >  at
> > org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
> >  er.java:101)
> >  at
> > org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView (AjaxViewHandle
> >  r.java:222)
> >  at
> > org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:
> >  384)
> >  at
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
> >  at
> > org.apache.myfaces.webapp.MyFacesServlet.service(MyFacesServlet.java:
> >  74)
> >  at
> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
> >  (ServletStubImpl.java :971)
> >  at
> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
> >  pl.java:402)
> >  at
> > weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >  at
> > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.ja
> >  va:27)
> >  at
> > org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(Extensions
> >  Filter.java:144)
> >  at
> > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.ja
> >  va:27)
> >  at
> > org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseX
> >  MLFilter.java:75)
> >  at
> > org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.
> >  java:213)
> >  at
> > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.ja
> >  va:27)
> >  at
> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
> >  n.run(WebAppServletContext.java:6356)
> >  at
> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
> >  dSubject.java:317)
> >  at
> > weblogic.security.service.SecurityManager.runAs (SecurityManager.java:
> >  118)
> >  at
> > weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
> >  rvletContext.java:3635)
> >  at
> > weblogic.servlet.internal.ServletRequestImpl.execute (ServletRequestIm
> >  pl.java:2585)
> >  at
> > weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
> >  at
> > weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
> >
> >
> > Thank you in advance for help.
> >
> > Simeon Leyzerzon
> >
> >
> ==============================================================================
> > Please access the attached hyperlink for an important electronic
> > communications disclaimer:
> >
> > http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html
> >
> ==============================================================================
>
> >
> >
> >
> >
>

==============================================================================
Please access the attached hyperlink for an important electronic communications 
disclaimer:

http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html
==============================================================================


Reply via email to