携帯画面のエラー表示

携帯画面に"Session expired"と表示される
携帯画面に"Server changed.Please redo from the start."と表示される
携帯画面に"Rule not found"と表示される
携帯画面に"Server configuration Imperfection(https proxy)"と表示される
携帯画面に"Request format unexpected"と表示される
携帯画面に"Illegal domain"と表示される
携帯画面に"License expired"と表示される
携帯画面に"Failed to get contents"と表示される
携帯画面に"Max client over"と表示される
携帯画面に"Web Server Request Time-out"と表示される
携帯画面に何も表示されない

携帯画面に"Session expired"と表示される

xproxy.propertiesで設定されたtracker.historySizeの値を超えてブラウザバックを行ったのち、セッション情報を要求するリクエストを行った場合に発生します。

具体的には規定数以上のブラウザバック後に以下の動作を行うとエラーが発生します。

  • FORM送信(SUBMIT)の実行
  • x-Servlet が挿入した「次へ」「前へ」(リンクまたは SUBMIT ボタン)によるページ遷移の実行
    (該当ページでページ分割が発生していた場合)

また、ブラウザバックでリクエストが発生するような機種ではtracker.historySizeの値までブラウザバック出来ない場合があります。
例えば tracker.historySize = 5 のとき

A → B → C → D → E

と遷移した場合、Eからブラウザバックを4回実行でAに遷移できるような印象を受けますが
実際に端末ではブラウザバック1回目実行時に

B → C → D → E → D

と遷移履歴が更新され、2回目実行時は

C → D → E → D → C

となります。3回目実行時にはBへのリクエストが送信されるが、
Bは既に遷移履歴で管理されていないためエラーとなります。

この場合はtracker.historySizeの値をサイトの構成に合わせて調節してください。

tracker.historySizeの値を増やすと、x-Servletの動作に必要なメモリ量が比例して増えます。
起動時のメモリ量はtracker.historySizeのデフォルト値に合わせてありますので、必要であれば起動時のパラメータ(-Xmx)の値も変更してください。

携帯画面に"Server changed.Please redo from the start."と表示される

二重化機能を使用するためにxproxy.propertiesでserverIDを指定したが、携帯電話から送られてきたリクエストURIがxproxy.propertiesで指定したserverIDではなかった場合に発生します。
負荷分散のためx-Servletを2台使用していると仮定した場合、各xproxy.propertiesのserverIDとrequestExchanger.serverIDPrefixrequestExchanger.serverIDSuffixにそれぞれ異なる文字を定義してください。

携帯画面に"Rule not found"と表示される

携帯電話から送られたリクエストURIがcontensRule.xmlの<ConditionHost><ConditionPort><ConditionDir><ConditionFile><ConditionUAGroup>で指定した条件に一致せず、適用できるコンテンツルールが存在しなかった場合に発生します。
リクエストURIがcontentsRule.xmlで記述されているルールのいずれかにマッチしているかどうかを確認したうえで適切なコンテンツルールを記述してください。

携帯画面に"Server configuration Imperfection(https proxy)"と表示される

x-Servletと元コンテンツサーバ間でSSL通信を行う構成にも関わらず、xproxy.propertiesのhttpsProxyHostの値が設定されていない場合に起こります。x-Servletと元コンテンツサーバ間でSSL通信を行う場合、httpsProxyHostにSSL暗号化をするホスト名を、httpsProxyPortにSSL暗号化をするホスト名のポート番号を必ず指定するようにしてください。

携帯画面に"Request format unexpected"と表示される

携帯電話からのリクエストがHTTPリクエストの仕様に従っていないことが考えられます。
リクエストがHTTPリクエストの仕様に従っているかご確認ください。x-Servletのdebug.logを解析することで問題を特定できる可能性があります。x-Servletのdebug.logの設定につきましては、x-Servletマニュアルのlog4j.propertiesをご参照ください。

携帯画面に"Illegal domain"と表示される

<form>タグのaction属性がcontentsRule.xmlの<Host><Port>で記述されたサーバを指していないような場合(x-Servlet管轄下以外のホストを指している場合)に上記のようなエラーが発生します。
もしそのaction属性が記述ミスではなく意図しているものであるならば<form>タグにnosessionをつけることで問題が解決する可能性があります。ただしnosessionの利用は副作用があることもご理解の上ご利用ください。

携帯画面に"License expired"と表示される

ライセンスの期限が切れています。
ライセンス期限延長をご希望の場合は弊社の担当営業までご連絡ください。

携帯画面に"Failed to get contents"と表示される

元コンテンツサーバがダウンしている、空のレスポンスを返している等のため、x-Servletが元コンテンツを取得できない場合に発生します。元コンテンツサーバに異常がないか確認してください。

携帯画面に"Max client over"と表示される

x-Servletに対して受け付け可能な同時リクエスト数(xproxy.propertiesのmaxClientLimitに指定した数)を超えてリクエストがあった場合に発生します。
Enterprise EditionであればmaxClientLimitのデフォルト値は50に設定されていますが、最大10000まで設定可能ですのでmaxClientLimitの値を上げてください。
Lite Editionでは最大値が50までとなっております。Lite Editionをご利用しているお客様で、このエラーが頻繁に発生しているようであればEnterprise Editionへのアップグレードをお勧めします。

携帯画面に"Web Server Request Time-out"と表示される

contentsSocketTimeoutで指定している時間内に元コンテンツサーバからのレスポンスを受信できなかった場合に発生します。
xproxy.propertiesのcontentsSocketTimeoutの値を上げてください。ただし、x-Servlet側のタイムアウト時間を大きな値としてレスポンスを待っていても、携帯電話側のタイムアウト時間が適用されタイムアウトになってしまう可能性があります。

携帯画面に何も表示されない

元コンテンツに不正な記述がないか、サーバから正常なレスポンスが返されているかをご確認ください。また、x-Servletやサーバから出されるログなどを解析することで原因の特定につながると思われます。x-Servletのログについては「ログについて」をご参照ください。x-Servletのdebug.logの設定につきましては、「log4j.properties」をご参照ください。

TOP