【问题标题】:Fuseki server doesn't show datasetsFuseki 服务器不显示数据集
【发布时间】:2019-01-07 13:21:08
【问题描述】:

我是 Tomcat、Fuseki 和 Shiro.ini 文件的新手,所以请原谅我提出愚蠢的问题。

系统:

  • MacMini ==> OS.X 10.13(作为开发服务器)
  • Java ==> 8
  • Tomcat ==> 9.0.10

工作流程:

  • 通过 Plist 文件,Tomcat 实例在每次启动服务器时启动。
  • /Users/username/tomcat/webapps我已经把解压成功的fuseki.war文件放好了。
  • 我插入了一个定制的 RDF 文件,该文件在重新启动后加载并提供服务
  • (这是好事的终结)

问题: 我可以通过:http://localhost:8080/fuseki 访问 RDF 文件,我可以执行 SPARQL 查询以及我需要完成的所有其他事情。但是,当将开发服务器连接到 PC 并通过其 IP 访问它时:例如http://192.168.0.112:8080/fuseki;我最终看到服务器状态为绿色,除了数据集之外,整个 Web 界面都可以正常工作。当我转到http://192.168.0.112:8080/fuseki/dataset 并按“查询”(或任何其他按钮)时,它会显示:“请选择一个数据库”

**原因: 我找到了这个线程fuseki webinterface does not show datasets (SO),它引导我调查 shiro.ini 文件。事实证明我没有。

然后我搜索了shiro.ini,在/Users/username/tomcat/webapps/fuseki/WEB-INF/web.xml找到了引用:

<context-param>
  <param-name>shiroConfigLocations</param-name>
  <!-- Try a path in: FUSEKI_BASE, FUSEKI_HOME, war resource
  If a "file:" then look there and there only.
  -->
  <param-value>shiro.ini</param-value>
</context-param>

这让我觉得我需要将 shiro.ini 文件放在我的根文件夹 (Users/username/tomcat/webapps/fuseki/shiro.ini) 而不是 (Users/username/tomcat/webapps/fuseki/run/shiro.ini) 中。但是两者都不起作用。

我还查看了一个日志文件:catalina.out,据此看来 shiro.ini 文件已加载(或者至少没有迹象表明它存在错误。) 以下是该日志的相关摘录:

[2018-07-31 09:18:54] Config     INFO  FUSEKI_HOME=unset
[2018-07-31 09:18:54] Config     INFO  FUSEKI_BASE=/etc/fuseki
[2018-07-31 09:18:54] Config     INFO  Shiro file: file:///etc/fuseki/shiro.ini
[2018-07-31 09:18:55] Config     INFO  Context path = /fuseki
[2018-07-31 09:18:55] Config     INFO  Configuration file: /etc/fuseki/config.ttl

但是我找不到任何文件夹etc/fuseki/?那么,这是怎么回事呢?

这是shiro.ini 文件:

[users]
admin=passXXX     #non-default

[main]
#localhost=org.apache.jena.fuseki.authz.LocalhostFilter

[roles]


[urls]
##control open to anyone
/$/status = anon
/$/ping = anon
##rest restricted to Localhost
## see above for localhost

#/$/** = localhost
/**=anon

我不确定此时发生了什么,所以任何指针都非常受欢迎。

【问题讨论】:

    标签: java tomcat shiro fuseki


    【解决方案1】:

    事实证明,这个问题更多地与我对 MAC 操作系统的不熟悉有关,而不是与 Tomcat 或 Fuseki 相关。

    catalina.out 文件中引用的文件夹 /etc/fuseki 被紧紧锁定,它的实际路径是 /private/etc/fuseki(虽然这似乎无关紧要)

    默认情况下,由于根本没有权限,您无法进入 fuseki 文件夹。甚至在做:

    sudo cd /private/etc/fuseki 
    

    sudo cd /etc/fuseki
    

    行不通。我需要通过 getinfo 授予自己对该文件夹的读/写访问权限(尽管我认为您也可以通过 chown 实现这一点。

    现在我可以查看该文件夹的内容,但其中的所有文件和文件夹都有相同的问题并需要相同的解决方案。所以现在我可以自定义 shiro.ini 和 configuration/rdf.ttl 文件了。

    如果我这样做了

    sudo cd /private/etc/fuseki 
    

    sudo cd /etc/fuseki
    

    现在,我可以成功查看内容了。

    【讨论】:

      猜你喜欢
      • 2017-09-26
      • 2018-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-10
      • 2016-08-31
      • 2018-06-30
      • 2016-06-22
      相关资源
      最近更新 更多