client_types.xml ファイルは、 PageListServlet を拡張するサーブレットに対し、クライアント・タイプの検出をサポートします。 サーブレットは、client_types.xml ファイル内の構成データを使用して、 呼び出し側クライアントが応答に必要な言語のタイプを判別できます。
クライアント・タイプ検出サポートを使用すると、サーブレットは callPage メソッドを使用して、 該当する JavaServer Pages (JSP) ファイルを呼び出せるようになります。 サーブレットは、要求のマークアップ言語のタイプに基づいて JSP ファイルを選択します。
サーブレットは、callPage メソッドの次のバージョンを使用して、 クライアントが必要とするマークアップ言語のタイプを判別する必要があります。
callPage(String mlName, String pageName, HttpServletRequest request, HttpServletResponse response)
ここで、引数は以下のとおりです。
PageListServlet の拡張 の コード例を参照して、サーブレットが callPage メソッド呼び出す方法を調べます。
この例では、PageListServlet によって提供されるクライアント・タイプ検出メソッドの getMLTypeFromRequest(HttpServletRequestrequest) は、 HttpServletRequest オブジェクトの要求ヘッダーを検査し、 client_types.xml ファイル内に一致するものがないか検索します。
クライアント・タイプ検出メソッドは以下を行います。
client_types.xml ファイルは app_server_root/properties ディレクトリーにあります。
いいえ
いいえ
このファイルは、ユーザーによって作成され、更新されます。
PageListServlet サーブレットを拡張するサーブレットは、 このファイルを使用して、呼び出し側クライアントが応答に必要とする言語のタイプを判別します。
<?xml version="1.0"> <!DOCTYPE clients [ <!ELEMENT client-type (description, markup-language,request-header+)> <!ELEMENT description (#PCDATA)> <!ELEMENT markup-language (#PCDATA)> <!ELEMENT request-header (name, value)> <!ELEMENT clients (client-type+)> <!ELEMENT name (#PCDATA)> <!ELEMENT value (#PCDATA)>]> <clients> <client-type> <description>IBM Speech Client</description> <markup-language>VXML</markup-language> <request-header> <name>user-agent</name> <value>IBM VoiceXML pre-release version 000303</value> </request-header> <request-header> <name>accept</name> <value>text/vxml</value> </request-header> </client-type> <client-type> <description>WML Browser</description> <markup-language>WML</markup-language> <request-header> <name>accept</name> <value>text/x-wap.wml</value> </request-header> <request-header> <name>accept</name> <value>text/vnd.wap.xml</value> </request-header> </client-type> </clients>