FAQ

Teeda

インクルードしたhtmlで前ページからのプロパティを参照したい

Tomcat起動時にParserConfigurationExceptionが発生する

Tomcat起動時に次のようなエラーが発生する場合、

org.seasar.framework.exception.ParserConfigurationRuntimeException: [ESSR0053]パーサの設定に問題があります。理由はjavax.xml.parsers.ParserConfigurationException: Feature 'http://apache.org/xml/features/xinclude' is not recognized.

$TOMCAT/common/endorsedにある、xercesImpl.jarとxml-apis.jarを削除してください。 (Tomcat 5.5.20で確認)

TeedaExtensionでFormにInputTextが一つしかないとsubmit時にname属性が飛ばない。

以下のように、formに1つのInputTextしか無い場合に、inputTextにfocusして

Enterキーを押すとname属性がわたらず、doXxxが呼ばれない。

この現象はIEの場合のみ発生する。

<form id="form">
<span>hogehoge</span>
<input type="text" id="arg1" title="INPUT1" />
<input type="submit" value="calculate" id="doCalculate"/>
</form>

これを解消するには、

<input type="text" style="display: none"/>

をひとつ追加する

TeedaをWAS6.1で動かす

TeedaをWAS6.1で動かすには、

動的にHTMLタグの属性を設定を行うには

DynamicPropertyを使用してください。

http://teeda.seasar.org/ja/extension_features.html#dynamicproperty

TeedaのPageClass からコンポーネントをスコープに置くには [Seasar-user:5581]

service,dtoなどの適当なパッケージにコンポーネントを作り、

@Component(instance=InstanceType.SESSION)
public class ...

のようにインスタンス属性を指定してください。

個別の例外に応じてエラーページを設定する

teedaErrorPage.diconに個別の例外に応じてエラーページの設定を記述します。

<component class="org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl">
<!--ここから追加-->
   <initMethod name="addErrorPage">
       <arg>@org.seasar.framework.exception.SRuntimeException@class</arg>
       <arg>"/view/error/custome.html"</arg>
   </initMethod>
<!--ここまで-->
   <initMethod name="addErrorPage">
       <arg>@java.lang.Throwable@class</arg>
       <arg>"/view/error/error.html"</arg>
   </initMethod>
</component>

この場合、個別の例外の設定のほうが上にくるようにしてください。

NullLabelの「選択してください」という文面を変更するには

propertiesで切り替えることが出来ます。

まずpropertiesファイルを作成して、faces-config.xmlに定義します。 (名前は一般的には、appMessages.propertiesがよく使われます) このあたりはteeda-html-exampleを参考にしてください。

そこに、 org.seasar.teeda.extension.component.TSelect.NULL_LABEL というキーで値を設定すればこのNULLラベルが使用されます。

Pageクラスでrequest/response/session/context/FacesContextを使用するには

pageクラスに、以下のプロパティを用意してください。

クラスプロパティ名
HttpServeltRequest-
HttpServeltResponse-
HttpSession-
ServletContext-
FacesContextfacesContexgt

Pageクラスから直接エラーメッセージを設定する

javax.faces.internal.FacesMessageUtilを使用して、

FacesMessageUtil.addErrorMessage("E0000002");

のようにしてください。

メッセージは、 WEB-INF/faces-config.xmlで指定したプロパティファイルに記述します。

実体参照を表示するには

例えば半角スペースを表示したい場合、

&amp;nbsp;

となります。

conditionコンポーネントの<div>タグにDynamicPropertyを設定したい

<div id ="isNotCreate" style="〜">

なタグにDynamicPropertyを設定する場合、

public String getIsNotCreateStyle() {
 //略
}

となります。

静的HTMLをTeedaの処理対象から外す

TeedaはHTMLファイルをXMLとして解析するので、静的なHTMLをそのまま出力する場合にXMLとしてwell-formedでないと例外になります。

静的なHTMLは拡張子を.htmにすれば、Teedaの処理対象ではなくなるのでひとまず出力することができます。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS