[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends-ml 10847] 権限により表示 内容を変えたい



いつも読書会にてお世話になっています。金井です。
最近、雑誌のStrutsのサンプルを動かしてみたりする程度で、J2EEはあまり詳しくあ
りません。恥を忍んで質問します。

同僚から次のようなWebアプリの開発について相談を持ちかけられました。

IP電話の設定用Webアプリがあります。ブラウザにより、IP電話の設定がいろいろで
きる(何が設定できるかは、プロジェクトに関わっていないので私もよく知りません
(汗))ようになっていて、入力自体は、HTMLのフォームを使い、サーバ側は
CGIで入力データの受付、及び、処理を行っています。設定データは、フリーのDBに
格納しています。

そして、現在はC言語で書かれています。ただ、とても保守性が悪いので、作り
換えを検討しています。で、これをどのように作り変えようかということで、相談を
持ちかけられました。

私は、Javaが最も得意としているアプリケーションですから、Strutsのようなオープ
ンソースを徹底して活用すりゃあ、すぐできるんじゃないの?と言ってはいるのです
が、どうも、私の会社は、Cの組み込みエンジニアが中心なため、C言語でMVCパター
ンを使って設計しようという意見の方が優勢です。
# といっても、オブジェクト指向を理解している人は皆無ですから、MVCでいきなり
# 設計はうまくいくはずないですけど。


で、ここからが本題です。皆さんに伺いたいのは、管理者権限、ユーザ権限のような
権限が異なるログインユーザでは、それぞれに見せる画面の内容を変えるようにした
いのです。例えば、グループの設定画面があるとします。管理者権限のログインユー
ザは、

1. グループ名:
2. グループ種別:longest waiting/rotary/collectiveなどが選択可
3. 所属ユーザ:2000,2001,2002など端末番号が複数入力可

という3つの項目が設定できるとします。しかし、ユーザ権限の人は、1しか設定でき
ない、つまり、2と3の項目は、グループ設定の画面に表示されないようにしたい。こ
ういったことを、Strutsで実現する場合は、どのように設計すればよいでしょうか?

私は、次のようなものしか浮かびませんでした。

1. ビューに相当するJSPを権限ごとに分ける。
   管理者権限グループ設定.jsp
   ユーザ権限設定.jsp

これだと、重複する部分が出てくるので、Viewの保守性がいまいちです。もっと他に
よい方法はないでしょうか?例えば、HTMLフォーム部品にログインユーザの権限を渡
して、権限により表示する/しないを制御できるようにするとか(Strutsでできます?)。
# C派はそのようなことを企んでいるようです。

ヒントとか、こんなソフトウェアパターンがあるよとか、そういったアドバイスが頂
けると幸いです。

以上、よろしくお願いします。


追伸:
ちなみに、Strutsを選んだのは、これを使えば、いやでもMVC2パターンで記述できる
から、ということと、開発要員の構成が

中堅プログラマ2名(ただしC言語のみ)
新人(相当)プログラマ3名

なので、Strutsのような、日本語の資料が豊富なフレームワークの方がよいだろうと
いうことの2点です。

-- 
Yan Kanai (ykanai@xxxxxxxxxxxxxxxxxxxxxx)