Apache チュートリアルに従いましたが、次のコードでエラーが発生します。
エラー>>>>
Caused by: org.xml.sax.SAXParseException; systemId:
file:/C:/Users/target/Project-1.0/WEB-
INF/classes/struts.xml; lineNumber: 53; columnNumber: 15; The content of element type "package"
must match "(result-types?,interceptors?,default-interceptor-ref?,default-action-ref?,default-
class-ref?,global-results?,global-exception-mappings?,action*)".
アクションとパッケージが正しく定義されていることに注意してください。リダイレクト コードをコピーすると、エラーが発生します。コード
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="UnderConstruction"></default-action-ref>
<action name="UnderConstruction">
<result>notFound.jsp</result>
</action>
<result-types>
<result-type name="tiles" class="org.apache.struts2.views.tiles.TilesResult"/>
</result-types>
<action ....>
</action>
,,,
</package>
次の行を変更すると
<result>notFound.jsp</result>
に
<result type="tiles">notFound.jsp</result>
アプリケーションは実行されますが、間違ったアドレスを入力すると notFound.jsp ページが表示されず、見つからないアクションの例外がスローされます。
次のコードを試すと、アプリケーションは実行されますが、間違ったリクエストを建設中のページにリダイレクトしません
<package name="default" namespace="/" extends="struts-default">
<result-types>
<result-type name="tiles" class="org.apache.struts2.views.tiles.TilesResult"/>
</result-types>
<action ....>
</action>
,,,
</package>
<package name="Hello" extends="struts-default">
<default-action-ref name="UnderConstruction"></default-action-ref>
<action name="UnderConstruction">
<result>notFound.jsp</result>
</action>
</package>