OracleSES 10g(Secure Enterprise Search)をRedHat9にインストールした後の調整

RedHat9へのOracle SES 10gインストール #2

前回のRedHat9へのOracle SES 10gインストールで,SES(Secure Enterprise Search)のインストールはひとまず終わったが, 以下の課題が残った.

  • (a) 検索結果画面のリンクから飛べない
  • (b) キャッシュでテキストファイルが改行されない

今回,(a)についての(強引な)対応を行ったので,それを記述する.

なお「3.注意事項」にありますが, この対応によって本来の機能に支障が出る可能性が高いため,あくまで自己責任でお願いします.


1.対応の方針

検索結果画面の問題となっているリンクでは,redirect.jspを呼び出している.

そのredirect.jspでエラーが発生しているため,本来はredirect.jspを変更するのが筋だが, どうも困難だ.

そこで次善の策として,リンク先をredirect.jspではなく検索結果のファイルそのものを指すように変更し, redirect.jspを使わないようにするという対応をとることにした.

調べたところ,検索画面は複数のJSPで構成されていた.具体的のどのファイルかというと,

検索機能に関するJSPの格納ディレクトリ
/home/orases/oracle/product/10.1.6/ses1/oc4j/j2ee/oc4j_applications/applications/search_query/query/

この中にある

  • common_result.jsp

において,検索結果画面の一覧部分を構築していた.これを変更する.

2.具体的な変更箇所

以下のようにして,アンカーのリンク先をredirect.jspではなくファイルの表示URL(displayUrl)に変更した.

common_result.jsp :666行目

[変更前]
           <A HREF="./redirect.jsp?qid=<%=queryid%>&did=<%=oneResult.getId()%>&pos=<%=i+l_startnum%>&idx=<%=docIdx%>&fid=<%=fedID%>"><%= disp %></A>
 
[変更後]
           <A HREF="<%= displayUrl %>"><%= disp %></A>

common_result.jsp :879行目

[変更前]
<%=indent%><A HREF="./redirect.jsp?qid=<%=queryid%>&did=<%=oneResult.getId()%>&pos=<%=i+l_startnum%>&idx=<%=docIdx%>&fid=<%=fedID%>"><%= disp %></A>
 
[変更後]
<%=indent%><A HREF="<%= displayUrl %>"><%= disp %></A>
変更後,
~orases/oracle/product/10.1.6/ses1/bin/searchctl restartall
でSESを再起動すると反映される.なぜJSPに再起動が必要なのかは不思議だが,それが現実だった.

3.注意事項

redirect.jspを経由しないようにしたことで,副作用が生じると思われる.

ソースを見た感じではアクセス制御をやっているように見えるので, 今回の変更によってそこらへんが正常に動かなくなる可能性があるのでご注意.


© 2023 KMIソフトウェア