超久しぶり、3年ぶりのGeneXus Tipsの投稿です!

弊社の若手達はGeneXusでのシステム開発案件に勤しんでおりますので、今回はロートルの私が「GeneXusによるWebサービスの作り方」をご紹介します。
GeneXusではサーバー側/クライアント側のどちらも作る事が出来ますが、今回はサ―バー側の作り方をご紹介します。

今回は「足し算だけの計算機」を作ります。ナレッジベース名は「WS_Calculator」としました。
新規のProcedureオブジェクト「WS_Calculator」を作成し、プロパティを下記のように設定します。

Main Program:True
Call Protocol:SOAP

今回はREST ProtocolはFalseのままとします。

PROCEDUREオブジェクトのプロパティ設定

PROCEDUREオブジェクトのプロパティ設定

 

 

 

 

 

 

 

 

 

そして、Variablesに変数「&a、&b、&c」を定義します。

変数の定義

変数の定義

 

 

 

 

Sourceには今回のメイン処理「&c = &a + &b」を記述し、Rulesには今回の処理のParmとして「in:&a、in:&b、out:&c」を定義します。

計算処理の記述

計算処理の記述

 

 

 

 

パラメータの定義

パラメータの定義

 

 

 

今回作るのはこれだけです。
ビルド・コンパイルするといつものようにDEVELOPER MENUが立ち上がりますが、ブラウザに表示するものは一切作っていませんので、お詫びのメッセージ以外は何も表示されません。

DEVELOPER MENUの起動

DEVELOPER MENUの起動

 

 

 

 

 

 

 

そこで、URLを直接叩いて確認してみたいと思います。

メニュー>ツール から「ターゲット環境のディレクトリを開く」を選択して、実際に生成されたプログラムの名前を確認します。

ターゲット環境のディレクトリを確認

ターゲット環境のディレクトリを確認

 

 

 

 

 

 

今回は.Netで生成していますので、このような構成になっています。

ターゲット環境のディレクトリを確認

ターゲット環境のディレクトリを確認

 

 

 

 

 

 

 

 

 

binフォルダーの下に、今回作ったProcedureオブジェクトにプレフィックスと拡張子がついたファイル「aws_calculator.dll」がありました。これが生成されたWebサービスの元ファイルです。DEVELOPER MENUのディレクトリ「http://localhost/EX_WS_Calculator.NetEnvironment」に「aws_calculator.aspx」を加えてブラウザからアクセスしてみます。

Webサービスにアクセス

Webサービスへのアクセス確認

 

 

 

 

 

 

すると、アクセス出来ている事が確認できます。
続いて、上記URLに「?wsdl」を加えて、wsdlを確認してみましょう。

WSDLを表示

WSDLを表示

 

 

 

 

 

 

 

 

すると今度は、WSDLが表示されました。

後編では、このWSDLを使って、Webサービスのクライアント側を作ります。

今回は以上です。
最後までご覧頂きありがとうございました。

→ 後編【GXTips】Webサービスの作り方(前編~クライアント編) http://www.corenext-genexus.com/?p=1284