我刚刚从DSpace 3.2升级到5.2。除了我无法打开比特流之外,一切看起来都很好。
每当我点击某个项目的文件时,都会打开一个新的空白标签,最终会显示500 Internal Server Error
。
事实:
数据库信息看起来很好,因为我检查了表的链handle->bundle->bitstream
,bitstream.internal_id
转换为比特流文件的有效文件系统路径。
在dspace.cfg
,assetstore.dir
指向[dspace32]/assetstore
,来自(旧)DSpace 3.2的资产商店。
这似乎不是一个网络问题,因为我在使用wget本地访问比特流时获得相同的结果。 (例如:wget -vd --no-proxy http://localhost:8180/jspui/bitstream/123456789/156/3/000156.pdf
)
与此问题相关的唯一一条日志就是这一条:
2015-07-22 13:40:47,865 INFO org.dspace.app.webui.servlet.BitstreamServlet @ anonymous:session_id=8F3B259C29333982128AB583EE4FC894:ip_addr=127.0.0.1:view_bitstream:bitstream_id=2858
顺便提一句,上述bitstream_id
是正确的。
非常感谢任何帮助! ;)
这是我的系统信息:
更新 :我也无法访问新上传的文件,因此根本不存在升级问题。在这种情况下,DSpace在文件系统和数据库中正确创建了新的比特流,但我无法使用UI访问它。
答案 0 :(得分:0)
评论[dspace]/webapps/jspui/WEB-INF/spring/applicationContext.xml
的以下部分可以解决问题:
<!-- Google Analytics recording -->
<bean class="org.dspace.google.GoogleRecorderEventListener">
<property name="eventService" >
<ref bean="dspace.eventService"/>
</property>
</bean>
现在,为什么我们没有激活并且不应该首先存在的Google Analytics(分析)无法访问Google Analytics(分析),应该阻止下载文件?这是dspace.log:
2015-07-24 11:46:33,744 INFO org.dspace.app.webui.servlet.BitstreamServlet @ anonymous:session_id=8928432521F497D8ADFBA09FD3C65C90:ip_addr=SERVER_IP:view_bitstream:bitstream_id=2858
2015-07-24 11:50:30,940 INFO org.apache.http.impl.execchain.RetryExec @ I/O exception (java.net.SocketException) caught when processing request to {s}->https://www.google-analytics.com:443: The network is out of reach
2015-07-24 11:50:30,941 INFO org.apache.http.impl.execchain.RetryExec @ Retrying request to {s}->https://www.google-analytics.com:443
CAVEAT :我们在网络中有代理,但只是设置http.proxy
无效,因为DSpace只会通过它传递HTTP请求。