I need to figure this out as this problem doesn't allow me to cast the
object either - after just sidestepping the instanceof issue I not get:

 

INFO  11:26:48,046 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) FederatorRunHandler: resultTo is
instanceof no.sesat.search.result.FacetedSearchResultImpl and false

INFO  11:26:48,046 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) FederatorRunHandler: resultFrom
is instanceof no.sesat.search.result.FacetedSearchResultImpl

INFO  11:26:48,046 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) FederatorRunHandler: Merging
navigators from endeca1 to globalSearch

DEBUG 11:26:48,046 [generic.sesam:8080/[Norwegian] pool-1-thread-1] ()
AbstractResourceLoader: Loading empty resource for
run-handler-control.jar!/no/sesat/search/result/FacetedSearchResult.clas
s

DEBUG 11:26:48,046 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) AbstractResourceLoader: abut(0ms)
for
jar:http://generic.sesam:8080/generic.sesam/lib/run-handler-control.jar!
/no/sesat/search/result/FacetedSearchResult.class

DEBUG 11:26:48,046 [generic.sesam:8080/[Norwegian] pool-1-thread-1] ()
AbstractResourceLoader: Loading empty resource for
run-handler-config.jar!/no/sesat/search/result/FacetedSearchResult.class

DEBUG 11:26:48,046 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) AbstractResourceLoader: abut(0ms)
for
jar:http://generic.sesam:8080/generic.sesam/lib/run-handler-config.jar!/
no/sesat/search/result/FacetedSearchResult.class

ERROR 11:26:48,062 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) RunningQueryImpl: Failure to run
query

java.lang.ClassCastException:
no.sesat.search.result.FacetedSearchResultImpl cannot be cast to
no.sesat.search.result.FacetedSearchResult

            at
no.sesat.search.run.handler.FederatorRunHandler.handleRunningQuery(Feder
atorRunHandler.java:90)

            at
no.sesat.search.run.RunningQueryImpl.performHandlers(RunningQueryImpl.ja
va:659)

            at
no.sesat.search.run.RunningQueryImpl.run(RunningQueryImpl.java:387)

            at
no.sesat.search.run.RunningWebQuery.run(RunningWebQuery.java:162)

            at
no.sesat.search.http.servlet.SearchServlet.performSearch(SearchServlet.j
ava:395)

            at
no.sesat.search.http.servlet.SearchServlet.doGet(SearchServlet.java:215)

            at
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

            at
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:290)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.MD5ProtectedParametersFilter.doFilter(MD5Pr
otectedParametersFilter.java:103)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.UserFilter.doFilter(UserFilter.java:92)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.DataModelFilter.doFilter(DataModelFilter.ja
va:147)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java
:164)

            at
org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)

            at
org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter
.java:90)

            at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFi
lter.java:417)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFi
lter.java:427)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.SiteLocatorFilter.doChainFilter(SiteLocator
Filter.java:439)

            at
no.sesat.search.http.filters.SiteLocatorFilter.doChainFilter(SiteLocator
Filter.java:408)

            at
no.sesat.search.http.filters.SiteLocatorFilter.doFilter(SiteLocatorFilte
r.java:237)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:233)

            at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:191)

            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:2
86)

            at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:84
5)

            at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:583)

            at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

            at java.lang.Thread.run(Thread.java:619)

ERROR 11:26:48,062 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) SiteLocatorFilter: Following
runtime exception was let loose in tomcat against 

ERROR 11:26:48,062 [localhost.com:8080/ http-8080-1]
(12dd6aea-94e0-4313-9c86-7bcae9cdfb87) SiteLocatorFilter:
java.lang.ClassCastException:
no.sesat.search.result.FacetedSearchResultImpl cannot be cast to
no.sesat.search.result.FacetedSearchResult

no.sesat.search.InfrastructureException: java.lang.ClassCastException:
no.sesat.search.result.FacetedSearchResultImpl cannot be cast to
no.sesat.search.result.FacetedSearchResult

            at
no.sesat.search.run.RunningQueryImpl.run(RunningQueryImpl.java:396)

            at
no.sesat.search.run.RunningWebQuery.run(RunningWebQuery.java:162)

            at
no.sesat.search.http.servlet.SearchServlet.performSearch(SearchServlet.j
ava:395)

            at
no.sesat.search.http.servlet.SearchServlet.doGet(SearchServlet.java:215)

            at
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

            at
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:290)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.MD5ProtectedParametersFilter.doFilter(MD5Pr
otectedParametersFilter.java:103)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.UserFilter.doFilter(UserFilter.java:92)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.DataModelFilter.doFilter(DataModelFilter.ja
va:147)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java
:164)

            at
org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)

            at
org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter
.java:90)

            at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFi
lter.java:417)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFi
lter.java:427)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
no.sesat.search.http.filters.SiteLocatorFilter.doChainFilter(SiteLocator
Filter.java:439)

            at
no.sesat.search.http.filters.SiteLocatorFilter.doChainFilter(SiteLocator
Filter.java:408)

            at
no.sesat.search.http.filters.SiteLocatorFilter.doFilter(SiteLocatorFilte
r.java:237)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

            at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:233)

            at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:191)

            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:2
86)

            at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:84
5)

            at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:583)

            at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

            at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.ClassCastException:
no.sesat.search.result.FacetedSearchResultImpl cannot be cast to
no.sesat.search.result.FacetedSearchResult

            at
no.sesat.search.run.handler.FederatorRunHandler.handleRunningQuery(Feder
atorRunHandler.java:90)

            at
no.sesat.search.run.RunningQueryImpl.performHandlers(RunningQueryImpl.ja
va:659)

            at
no.sesat.search.run.RunningQueryImpl.run(RunningQueryImpl.java:387)

            ... 40 more 

________________________________

From: [email protected]
[mailto:[email protected]] On Behalf Of Brian Frutchey
Sent: Friday, August 28, 2009 11:25 AM
To: [email protected]
Subject: classloader issue

 

I am modifying the no.sesat.search.run.handler.FederatorRunHandler to
merge navigators (facets) as well as results, and am doing an instanceof
comparison of SearchResult objects.  However, even when the two object
are of the same class/interface (FacetedSearchResult or
FacetedSearchResultImpl) the comparison is false.  The only reason I can
think of to cause this is that the classloader for each search command
is loading different copies of the same class, which makes the result
classes (though operationally the same) different in the eyes of
instanceof...

 

Thoughts?

 

Brian Frutchey

Federal Solutions Architect

M (703) 597-4875

E [email protected]

 

Endeca
2100 Reston Parkway Ste 101

Reston, VA 20171
www.endeca.com <http://www.endeca.com> 

 

 

find / analyze / understand

 

 

_______________________________________________
Kernel-development mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-development

Reply via email to