Hello Aaron, Thanks for your quick response.
That was the problem! I used option #2 in your email and now I can successfully add the listener. Thanks again, Burt > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:owner-hackystat-dev- > [EMAIL PROTECTED] On Behalf Of Aaron Kagawa > Sent: Friday, November 12, 2004 1:07 AM > To: [EMAIL PROTECTED] > Subject: [HACKYSTAT-DEV-L:285] Re: Error using TwoKeyCache > > here are my suggestions based on my really quick investigation (therefore, > I'm not sure how credible this is). > > check the jar files to see if the CopyOnWriteArrayList class is in > there. I did a quick check and I don't see it in the sensorshell.jar. If > this is the case you have two choices: (1) some how add the concurrent > package to the sensorshell.jar or sensor.jira.jar or (2) add the > concurrent > jar file to JIRA along with sensorshell.jar and sensor.jira.jar. > > thanks, aaron > > At 12:43 AM 11/12/2004 -1000, you wrote: > >Hello Everyone, > > > >Some weeks ago the decision was made that using a TwoKeyCache would be a > >better idea than using the ToolAccount object for the Jira sensor. > > > >I've refactored the sensor and placed the sensorshell.jar and > >sensor.jira.jar in Jira's library folder. When I try to add the > >sensor/listener from the Administration panel of Jira I get the error I > >mentioned during our discussion (see below). > > > >It has to do with using the TwoKeyCache. What could be the cause of the > >error? > > > >Thank you! > >Burt > > > >Could not execute action > >[ViewListeners]:EDU/oswego/cs/dl/util/concurrent/CopyOnWriteArrayList<p>< > sma > >ll><small><pre>java.lang.NoClassDefFoundError: > >EDU/oswego/cs/dl/util/concurrent/CopyOnWriteArrayList at > >org.hackystat.kernel.cache.ThreeKeyCache.<clinit>(ThreeKeyCache.java:44) > at > >org.hackystat.kernel.cache.TwoKeyCache.<init>(TwoKeyCache.java:21) at > >org.hackystat.kernel.sensor.usermap.UserMap.<init>(UserMap.java:36) at > >org.hackystat.kernel.sensor.usermap.SensorShellMap.<init>(SensorShellMap. > jav > >a:46) at > >org.hackystat.stdext.sensor.jira.JiraSensor.init(JiraSensor.java:129) at > >com.atlassian.jira.event.ListenerFactory.getListener(ListenerFactory.java > :31 > >) at > >com.atlassian.jira.event.DefaultListenerManager.loadListeners(DefaultList > ene > >rManager.java:71) at > >com.atlassian.jira.event.DefaultListenerManager.refresh(DefaultListenerMa > nag > >er.java:35) at > >com.atlassian.jira.action.admin.ListenerCreate.execute(ListenerCreate.jav > a:2 > >4) at > >webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java > :13 > >1) at > >com.atlassian.core.action.DefaultActionDispatcher.execute(DefaultActionDi > spa > >tcher.java:34) at > >com.atlassian.jira.web.action.admin.ViewListeners.doExecute(ViewListeners > .ja > >va:120) at webwork.action.ActionSupport.execute(ActionSupport.java:151) > at > >com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.jav > a:4 > >6) at > >webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java > :13 > >1) at > >com.atlassian.jira.web.dispatcher.JiraServletDispatcher.service(JiraServl > etD > >ispatcher.java:186) at > >javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:247) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.j > ava > >:142) at > >com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.ja > va: > >58) at > >com.atlassian.jira.web.filters.SitemeshExcludePathFilter.doFilter(Sitemes > hEx > >cludePathFilter.java:36) at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:1 > 68) > >at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:181) at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFi > lte > >r.java:132) at > >com.atlassian.jira.web.filters.ProfilingAndErrorFilter.doFilter(Profiling > And > >ErrorFilter.java:25) at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.jira.web.filters.ActionCleanupDelayFilter.doFilter(ActionCl > ean > >upDelayFilter.java:37) at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:9 > 1) > >at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.jira.web.filters.gzip.GzipFilter.doFilter(GzipFilter.java:7 > 2) > >at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodi > ngF > >ilter.java:36) at > >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat > ion > >FilterChain.java:213) at > >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte > rCh > >ain.java:193) at > >org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve > .ja > >va:256) at > >org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in > vok > >eNext(StandardPipeline.java:643) at > >org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48 > 0) > >at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > >org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve > .ja > >va:191) at > >org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in > vok > >eNext(StandardPipeline.java:643) at > >org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48 > 0) > >at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > >org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417 > ) > >at > >org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java: > 180 > >) at > >org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in > vok > >eNext(StandardPipeline.java:643) at > >org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVal > ve. > >java:171) at > >org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in > vok > >eNext(StandardPipeline.java:641) at
