次のページ 前のページ 目次へ

5. Java CGI クラスの使用

現在は CGI, Email, HTML の3つの主要クラスがサポートされています. さらに MIME 形式の入出力を扱うクラス(MIMEin と MIMEout)の追加を考えて います.

サポートとテストのためのクラスもいくつかあります. CGI_Test, Email_Test, HTML_Test はインストールが正常に行われているかどうかテストするために用います. これらのクラスはこのクラスライブラリを用いる Java プログラムを作るため の出発点としても利用できます. Text クラスはEmail クラスと HTML クラス両方のスーパークラスです.

5.1 CGI

クラスの文法

public class CGI

クラスについての説明

CGI クラスは「CGI 情報」つまり,WWW サーバによって設定される環境変数と submitアクションが選択された時にフォームから送られる名前/値の 組を保持します.

このクラスは``Orbits.net''パッケージに含まれます.

メンバの概略


        CGI()         //  コンストラクタ
        getNames()    //  名前のリストの取得
        getValue()    //  指定された名前に対応する値の取得

参照

CGI_Test

CGI()

目的

利用可能な CGI データを含むオブジェクトの生成

書式

public CGI()

説明

CGI オブジェクトが生成された時,利用可能な CGI 情報は新しい オブジェクトの局所メモリ領域に全て与えられる.

getNames()

目的

値と対になる名前を列として与える

書式

public Enumeration getNames ()

説明

対応する値が定義されている名前を全て含むリストを与える.

返り値

定義された名前を全て含む Enumeration

getValue()

目的

名前に対応するを得る.

書式

public String getValue ( String name )

説明

このメソッドは HTML の FORM より送られる名前 の対応を与える.

引き数

name

値を選択するためのキー.

戻り値

指定した名前に対応する値を示す String

5.2 CGI_Test

このクラスはCGIクラスの使用例の提示と,Java CGIパッ ケージが正しく動作しているか確認するテストのために用いる.

メンバの概略


        main()      //  Program main()

参照

CGI

main()

目的

main() メソッドを与える.

書式

public static void main( String argv[] )

説明

これは CGI プログラムの基本形であり,動作そのものは行わない が,利用可能な名前/値の組とその現在の値をリストとして返す.

引き数

argv[]

java.cgi スクリプトによってプログラム に与えられる引き数. 現時点では未使用である.

5.3 Email

クラスの文法

public class Email extends Text

Class Description

Text クラスの add*() メソッドとこのクラスが追加する 電子メール専用のメソッドによってメッセージを構成する.

このクラスは ``Orbits.net'' パッケージに含まれる.

メンバの概略


        Email()      //  コンストラクタ
        send()       //  電子メールを送信する
        sendTo()     //  メッセージにあて先を付ける
        subject()    //  メッセージのサブジェクトを設定する

参照

Email_Test, Text

Email()

目的

電子メールのメッセージを含むオブジェクトを生成する.

書式

public Email()

説明

空のメッセージを生成する.これは Email クラスの各メソッドに よって完成されたメッセージとなる.

参照

Text

send()

目的

電子メールのメッセージを送信する.

書式

public void send ()

説明

このメソッドはメッセージの書式を整えて送信する. 宛先が指定されていない場合には何も行わない.

sendTo()

目的

メッセージに宛先を追加する.

書式

public String sendTo ( String address )

説明

address にこのメソッドに対する宛先のリストを追加す る. メソッド自体は電子メールの宛先の数は制限しない. しかしリストが大きすぎる場合には,メール配送システムの制限を 越えたり,計算機のメモリを消費し尽くす可能性がある.

引き数

address

メッセージを送る宛先

subject()

目的

メッセージのサブジェクトを設定する.

書式

public void subject ( String subject )

説明

このメソッドは電子メールの Subject: 行のテキストを 設定する. 複数回呼び出された場合には,最も最後のものがサブジェクトとして用いられ る.

引き数

subject

メッセージのSubject: 行のテキスト

5.4 Email_Test

このクラスはEmailクラスの使用例の提示と,Java CGIパッ ケージが正しく動作しているか確認するテストのために用いる.

メンバの概略


        main()      //  Program main()

参照

Email

main()

目的

main() メソッドを与える.

書式

public static void main( String argv[] )

説明

これは CGI プログラムの基本形であり,利用可能な名前/値の組とその 現在の値をリストとして返す. また,Email変数で指定したアドレスへリストの内容を送信する.

パラメータ

argv[]

java.cgiスクリプトがプログラムに与え る引き数. 現時点では未使用である.

5.5 HTML

クラスの書式

public class HTML extends Text

クラスについての説明

Textクラスのadd*()メソッドとこのクラスによって追加す る HTML 専用のメソッドによってメッセージを作成する. 完成したメッセージは指定された場所に送られる.

現時点ではリスト生成メソッドが正しい順番で行われたことを確認するエラー チェックは実行していない.従って,HTML 文法違反とならないようにするの はプログラマの責任である.

このクラスは``Orbits.net''パッケージに含まれる.

メンバ概略


        HTML()                  //  コンストラクタ
        author()                //  文書の作者の名前を設定
        definitionList()        //  定義リスト開始
        definitionListTerm()    //  定義リストに項目を追加
        endList()               //  リスト終了
        listItem()              //  リストにエントリを追加
        send()                  //  HTMLメッセージを送る
        title()                 //  文書のタイトルを設定

参照

HTML_Test, Text

HTML()

目的

HTMLメッセージを持つオブジェクトを生成する

書式

public HTML()

説明

空のメッセージを生成する. メッセージはHTML クラスの各メソッドを用いて完成させる.

参照

Text

author()

目的

文書の作者の名前を設定する.

書式

public void author ( String author )

説明

authorに文書の作者の名前を設定する.

引き数

author

メッセージの作者として用いられるテキスト.

参照

title()

definitionList()

目的

定義リストを開始する.

書式

public void definitionList ()

説明

定義リストを開始する. 定義リストは特別なリストであり,各エントリーが項目名 とそれに続く定義テキストからなるリストである. 定義リストの開始の後には,(最低)1つの項目名/テキストの組の生成および endListメソッドの呼び出しを行わなければならない. 現在はリストを入れ子にしてはならない点に注意せよ.

参照

definitionListTerm(), endList(), listItem()

definitionListTerm()

目的

定義リストに項目を追加する.

書式

public void definitionListTerm ()

説明

定義リストに項目を追加する. リストの現在のエントリーの項目名に対するテキストは,このメソッドの呼び 出しよりも後,かつ対応するlistItemメソッドの呼び出しの前に追 加しなければならない.

参照

definitionList(), listItem()

endList()

目的

リストを終了する.

書式

public void endList ()

説明

リストを終了する. このメソッドはリストを閉じる. 現在はリストは入れ子になってはならない点に注意せよ.

参照

definitionList()

listItem()

目的

リストにエントリーを追加する.

書式

public void listItem ()

public void listItem ( String item )

public boolean listItem ( String term, String item )

説明

リストに項目を加える. 最初の書式が用いられると,現在のリスト要素に対するテキストは,このメ ソッドが呼び出されたよりも後,かつ他のリストに関するメソッドが呼び出さ れるよりも前にメッセージに追加されなければならない. 2番目,3番目の書式の場合には,要素に対するテキストはメッセージ に追加されないで(あるいは追加した上でさらに)メソッドの引き数として指定さ れる. 3番目の書式は定義リスト特有のものであり,項目名とリストのエントリーの 定義の両方を与える.

引き数

item

当該リストのエントリーのテキスト

term

当該定義リストのの項目名部分のテキスト

参照

definitionList(), definitionListTerm(), endList()

send()

目的

HTML メッセージを送る.

書式

public void send ()

説明

HTML メッセージを送る.

title()

目的

文書のタイトルを示すテキストを設定する.

書式

public void title ( String title )

説明

文書のタイトルを示すテキストを設定する.

引き数

title

メッセージのタイトルを示すテキスト

参照

author()

5.6 HTML_Test

このクラスはHTMLクラスの使用例の提示と,Java CGIパッ ケージが正しく動作しているか確認するテストのために用いる.

メンバの概略


        main()      //  Program main()

参照

HTML

main()

目的

main()メソッドを与える

書式

public static void main( String argv[] )

説明

これは CGI プログラムの基本形であり,HTML文書内で利用可能な 名前/値の組とその現在の値をリストとして返し,名前/値のそれぞれの組を定 義リストの要素として表示する.

引き数

argv[]

java.cgiスクリプトによってプログラム に与えられる引き数. 現時点では未使用である.

5.7 Text

クラスの書式

public abstract class Text

クラスについての説明

このクラスはEmail クラスと HTML クラスのスーパークラ スである. メッセージはこのクラスのメソッドによって生成され,各サブクラスのメソッ ドを使って完成させたり整形したりする.

このクラスは``Orbits.text''パッケージに含まれる.

メンバの概略


        Text()            //  コンストラクタ
        add()             //  オブジェクトにテキストを追加
        addLineBreak()    //  行句切りを追加
        addParagraph()    //  段落句切りを追加

参照

Email, HTML

add()

目的

テキスト項目にテキストを追加する.

書式

public void add ( char addition )

public void add ( String addition )

public void add ( StringBuffer addition )

説明

テキスト項目の内容にadditionを追加する.

引き数

addition

テキスト項目に追加するテキスト

参照

addLineBreak(), addParagraph()

addLineBreak()

目的

テキストの現在位置で行を区切る.

書式

public void addLineBreak ()

説明

テキストの現在位置に行句切りを追加する.

参照

add(), addParagraph()

addParagraph()

目的

新しい段落を開始する.

書式

public void add ()

説明

文章の現在位置から新しい段落を開始する.

参照

add(), addLineBreak()


次のページ 前のページ 目次へ