Я настроил экземпляр DSpace 6.3 для экспериментов / разработки на Linux Mint 19.1 с базой данных postgresql, работающей на localhost: 8080.
XMLUI, SOLR и OAI, похоже, работают хорошо, но я не могу заставить REST API работать. (А также интеграция ORCID, но это может быть связано с проблемой REST, поэтому я считаю, что это вторично.) Я получаю ошибку 404, независимо от того, пытаюсь ли я получить доступ к веб-приложению REST через браузер или curl.
Я установил webapp для REST через mvn и ant и скопировал папки webapp в мой экземпляр tomcat9 (как описано в https://wiki.lyrasis.org/display/DSDOC6x/Installing+DSpace#InstallingDSpace -InstallationInstructions ). Я также прокомментировал часть ограничения безопасности для деактивации SSL (как описано в https://wiki.lyrasis.org/display/DSDOC6x/REST+API).
Настройки владения и разрешения такие же, как для ... / webapps / xmlui , / solr и /oai.
Я читал, что проблемы могут возникнуть с Java 7 (http://dspace.2283337.n4.nabble.com/deploying-the-rest-api-td4692801.html), но сначала я выполнил установку с Java 8, а также попытался с Java 11, но оба не работали.
Я не работаю с прокси (как в https://groups.google.com/forum/#! searchin / dspace-tech / rest $ 20api $ 20404% 7Csort : date / dspace-tech / mnG_tL3Ijrg / 58xA20TXAgAJ).
Я посмотрел на catalina.log и localhost.log в tomcat. Catalina.log говорит мне, что это как-то связано с неудачным запуском слушателей:
11-Apr-2020 12:23:56.101 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/var/lib/tomcat9/webapps/rest]
11-Apr-2020 12:24:01.153 INFORMATION [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
11-Apr-2020 12:24:06.521 SCHWERWIEGEND [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
11-Apr-2020 12:24:06.522 SCHWERWIEGEND [main] org.apache.catalina.core.StandardContext.startInternal Context [/rest] startup failed due to previous errors
11-Apr-2020 12:24:06.853 WARNUNG [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [rest] appears to have started a thread named [net.sf.ehcache.CacheManager@5b5d1f9a] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
java.base@11.0.6/java.lang.Object.wait(Native Method)
java.base@11.0.6/java.lang.Object.wait(Object.java:328)
java.base@11.0.6/java.util.TimerThread.mainLoop(Timer.java:527)
java.base@11.0.6/java.util.TimerThread.run(Timer.java:506)
Я предполагаю, что соответствующий раздел localhost.log (который я считаю файлом журнала контейнера): 1028 *
11-Apr-2020 12:24:04.362 INFORMATION [main] org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
11-Apr-2020 12:24:06.521 SCHWERWIEGEND [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.dspace.app.util.DSpaceWebappListener]
org.dspace.core.exception.DatabaseSchemaValidationException: The schema validator returned: Error activating Bean Validation integration
at org.dspace.core.Context.init(Context.java:170)
at org.dspace.core.Context.<init>(Context.java:126)
at org.dspace.app.util.AbstractDSpaceWebapp.register(AbstractDSpaceWebapp.java:74)
at org.dspace.app.util.DSpaceWebappListener.contextInitialized(DSpaceWebappListener.java:31)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4668)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5136)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:713)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1133)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1868)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1045)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:429)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1577)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:424)
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:367)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:929)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:831)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1377)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1367)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:902)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:423)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:928)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start(Catalina.java:638)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:496)
11-Apr-2020 12:24:06.810 SCHWERWIEGEND [main] org.apache.catalina.core.StandardContext.listenerStop Exception sending context destroyed event to listener instance of class [org.dspace.app.util.DSpaceWebappListener]
org.dspace.core.exception.DatabaseSchemaValidationException: The schema validator returned: Error activating Bean Validation integration
at org.dspace.core.Context.init(Context.java:170)
at org.dspace.core.Context.<init>(Context.java:126)
at org.dspace.app.util.AbstractDSpaceWebapp.deregister(AbstractDSpaceWebapp.java:87)
at org.dspace.app.util.DSpaceWebappListener.contextDestroyed(DSpaceWebappListener.java:43)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4715)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5374)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:187)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:713)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1133)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1868)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1045)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:429)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1577)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:424)
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:367)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:929)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:831)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1377)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1367)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:902)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:423)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:928)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start(Catalina.java:638)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:496)
Журналы dspace, cocoon и solr, насколько я могу судить, не содержат соответствующей информации, но, разумеется, я также могу опубликовать их при необходимости.
Может кто-нибудь помочь мне понять что означают эти ошибки и что я могу сделать для их устранения - я немного застрял ... Если я забыл включить любую необходимую информацию, я, конечно, с радостью включу ее!
Спасибо, что даже читаете .. Анна