とらぶりゅうは13章まであるらしい。
フィルタでエラー
java.lang.NullPointerException at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:286)
struts-config.xmlのform-beanにフォームが設定されていないから作れないということ。struts-config.xmlを確認すること。フィルタでエラーがでるのは、遷移先がおかしいのでフィルタででちゃう。
JSTLでタグの属性にEL式を書くとエラー
<c:out value="${param.id}" />
みたいに使えなかった。どうもweb.xmlがServlet2.3になっていたようだ。2.3ではデフォルトでEL式が動かないらしい。
<?xml version="1.0"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
これを2.4にする。
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
Action[/login]でキーメソッドマップの中にリソース {1} が見つかりません
メッセージリソースが見つからなかった。
Path XXXXXX does not start with a “/” character
tilesの定義名が有効にならない。XXXXXXにはtilesで定義した値(topとか)が入る。struts-config.xmlのActionタグでpath属性にtilesの定義名を指定すると以下のエラーが発生する。
警告: Unhandled exception java.lang.IllegalArgumentException: パス top が"/"文字で始まりません
java.lang.IllegalArgumentException: Path top does not start with a "/" character
ためしにJBossを動かしてみると以下のエラーがでていることがわかった。
00:40:41,679 ERROR [STDERR] 2007/02/18 0:40:41 org.apache.struts.validator.ValidatorPlugIn initResources 情報: Loading validation rules file from '/org/apache/struts/validator/validator-rules.xml' 00:40:41,679 ERROR [STDERR] 2007/02/18 0:40:41 org.apache.struts.validator.ValidatorPlugIn initResources
調べること2日
原因は不明だが解決策は判明。
http://sabrenews.blogspot.com/2007/01/javaxservletservletexception-path.html
web.xmlのActionServletに以下のパラメタを追加する。
<init-param> <param-name>chainConfig</param-name> <param-value> org/apache/struts/tiles/chain-config.xml </param-value> </init-param>
実物のchain-config.xmlは以下のフォルダにある。上記ではクラスパスで指定している。
//struts-1.3.5-all.zip struts-1.3.5/src/tiles/src/main/resources/org/apache/struts/tiles
これでなんでできるかは謎。WebLogic9.1Jではエラーが出てなかった気がするんだけどねー。
Module ‘null’ not found.
web.xmlでActionServletにload-on-startupを指定しないと初期化に失敗する。この要素は必須。
<load-on-startup>1</load-on-startup>