Java Mailing List Archive

http://www.gg3721.com/

Home » users.tapestry »

ClassCastException for objects of the same class

digital boy

2008-11-10

Replies: Find Java Web Hosting

Author LoginPost Reply
Hi,I am rather new to Hibernate, Spring and Tapestry. So I do not
know/understand where exactly my current problem arises from. My guess is,
that Tapestry complains (as seen in the exception stack trace)
I want to create a tag cloud component for Tapestry. In order to retrieve
tag data for this component, I wrote a TagManager (Spring) which then
utilizes a TagDAO (Hibernate) in order to access the tags stored in my
database model. For creating the tag cloud, I need a kind of weight which
represents the number of occurrences of a certain tag. This is why I created
a bean named WeightedTag. This bean is used with a ResultTransformer that
passes all the query results into the right objects. Debugging output in the
TagDAO class shows me, that this whole thing works. All the tag names and
their weight are in the appropriate fields of the WeightedTag objects.

The actual problem arises, when the component gets this List of WeightedTags
List<WeightedTag>. For whatsoever reason this component throws an Exception
with the following stack trace which I do not understand. The root cause
seems to be a ClassCastException for Objects of the very same class. I tried
all kinds of variations already. None of them worked.

So is this a bug, a feature or just my limited java skills?

Cheers,
Martin

Here is the stack trace:

org.apache.tapestry5.ioc.internal.util.TapestryException:
xxx.xxxx.base.WeightedTag
cannot be cast to xxx.xxxx.base.WeightedTag [at
classpath:xxx/xxxx/components/TagCloud.tml, line 7, column 107]
at
org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:57)
at
org.apache.tapestry5.internal.structure.ExpansionPageElement.render(ExpansionPageElement.java:47)
at
org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:68)
at
org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:108)
at $PageRenderQueue_11d87265edc.render($PageRenderQueue_11d87265edc.java)
at $PageRenderQueue_11d87265ed5.render($PageRenderQueue_11d87265ed5.java)
at
org.apache.tapestry5.services.TapestryModule$14.renderMarkup(TapestryModule.java:1128)
at
org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1472)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
org.apache.tapestry5.services.TapestryModule$22.renderMarkup(TapestryModule.java:1453)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
org.apache.tapestry5.services.TapestryModule$21.renderMarkup(TapestryModule.java:1435)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
org.apache.tapestry5.services.TapestryModule$20.renderMarkup(TapestryModule.java:1415)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
$MarkupRenderer_11d87265eda.renderMarkup($MarkupRenderer_11d87265eda.java)
at
org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:55)
at
$PageMarkupRenderer_11d87265ed8.renderPageMarkup($PageMarkupRenderer_11d87265ed8.java)
at
org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:57)
at
$PageResponseRenderer_11d87265e68.renderPageResponse($PageResponseRenderer_11d87265e68.java)
at
org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:59)
at
org.apache.tapestry5.services.TapestryModule$28.handle(TapestryModule.java:1672)
at
$PageRenderRequestHandler_11d87265e69.handle($PageRenderRequestHandler_11d87265e69.java)
at
$PageRenderRequestHandler_11d87265e5d.handle($PageRenderRequestHandler_11d87265e5d.java)
at
org.apache.tapestry5.internal.services.PageRenderDispatcher.process(PageRenderDispatcher.java:97)
at
org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:83)
at $Dispatcher_11d87265e64.dispatch($Dispatcher_11d87265e64.java)
at $Dispatcher_11d87265e55.dispatch($Dispatcher_11d87265e55.java)
at
org.apache.tapestry5.services.TapestryModule$12.service(TapestryModule.java:938)
at
org.apache.tapestry5.internal.services.LocalizationFilter.service(LocalizationFilter.java:42)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:586)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:79)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:93)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:84)
at
org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:75)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at $RequestHandler_11d87265e4e.service($RequestHandler_11d87265e4e.java)
at
org.apache.tapestry5.services.TapestryModule$11.service(TapestryModule.java:918)
at
org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
at
$HttpServletRequestHandler_11d87265e4f.service($HttpServletRequestHandler_11d87265e4f.java)
at
org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
at
$HttpServletRequestFilter_11d87265e4d.service($HttpServletRequestFilter_11d87265e4d.java)
at
$HttpServletRequestHandler_11d87265e4f.service($HttpServletRequestHandler_11d87265e4f.java)
at
$HttpServletRequestHandler_11d87265e4b.service($HttpServletRequestHandler_11d87265e4b.java)
at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:168)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:175)
at
org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:102)
at
org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:263)
at
org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: xxx.xxxx.base.WeightedTag cannot be
cast to xxx.xxxx.base.WeightedTag
at xxx.xxxx.components.TagCloud.getTags(TagCloud.java:65)
at $PropertyConduit_11d87265ef2.get($PropertyConduit_11d87265ef2.java)
at
org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:53)
... 62 more
10-11-2008 17:08:51:434 9   ERROR
org.apache.tapestry5.services.TapestryModule.RequestExceptionHandler -
Processing of request failed with uncaught exception: Render queue error in
Expansion[PropBinding[expansion
Index:tagcloud(tags)]]: xxx.xxxx.base.WeightedTag cannot be cast
to xxx.xxxx.base.WeightedTag
org.apache.tapestry5.internal.services.RenderQueueException: Render queue
error in Expansion[PropBinding[expansion
Index:tagcloud(tags)]]: xxx.xxxx.base.WeightedTag cannot be cast
to xxx.xxxx.base.WeightedTag [at classpath:xxx/xxxx/components/TagCloud.tml,
line 7, column 107]
at
org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:80)
at
org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:108)
at $PageRenderQueue_11d87265edc.render($PageRenderQueue_11d87265edc.java)
at $PageRenderQueue_11d87265ed5.render($PageRenderQueue_11d87265ed5.java)
at
org.apache.tapestry5.services.TapestryModule$14.renderMarkup(TapestryModule.java:1128)
at
org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1472)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
org.apache.tapestry5.services.TapestryModule$22.renderMarkup(TapestryModule.java:1453)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
org.apache.tapestry5.services.TapestryModule$21.renderMarkup(TapestryModule.java:1435)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
org.apache.tapestry5.services.TapestryModule$20.renderMarkup(TapestryModule.java:1415)
at
$MarkupRenderer_11d87265ede.renderMarkup($MarkupRenderer_11d87265ede.java)
at
$MarkupRenderer_11d87265eda.renderMarkup($MarkupRenderer_11d87265eda.java)
at
org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:55)
at
$PageMarkupRenderer_11d87265ed8.renderPageMarkup($PageMarkupRenderer_11d87265ed8.java)
at
org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:57)
at
$PageResponseRenderer_11d87265e68.renderPageResponse($PageResponseRenderer_11d87265e68.java)
at
org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:59)
at
org.apache.tapestry5.services.TapestryModule$28.handle(TapestryModule.java:1672)
at
$PageRenderRequestHandler_11d87265e69.handle($PageRenderRequestHandler_11d87265e69.java)
at
$PageRenderRequestHandler_11d87265e5d.handle($PageRenderRequestHandler_11d87265e5d.java)
at
org.apache.tapestry5.internal.services.PageRenderDispatcher.process(PageRenderDispatcher.java:97)
at
org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:83)
at $Dispatcher_11d87265e64.dispatch($Dispatcher_11d87265e64.java)
at $Dispatcher_11d87265e55.dispatch($Dispatcher_11d87265e55.java)
at
org.apache.tapestry5.services.TapestryModule$12.service(TapestryModule.java:938)
at
org.apache.tapestry5.internal.services.LocalizationFilter.service(LocalizationFilter.java:42)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:586)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:79)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:93)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:84)
at
org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:75)
at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106)
at $RequestHandler_11d87265e56.service($RequestHandler_11d87265e56.java)
at $RequestHandler_11d87265e4e.service($RequestHandler_11d87265e4e.java)
at
org.apache.tapestry5.services.TapestryModule$11.service(TapestryModule.java:918)
at
org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
at
$HttpServletRequestHandler_11d87265e4f.service($HttpServletRequestHandler_11d87265e4f.java)
at
org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
at
$HttpServletRequestFilter_11d87265e4d.service($HttpServletRequestFilter_11d87265e4d.java)
at
$HttpServletRequestHandler_11d87265e4f.service($HttpServletRequestHandler_11d87265e4f.java)
at
$HttpServletRequestHandler_11d87265e4b.service($HttpServletRequestHandler_11d87265e4b.java)
at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:168)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:175)
at
org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:102)
at
org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:263)
at
org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by:
org.apache.tapestry5.ioc.internal.util.TapestryException:
xxx.xxxx.base.WeightedTag
cannot be cast to xxx.xxxx.base.WeightedTag [at
classpath:xxx/xxxx/components/TagCloud.tml, line 7, column 107]
at
org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:57)
at
org.apache.tapestry5.internal.structure.ExpansionPageElement.render(ExpansionPageElement.java:47)
at
org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:68)
... 60 more
Caused by: java.lang.ClassCastException: xxx.xxxx.base.WeightedTag cannot be
cast to xxx.xxxx.base.WeightedTag
at xxx.xxxx.components.TagCloud.getTags(TagCloud.java:65)
at $PropertyConduit_11d87265ef2.get($PropertyConduit_11d87265ef2.java)
at
org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:53)
... 62 more
©2008 gg3721.com - Jax Systems, LLC, U.S.A.