I wouldn't remove it from the Tomcat config either. Removing it is purely a
treatement to the problem, not a solution. I think we should just attack the
problem and figure out what its getting this error to begin with.
This seems to be a classloader issue of some form. Has anyone who worked
with the console taken this issue (I am assuming there is a JIRA attached to
it)?
Jeff
________________________________
From: Vamsavardhana Reddy [mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 08, 2005 6:59 AM
To: [email protected]
Subject: Re: Help ... proxy problem with tomcat web connectors
Jeff,
I do not mean to suggest to knock-off Tomcat HTTPS Connectors
altogether. Ofcourse, we CANNOT remove Tomcat HTTPS Connectors. I only
suggested to remove the Tomcat HTTPS Connectors from the configuration while
getting any additional functionality up and running. Just to give an
example, I was updating the Web Servers portlet to list Tomcat Web
Connectors and I was getting blocked by this exception before I could test
any of the code updates to the portlet. I realized that I could test my
portlet if I removed the Tomcat HTTPS Connector from the configuration
temporarily. My suggestion was in similar lines.
On 11/8/05, Jeff Genender <[EMAIL PROTECTED]> wrote:
I am sorry, but if I understand correctly, this is an issue
with the console
not the connector. The Tomcat HTTPS connector runs fine as
it serves SSL
without any issue. I don't think we will remove this
connector as it will
remove SSL capabilities with Tomcat and also remove its J2EE
certification.
Jeff
________________________________
From: Vamsavardhana Reddy
[mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 08, 2005 6:12 AM
To: [email protected]
<mailto:[email protected]>
Subject: Re: Help ... proxy problem with tomcat web
connectors
I guess TomcatWebSSLConnector is having problems. I
have hit upon
this error while trying to list the Tomcat Web Connectors.
See the thread
http://mail-archives.apache.org/mod_mbox/geronimo-dev/200510.mbox/%3cBAY103-
[EMAIL PROTECTED]
I suggest to remove the Tomcat HTTPS Connector from
the Tomcat
configuration for now and build rest of the code.
On 10/31/05, Joe Bohn <[EMAIL PROTECTED] >
wrote:
Well I've figured out a way around this
problem but I can't
for the life
of me explain why it eliminates the problem.
This may even
be a problem
in CGLib but this work around at least avoids
it for now.
It seems to be a problem with the selection
of the class
loader.
Here's the class/interface configuration with
the problem:
- We currently have defined 2 interfaces that
both extend
from a common
interface (say A and B that extend from Z).
An
implementation
class(IA) implements one of the
interfaces(A). Another
implementation
class(IB) extends IA and implements B.
- When we attempt to create a proxy for the
GBean object, we
get the
NoClassDefFoundError exception in the
original post while
attempting to
load the interface A.
I took a look at Jetty(which isn't hitting
this problem) and
the only
difference appeared to be another
interface(C) that is in
the same
package as B between the interface B and the
class IB (which
is really
strange because A was the interface pointed
to by the error
... not B).
After rebuilding I no longer get the
NoClassDefFoundError
exception.
Anybody have an explanation or theory on
this?
Does somebody with more experience on CGLib
think it's
likely a problem
there?
Joe Bohn wrote:
> I'm trying to fix a problem with in the web
console where
it is supposed
> to list the connections ... but instead
gets an error (at
the bottom of
> this note).
>
> It seems to be a problem actually
generating the proxy for
the class and
> I lose touch of things when it gets into
cglib.
>
> In short ... here is the scenario:
> - Discover via the KernelManagementHelper
that there are 3
connections
> and gets the object the names of those
connections
> - TomcatAJPConnector (class is
ConnectorGBean)
> - TomcatWebConnector (class is
ConnectorGBean)
> - TomcatWebSSLConnector (class is
HttpsConnectorGBean)
> - Attempt to create proxies for the 3
connections. This
works for for
> the first two listed about but fails
building the proxy
for the
> TomcatWebSSLConnector GBean.
> - Looking at the BasicProxyManager I can
see it creating
the Enhancer
> and associating all of the interfaces.
This GBean has 5
interfaces
> which are reduced to 3 in the
ManagedProxyFactory (the
ones with the *
> are the ones that remain after reduction)
> -
o.a.g.management.geronimo.NetworkConnector
> *
o.a.g.management.geronimo.SecureConnector
> * o.a.g.tomcat.TomcatWebConnector
> - o.a.g.management.WebConnector
> *
o.a.g.kernel.proxy.GeronimoManagedBean
> - These remaining 3 interfaces are used to
set the
Enhanced interfaces
> (which seems strange to me because I would
think that we
would have
> wanted all 5 interfaces in the proxy ... is
this a
problem?) and, since
No, this interface reduction is doing it's
job to ensure
that we have
the least number of interfaces while still
representing all
of the
object's capabilities.
> there is more than 1 interface left, Object
is set as the
superClass.
> - When we finally invoke the
enhancer.createClass() we get
a
> NoClassDefFoundError exception for the
TomcatWebConnector
interface.
> This is also strange because at lease one
of the other
connector GBeans
> (TomcatWebConnector) also implements this
interface and it
was
> successful creating that proxy.
>
> Any ideas?
>
> stack trace:
> 08:52:55,740 ERROR
[KernelManagementHelper] Unable to
look up related
>
GBeannet.sf.cglib.core.CodeGenerationException:
>
java.lang.reflect.InvocationTargetException-->null
> at
>
net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:
237)
>
> at
net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377)
> at
net.sf.cglib.proxy.Enhancer.createClass
(Enhancer.java:317)
> at
>
org.apache.geronimo.kernel.basic.BasicProxyManager$ManagedProxyFactory.<init
>(BasicProxyManager.java :222)
>
> at
>
org.apache.geronimo.kernel.basic.BasicProxyManager.createProxyFactory
(BasicProxyManager.java:92)
>
> at
>
org.apache.geronimo.kernel.basic.BasicProxyManager.createProxy(BasicProxyMan
ager.java:119)
>
> at
>
org.apache.geronimo.kernel.basic.BasicProxyManager.createProxies
(BasicProxyManager.java:156)
>
> at
>
org.apache.geronimo.console.util.KernelManagementHelper.getWebConnectors(Ker
nelManagementHelper.java:339)
>
> at
>
org.apache.geronimo.console.util.PortletManager.getWebConnectors
(PortletManager.java:150)
>
> at
>
org.apache.geronimo.console.webmanager.ConnectorPortlet.doList(ConnectorPort
let.java:375)
>
> at
>
org.apache.geronimo.console.webmanager.ConnectorPortlet.doView
(ConnectorPortlet.java:360)
>
> at
javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:247)
> at
javax.portlet.GenericPortlet.render
(GenericPortlet.java:175)
> at
>
org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:218)
> at
>
org.apache.pluto.core.PortletServlet.doGet
(PortletServlet.java:158)
> at
javax.servlet.http.HttpServlet.service
(HttpServlet.java:595)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(Application
FilterChain.java:252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java :173)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
java:672)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java :574)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.include
(ApplicationDispatcher
.java:499)
>
> at
>
org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.j
ava :120)
>
> at
>
org.apache.pluto.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.j
ava:73)
>
> at
>
org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.jav
a :119)
>
> at
>
org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.renderPortlet
(P
ortletContainerWrapperImpl.java:70)
>
> at
>
org.apache.pluto.portalImpl.aggregation.PortletFragment.service
(PortletFragment.java:168)
>
> at
>
org.apache.jsp.WEB_002dINF.aggregation.ColumnFragment_jsp._jspService(org.ap
ache.jsp.WEB_002dINF.aggregation.ColumnFragment_jsp:65)
>
> at
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:322)
>
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
> at
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java
:241)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java :252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:173)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
java :672)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude
(ApplicationDispatch
er.java:574)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher
.java :499)
>
> at
>
org.apache.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFra
gment.java:112)
>
> at
>
org.apache.jsp.WEB_002dINF.aggregation.RowFragment_jsp._jspService
(org.apache.jsp.WEB_002dINF.aggregation.RowFragment_jsp:64)
>
> at
>
org.apache.jasper.runtime.HttpJspBase.service
(HttpJspBase.java:97)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java
:688)
> at
>
org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:3
22)
>
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
> at
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterCh
ain.java:173)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.invoke
(ApplicationDispatcher.java:672)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java:574)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.include
(ApplicationDispatcher.java:499)
>
> at
>
org.apache.pluto.portalImpl.aggregation.AbstractFragment.service
(AbstractFra
gment.java:112)
>
> at
>
org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp._jspService
(org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp:67
)
>
> at
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
> at
javax.servlet.http.HttpServlet.service (
HttpServlet.java:688)
> at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3
22)
>
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java :291)
> at
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java
:241)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:173)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.invoke
(ApplicationDispatcher.java:672)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java:574)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.include
(ApplicationDispatcher.java:499)
>
> at
>
org.apache.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFra
gment.java:112)
>
> at
>
org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp._jspService
(org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp:67)
>
> at
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
> at
javax.servlet.http.HttpServlet.service(
HttpServlet.java:688)
> at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3
22)
>
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java :291)
> at
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
> at
javax.servlet.http.HttpServlet.service
(HttpServlet.java:688)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:173)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.invoke
(ApplicationDispatcher.java:672)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java:574)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.include
(ApplicationDispatcher.java:499)
>
> at
>
org.apache.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFra
gment.java:112)
>
> at
>
org.apache.jsp.WEB_002dINF.aggregation.RootFragment_jsp._jspService
(org.apache.jsp.WEB_002dINF.aggregation.RootFragment_jsp:170)
>
> at
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
> at
javax.servlet.http.HttpServlet.service
(HttpServlet.java:688)
> at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3
22)
>
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java :291)
> at
>
org.apache.jasper.servlet.JspServlet.service
(JspServlet.java:241)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:173)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.invoke
(ApplicationDispatcher.java:672)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java:574)
>
> at
>
org.apache.catalina.core.ApplicationDispatcher.include
(ApplicationDispatcher.java:499)
>
> at
>
org.apache.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFra
gment.java:112)
>
> at
org.apache.pluto.portalImpl.Servlet.doGet
(Servlet.java:254)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:595)
> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java :252)
>
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:173)
>
> at
>
org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:213)
>
> at
>
org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.ja
va:178)
>
> at
>
org.apache.catalina.authenticator.AuthenticatorBase.invoke
(AuthenticatorBase.java:482)
>
> at
>
org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectVa
lve.java:46)
>
> at
>
org.apache.geronimo.tomcat.valve.PolicyContextValve.invoke
(PolicyContextValve.java:50)
>
> at
>
org.apache.geronimo.tomcat.valve.TransactionContextValve.invoke
(TransactionC
ontextValve.java:53)
>
> at
>
org.apache.geronimo.tomcat.valve.ComponentContextValve.invoke
(ComponentContextValve.java:47)
>
> at
>
org.apache.geronimo.tomcat.valve.InstanceContextValve.invoke(InstanceContext
Valve.java:60)
>
> at
>
org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:126)
>
> at
>
org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:105
)
>
> at
>
org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:107)
>
> at
>
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:526)
> at
>
org.apache.catalina.connector.CoyoteAdapter.service
(CoyoteAdapter.java :148)
> at
>
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
> at
>
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java :744)
>
> at
>
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket
(PoolTcpEndpoint.jav
a:527)
>
> at
>
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo
rkerThread.java :80)
>
> at
>
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:684)
>
> at java.lang.Thread.run
(Thread.java:534)
> Caused by:
java.lang.reflect.InvocationTargetException
> at
sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
>
> at java.lang.reflect.Method.invoke
(Method.java :324)
> at
>
net.sf.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:384)
> at
>
net.sf.cglib.core.AbstractClassGenerator.create
(AbstractClassGenerator.java:
219)
>
> ... 116 more
> Caused by: java.lang.NoClassDefFoundError:
>
org/apache/geronimo/tomcat/TomcatWebConnector
> at
java.lang.ClassLoader.defineClass0(Native
Method)
> at
java.lang.ClassLoader.defineClass(ClassLoader.java:539)
>
>
--
Joe Bohn
[EMAIL PROTECTED]
"He is no fool who gives what he cannot keep,
to gain what
he cannot
lose." -- Jim Elliot