[
https://jira.duraspace.org/browse/DS-785?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18451#action_18451
]
Kim Shepherd commented on DS-785:
---------------------------------
Update: I can reproduce Keiji's exact error by ensuring that 'discovery' is
*replacing* search in the list of event consumers rather than just adding it to
the list.
So replacing search with discovery will ensure that KernelManager is loaded,
but then fails at slf4j init when trying to access the SINGLETON field.
According to the slf4j FAQ, the SINGLETON field is private (and accessing it
throws this IllegalAccessError) in versions 1.5.6+.
Link to full discussion of error on the slf4j FAQ:
http://www.slf4j.org/faq.html#IllegalAccessError
dspace-solr module does indeed include version 1.5.6 of slf4j:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.5.6</version>
</dependency>
We either need to roll back to slf4j or update code to handle the change in
access to org.slf4j.impl.StaticLoggerBinder
> SWORD deposits fail when ingest events are fired if Discovery event consumer
> is configured
> ------------------------------------------------------------------------------------------
>
> Key: DS-785
> URL: https://jira.duraspace.org/browse/DS-785
> Project: DSpace
> Issue Type: Bug
> Components: DSpace API, SWORD
> Affects Versions: 1.7.0
> Reporter: Kim Shepherd
> Priority: Major
>
> If "discovery" is configured in the dspace.cfg property
> "event.dispatcher.default.consumers" and a SWORD deposit is made,
> dspace-services seems to have trouble starting DSpaceKernelManager / the
> kernel itself properly.
> Eg.
> (start SWORD deposit...)
> 2010-12-16 09:58:06,104 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.104] Workflow process started;
> 2010-12-16 09:58:06,105 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.105] Updated date added to response from item metadata where
> available;
> 2010-12-16 09:58:06,105 INFO org.dspace.content.Item @
> [email protected]:session_id=0:ip_addr=127.0.0.1:update_item:item_id=86729
> 2010-12-16 09:58:06,110 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.110] Ingest successful;
> 2010-12-16 09:58:06,110 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.110] Item created with internal identifier: 86729;
> 2010-12-16 09:58:06,110 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.110] No external identifier available at this stage (item in
> workflow);
> 2010-12-16 09:58:06,110 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.110] Archive ingest completed successfully;
> 2010-12-16 09:58:06,110 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.110] Initialising ATOM entry generator for an Item;
> 2010-12-16 09:58:06,116 INFO org.dspace.sword.SWORDService @ [2010-12-16
> 09:58:06.116] Total time for deposit processing: 478 ms;
> (...looks good so far, but...)
> 2010-12-16 09:58:06,118 ERROR
> org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/sword].[deposit]
> @ Servlet.service() for servlet deposit threw exception
> java.lang.NoClassDefFoundError: Could not initialize class
> org.dspace.kernel.DSpaceKernelManager
> at org.dspace.utils.DSpace.<init>(DSpace.java:57)
> at org.dspace.utils.DSpace.<init>(DSpace.java:46)
> at
> org.dspace.discovery.IndexEventConsumer.<init>(IndexEventConsumer.java:41)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
> at java.lang.Class.newInstance0(Class.java:355)
> at java.lang.Class.newInstance(Class.java:308)
> at
> org.dspace.event.ConsumerProfile.readConfiguration(ConsumerProfile.java:87)
> at
> org.dspace.event.ConsumerProfile.makeConsumerProfile(ConsumerProfile.java:62)
> at
> org.dspace.event.EventManager$DispatcherPoolFactory.makeObject(EventManager.java:227)
> at
> org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:964)
> at
> org.apache.commons.pool.PoolUtils$SynchronizedKeyedObjectPool.borrowObject(PoolUtils.java:1159)
> at org.dspace.event.EventManager.getDispatcher(EventManager.java:111)
> at org.dspace.core.Context.commit(Context.java:333)
> at org.dspace.sword.SWORDContext.commit(SWORDContext.java:178)
> at
> org.dspace.sword.DSpaceSWORDServer.doDeposit(DSpaceSWORDServer.java:123)
> at
> org.purl.sword.server.DepositServlet.doPost(DepositServlet.java:299)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
> at java.lang.Thread.run(Thread.java:619)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.duraspace.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Dspace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-devel