Alfresco社区4.0不';无法识别DITA文件mimetype

Alfresco社区4.0不';无法识别DITA文件mimetype,alfresco,apache-tika,Alfresco,Apache Tika,因此,我安装了Community 4.0.a,并使用mimetype-map.xml扩展了mimetype列表,就像我之前在3.4中所做的那样 <alfresco-config area="mimetype-map"> <config evaluator="string-compare" condition="Mimetype Map"> <mimetypes> <mimetype mimetype="application/dita+xml"

因此,我安装了Community 4.0.a,并使用mimetype-map.xml扩展了mimetype列表,就像我之前在3.4中所做的那样

<alfresco-config area="mimetype-map">
<config evaluator="string-compare" condition="Mimetype Map">
    <mimetypes>
<mimetype mimetype="application/dita+xml" text="true" display="DITA">
        <extension default="true" display="DITA Topic">dita</extension>
        <extension default="true" display="DITA Map">ditamap</extension>
        <extension default="true" display="DITA Conditional Processing Profile">ditaval</extension>
      </mimetype>

迪塔
迪塔马普
迪塔瓦
等等

但每次我导入DITA文件时,它要么被识别为XML文件,要么被识别为纯文本。我已经深入研究了它,它看起来是因为ApacheTika分析了文件的开头以检查它的mimetype

如何使用自定义的mimetype映射设置TIKA的快捷方式(从代码中可以看出,TIKA首先被触发,如果它发现了什么,那么游戏就结束了)


我必须扩展TIKA来编写自己的解析器吗?

4.0中的Mimetype匹配逻辑已略有改变,因为内容可供检测,而不仅仅是文件名。作为其中的一部分,如果Tika非常确定文件是什么,那么这将是首选

在大多数情况下,这意味着对于常见但命名错误的文件,Tika可以帮助纠正错误。对于非标准文件,Tika将拒绝提供强有力的建议,并且将一如既往地使用基于Alfresco名称的匹配。(如果Tika和Alfresco在mimetype的标准形式上存在差异,则首选Alfresco版本)

在少数情况下,文件类型实际上是普通类型的专门化,Tika知道父类型,但不知道具体类型。在这种情况下,Tika强烈建议使用父类型,我们无法意识到添加到Alfresco的新类型就是基于此。(Tika有一个MIMEType的层次结构,而Alfresco只有一个平面列表)。对于这些少数病例,Tika也需要指导

通常的修复方法是报告Tika bug,并将文件类型添加到上游。(对于非常自定义的类型,还需要添加一个Tika custom-mimetypes.xml,它定义了层次结构+glob。)


在这个DITA案例中,我打开并添加了一个临时补丁。这也有。

您知道是否很快会有一个正式的社区版本(可能是4.0.c?)使用此修复程序,还是我必须从回购协议中打包?您最好的选择可能是每晚一次,或者从svn中创建您自己的副本。这样,您几乎可以立即将修复程序安装到您的安装中。好吧,那或者签订一份合适的支持合同,那么你就可以帮你完成了!是的,我已经看过了,但最后一个是11月17日,而你的承诺是从18日开始的:(我将尝试svn,但我觉得如果我记得wellNightlies是在CI系统的绿色构建(没有单元测试失败,没有其他问题的构建)之后发布的,***包很痛苦).从SVN签出的理论上讲,您只需要运行“增量webclient”ant target将为您创建新的war版本我需要完整的zip文件,因为我们正在使用maven重新打包所有内容。无论如何,我将等待下一个4.0.c版本,而且我不想得到不通过您CI的内容。再次感谢您的帮助。