サポート > リポジトリ > Appendix > 外部システムから直接、Wagby の任意の画面を開く

外部システムから直接、Wagby 上の画面を開くことができます。

外部システムから直接、Wagby 上の画面を開くことができます。URL に次の情報を含めます。

キー 説明
forwardUrl 遷移先画面に関する情報

例えば顧客モデル(customer)の一覧表示画面を開く場合、次のようになります。ホスト名は適切に読み替えてください。

http://localhost:8921/wagby/logon.do?forwardUrl=showListCustomer

最初にログオン画面が表示されます。ログオン後、メニュー画面をスキップして顧客モデル(customer)の一覧表示画面が開きます。

  • パラメータ forwardUrl は「画面名」を記載してください。ここで、画面名とはログオン後のメニュー選択時に URL に表示される部分に相当します。
  • 遷移先画面用の追加パラメータを指定しない場合、末尾の ".do" は不要です。
  • forwardUrl パラメータを省略した場合は、メインメニュー画面へ遷移します。
  • パラメータにログオンアカウントおよびパスワードを指定することはできません。

例:新規登録画面を開く

URL に action_New パラメータを加えます。値部分も同じく "New" とします。

http://localhost:8921/wagby/logon.do?forwardUrl=insertCustomer.do?action_New=New

接頭語 "action_" のあとに続く文字列は「イベント」として扱われます。 詳細は"画面遷移パラメータまとめ"をお読みください。

例:検索条件を付与する

forwardUrl パラメータ内に含める&は、"%26" に置換してください。これは forwardUrl パラメータ以降の文字列をひとまとまりとして扱えるようにするためです。

http://localhost:8921/wagby/logon.do?forwardUrl=showListCustomer.do?action_Search_Condition=Search_Condition%26customer_cp$002f整数型項目1jshparam=整数値%26customer_cp$002f整数型項目2jshparam=整数値
  • 上例で、検索条件を格納するモデル名は customer_cp と表現しています。詳細は「コンディションモデル」をお読みください。
  • 上例の「整数型項目」は適切に読み替えてください。Wagbyでは整数型項目は範囲を指定することができます。開始と終了を、それぞれ接尾語 "1jshparam", "2jshparam" を付与することで区別します。
  • コンディションモデル名と項目名の間は "$002f" で区切ります。これは '/' 文字を utf-8 でエンコードした表現となっています。

例:日本語文字を含む検索条件を付与する

遷移先を showListStaff.do とします。また、検索条件部を次のようにします。

?action_Search_Condition=Search_Condition&staff_cp$002fname=鈴木 一郎

まずパラメータのマルチバイト文字列「鈴木 一郎」のみをURLエンコードします。文字エンコーディングは utf-8 としてください。

?action_Search_Condition=Search_Condition&staff_cp$002fname=%E9%88%B4%E6%9C%A8%20%E4%B8%80%E9%83%8E

次に「画面URL」と「パラメータ」を連結します。

showListStaffSub.do?action_Search_Condition=Search_Condition&staff_cp$002fname=%E9%88%B4%E6%9C%A8%20%E4%B8%80%E9%83%8E

この文字列をもう一回URLエンコードします。

showListStaffSub.do%3Faction_Search_Condition%3DSearch_Condition%26amp%3Bstaff_cp%24002fname%3D%25E9%2588%25B4%25E6%259C%25A8%2520%25E4%25B8%2580%25E9%2583%258E

このようにして作成された文字列を logon.do の forwardURL のパラメータ値として指定します。

http://localhost:8921/wagby/logon.do?forwardUrl=showListStaffSub.do%3Faction_Search_Condition%3DSearch_Condition%26amp%3Bstaff_cp%24002fname%3D%25E9%2588%25B4%25E6%259C%25A8%2520%25E4%25B8%2580%25E9%2583%258E
forwardUrl に指定するパラメータ値のうち「=」「$」「?」「.」はURLエンコードしなくても動作します。つまりURLエンコードが必要な文字は「&」「%」及びマルチバイト文字となります。

まとめますと、日本語文字(マルチバイト文字)は、2回URLエンコードした値に置換してください。

スマートフォンの場合は forwardUrl 指定は無効となります。つまりログオン認証後、指定画面へリダイレクトされず、メニュー画面が表示されます。