[fess-user 767] Re: PDFのタイトル(メタ情報)を検索結果に表示したい

アーカイブの一覧に戻る

Shinsuke Sugaya shins****@yahoo*****
2013年 7月 31日 (水) 13:39:05 JST


菅谷です。

ちょっと面倒な設定になりますが、

まず、webapps/fess/WEB-INF/classes/s2robot_transformer.diconで

    <component name="fessFileTransformer"
class="jp.sf.fess.transformer.FessFileTransformer"
instance="singleton">
        <property name="name">"fessFileTransformer"</property>
        <property name="ignoreEmptyContent">true</property>
        <property name="replaceSiteEncodingWhenEnglish">true</property>
        <property name="siteEncoding">"UTF-8"</property>
        <initMethod name="addMetaContentMapping">
            <arg>"Title"</arg>
            <arg>"title_s"</arg>
        </initMethod>
    </component>

というような感じで、addMetaContentMappingのinitMethod要素を
加えます。次にwebapps/fess/WEB-INF/classes/app.diconで

    <component name="queryHelper"
class="jp.sf.fess.helper.impl.QueryHelperImpl">
        <property name="responseFields">new String[]{"id", "score", "boost",
            "contentLength", "host", "site", "lastModified", "mimetype",
            "tstamp", "title", "digest", "url", "clickCount_i",
"favoriteCount_i",
            "screenshot_s_s", "title_s"}</property>
...

という箇所にresponseFieldsのproperty要素を追加します。
あとは、クロールして、検索結果を表示するjspの
src/main/webapp/WEB-INF/view/searchResults.jspで
${f:h(doc.title_s)} と記述すると、PDFのタイトルが
表示されます。既存のタイトルは${f:h(doc.contentTitle)}に
なりますので、
<c:if test="doc.title_s!=null">${f:h(doc.title_s)}</c:if>
<c:if test="doc.title_s==null">${f:h(doc.contentTitle)}</c:if>
みたいな感じで出し分けたりすると良いかもしれません。
(c:ifのところは手書きで書いた感じなので動確してません)

よろしくお願いいたします。

shinsuke

2013年7月31日 0:47 山口貴礼 <musta****@gmail*****>:
> お世話になります。
> 山口と申します。
>
> 便利なソフトを開発していただき、ありがとうございます。
>
> 検索結果でPDFの場合、ファイル名が表示されています。
> これをメタ情報のタイトルに変更したいのですが、可能でしょうか?
>
> 設定ファイルの変更で対応できるのであれば、
> 変更する箇所を教えていただきたく、宜しくお願い致します。
>
> _______________________________________________
> Fess-user mailing list
> Fess-****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/fess-user
>




Fess-user メーリングリストの案内
アーカイブの一覧に戻る