struts-html を使用してフォーム フィールドを生成します。
例えば:
<%@ taglib prefix="html" uri="/WEB-INF/taglibs/struts-html.tld" %>
<html:text property="email" styleId="email" size="44"/>
生成:
<input type="text" name="email" size="44" value="" id="email">
上記のように、生成された入力タグは閉じられていません。これにより、html が無効になります。
struts-html.tld には以下が含まれます。
<tlibversion>1.2</tlibversion>
<jspversion>1.1</jspversion>
<shortname>html</shortname>
<uri>http://struts.apache.org/tags-html</uri>
生成された入力が閉じられない理由を誰かが知っていますか? 新しいバージョンはありますか?どこでダウンロードできますか?
私は使用してみました:
<html:html xhtml="true">
次のようにレンダリングされます。
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
ただし、入力タグが閉じられずにレンダリングされ続けます。
解決:
次のタグを使用します。
<html:xhtml/>
注:私のように Tiles を使用する場合は、含まれている JSP 内で直接使用してください。基本テンプレート ファイルから継承されません。
注: xhtml モードでは、html:form タグ内で sytleId を使用できません。Bean の名前を格納するために id プロパティが自動的に生成されるため、問題はありません。