RSolr :: Error :: Http:RSolr :: Error :: Http - 500内部服务器错误

时间:2016-02-12 10:30:14

标签: ruby-on-rails ruby solr rspec

我有两个分支:开发和另一个我做出改变的分支。

一切都很好,直到我检查了我的开发分支,发现它在我的分支之前,并且在那里有一些红宝石宝石更新。

我检查了我的开发分支,想检查一下测试是什么,所以运行RSpec测试,发现所有测试都失败了,所以我决定尝试在我的分支上运行测试。当我更改分支时,我再次执行bundle update,并运行测试,但它们也都失败了。在我通过开发测试更新gems之前。

测试显示Solar出了问题,所以进入控制台并希望对其进行索引,并显示:

Indexing Irec::Application
rake aborted!
RSolr::Error::Http: RSolr::Error::Http - 500 Internal Server Error
Error:     Server Error</pre></p><h3>Caused by:</h3><pre>java.lang.NullPointerException
    at org.apache.solr.servlet.SolrDispatchFilter.authenticateRequest(SolrDispatchFilter.java:241)
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:186)
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)

URI: http://localhost:8982/solr/development/update?wt=ruby
Request Headers: {"Content-Type"=>"text/xml"}
Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><add><doc>

我尝试some suggested things我在Stack Overflow上找到了其他地方,但他们并没有解决我的问题。有人知道如何解决这个错误吗?

2 个答案:

答案 0 :(得分:0)

我通过错误消息RSolr::Error::Http: RSolr::Error::Http - 500 Internal Server Error找到了这个问题。

我有多个Java版本,并且不想在外壳的配置文件(例如JAVA_HOME)中永久设置~/.bash_profile,因为solr依赖于我不想使用的Java版本是我的默认设置,因此我在启动solr之前设置了它。

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home

bundle exec rake sunspot:solr:start

答案 1 :(得分:-1)

解决方案:

从项目中删除了solr地图并重新启动了太阳黑子:solr。