開発Blog

intra-martで作成したアプリケーションに対するプログラムパスの張り方について

投稿日:

 


※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。
最新のintra-martでは、異なる情報であることがありますので、ご注意ください。


 

質問 :
あるWebサイトから、intra-martで作成したアプリケーションに対して、
・プログラムパス(ページベースやJ2EEのプログラムパス)
・Login認証の為の LOGINID、パスワード
を渡す事により、直接intra-martのプログラムを実行させたり、ポートレット(あるWebサイトの)として動作させたりする事が可能になりません でしょうか。

回答:
ページベース開発モデルでは2つの方法があります。

■特定のページを表示するためのサーブレットを作成する
■特定のページへアクセスするためのURLを生成する

以下、ページベース開発モデルの画面を表示することを前提として記述します。
また、対象は BaseModule 4.3 です。

■特定のページを表示するためのサーブレットを作成する

jp.co.intra_mart.foundation.scenario.PresentationPage を利用すると、ページベース開発モデルの指定の画面を作成できます。
結果として、画面のソース(HTML)が返って来ますので、それをブラウザへレスポンスすれば画面表示できます。
問題は、「ログインしている」という環境をどうやって作り出すか?です。
既にログイン済みの場合は問題ありませんが、そうでない場合は、一工夫必要になります。
システム要件やアプリケーション仕様等が分からないため何とも言えませんが、例えば、以下のような工夫が考えられます。

(1)ログインしているかどうかに影響されないように遷移先となるページベース開発モデルの 画面を作成する
(2)URLにIDとパスワードを付加してリクエストする自動認証機能を利用して「ログインしている」という環境を作り出す
(3)外部アプリケーション接続モジュールを利用する

■特定のページへアクセスするためのURLを生成する

外部アプリケーション接続モジュールを利用すると、特定のページへアクセスするためのURLを作り出す事ができます。
外部アプリケーション接続モジュールが返すURLをリンク表示する事で、そのリンクをクリックすると intra-martアプリケーションの画面が表示されます。
外部アプリケーション接続モジュールを利用したページURL作成については、下記サンプルソースを参考にしてください。

source/java/jp/co/intra_mart/sample/service/client/application/MenuPageCreator.java

どちらの方法も一長一短がありますので、アプリケーション要件を考慮してどちらの方法を採用するか検討してください。

またJ2EEベース開発モデルの場合、使う技術が以下のいずれかになります。

■Servlet
■JSP
■im-J2EE Framework
○サービスフレームワーク
○プレゼンテーションフレームワーク

いずれも、仕様に沿った形式のURLでアクセスすれば、任意のページを表示できます。
#ただし、プレゼンテーションフレームワークの場合、
#スタートポイント以外をダイレクトにアクセスする事はできません。

ただし、「ログインしている」という環境が必要な場合は、アプリケーション接続モジュールを 利用してください。
以下にサンプルソースがありますので、参考にしてください。

source/java/jp/co/intra_mart/sample/service/client/application/FrameworkConnectURLCreator.java
source/java/jp/co/intra_mart/sample/service/client/application/PresentationFrameworkPageCreator.java

-開発Blog
-

執筆者:

関連記事

社員が運営するオフィスコンビニのご紹介

こんにちは。技術コンサルの高松と申します。 最近、矢野さんのトイレの空き状況の見える化システムが公開されましたね。 「自分もおもろい社内ネタを出したい!」と思ったので、アップします。 あ、IT要素ゼロ …

no image

認可の閉塞機能を使いこなす

今回は認可の閉塞機能 (※1) についての紹介です。 2013 Summer から提供されていた認可リソースの閉塞機能ですが、2013 Winter で機能を追加して、アクション単 …

no image

intra-mart Advent Calendar 2013 第11日:Resin HealthSystemのご紹介

この記事は、intra-mart Advent Calendar 2013 第10日の記事です。 Resinは、アプリケーションが動作しているResin本体とは別にwatchdogという監視サーバが動 …

no image

Forma関数で条件式を書く

IM-FormaDesignerの画面アイテム「関数」を利用して式を記述できますが、まもなくリリース予定のパッチ2よりAND演算・OR演算の論理演算関数や比較演算子を使えるようになります。 これにより …

no image

e Builder Application ProducerでDAO開発♪

こんにちは、開発本部の江本です。 前回の記事「e Builder Application ProducerでDB設計♪」で、DB設計を紹介しました。 今回は、設計したDBに対して検索用DAOの作成方法 …

まだデータがありません。

RSSRSSRSSRSS