定義環境變量 用XML在組件的部署描述符文件中定義環境變量。假如使用部署工具(例如J2EE參考實現所帶的部署工具程序),你就可以用GUI方式確定部署描述符。但是下面我們還是假定用文本編輯器手工編輯部署描述符。 環境變量有四個部分: · 描述: 定義在scription> tag 內的一個串。 · 名稱:定義在<env-entry-name> tag內的一個串。 · 值:定義在<env-entry-value> tag內的一個值。 · 類名:定義在<env-entry-type> tag內的環境變量的類型 描述是可選的文字描述,出現在部署工具的用戶界面上。它告訴部署者在確定環境實體引用時做什么。換句話說,它是一個可讀描述,告訴部署者如何填寫其他值。它也告訴部署者這個環境變量是否是可選的。 環境變量的名稱是相對于JNDI上下文名“jndi:comp/env”的,組件用名稱查找環境變量。所有環境變量都由它們的容器在JNDI上下文中注冊。 環境變量的值是環境變量應取的值,格式是字符串。除了表示單個字符的類型java.lang.Character以外,答應作為環境變量的所有類型都有以串作為參數的構造函數。Env-entry-value tag包含了用于值的構造函數的串。 環境變量的類型是環境變量值的類型類名。必須是下面的類型之一: l java.lang.Boolean l java.lang.Byte l java.lang.Character l java.lang.Double l java.lang.Float l java.lang.Integer l java.lang.Long l java.lang.Short l java.lang.String
SMTP主機例子中的環境變量可以象下面這樣: <env-entry> <description> Enter the host name for sending email </description> <env-entry-name>SMTP Host Name</env-entry-name> <env-entry-value> homer.sPRingfield.ma.us </env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
<env-entry> <description>SMTP port number for email </description> <env-entry-name>SMTP Port</env-entry-name> <env-entry-value>2101</env-entry-value> <env-entry-type>java.lang.Integer</env-entry-type> </env-entry>
<env-entry> <description> User authentication for SMTP server </description> <env-entry-name>SMTP User</env-entry-name> <env-entry-value>bart</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
<env-entry> <description> PassWord for SMTP user </description> <env-entry-name>SMTP Password</env-entry-name> <env-entry-value>D'oh!</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>