この手順では、CreditScore Web サービスにアクセスするように LoanApproval コントロールのロジックを拡張します。LoanApproval コントロールの既存のロジックは次のとおりです。
この SSN のローンが存在する場合は、申請を拒否します (呼び出し側に false を返す)。ローンが存在しない場合は、申請を受け入れます (呼び出し側に true を返す)。
このロジックを次のように拡張します。
この SSN を持つ個人のローンがすでに存在する場合は、申請を拒否します (false を返す)。ローンが存在しない場合は信用度スコアを確認します。信用度スコアが 700 未満の場合は、申請を拒否します (false を返します)。 信用度スコアが 700 以上の場合は、申請を受け入れます (true を返します)。
外部の Web サービスにアクセスするために、新しい Web サービス コントロール (「サービス コントロール」) を作成して、CreditScore Web サービスにアクセスするようにします。続いて、新しい Web サービス コントロールを使用するように LoanApproval コントロールを変更します。
新しいコントロールを作成するには、まず Web サービスから WSDL ファイルを生成し、その WSDL からサービス コントロールを生成します。
エディタ ウィンドウを右クリックして、[挿入|コントロール] を選択します。新しい [CreditScoreServiceControl] を選択して [OK] をクリックします。
コントロールを宣言してインスタンス化するコードは次のようになります。
@Control private CreditScoreServiceControl creditScoreServiceControl;
public boolean getLoanApproval(int ssn, float amount) throws SQLException { init(); // すでに借り入れがある場合は、別のローンを許可しない if (loansDB.getLoanValue(ssn) > 0) return false; if(creditScoreServiceControl.getCreditScore(ssn) < 700) return false; // それ以外の場合は、ローンを許可する loansDB.insertLoan(ssn, amount); return true; }
[ファイル|保管] を選択して変更を保存します。