2011-12-26 134 views
4

私はエラーを取得する理由を私は理解していない:このコードが実行されるとなぜこのコードはエラー "The end tag"を生成する</c: "アンバランス"ですか?

The end tag "</c:when" is unbalanced

<c:choose> 
    <c:when test="${label == 'Apple'}"> 
     <form:form modelAttribute="fruit" action="/fruit/${fruitId}" method="post">     
     <form:input path="fruitId" type="hidden" value="${fruitId}"/> 
    </c:when> 
    <c:when test="${label == 'Orange'}"> 
     <form:form modelAttribute="fruit" action="/fruit/${fruitId}" method="post"> 
     <form:input path="fruitId" type="hidden" value="${fruitId}"/> 
    </c:when>    
</c:choose> 

答えて

6

あなたが閉じていない<form:form>タグを持っています。

+0

しかし、後でJSPでフォームタグを閉じることはできません。私はここでこの確認が必要です。これをここに持つ方法はありませんか? – Brian

+1

その後、フォームを先に開きます。スプリットフォームが本当に必要な場合は、必要に応じてJavaScriptを使用して値を設定します。 – ziesemer

+1

@Brianなぜそのチェックが必要ですか?両方のパスは同じです。いずれにしても、XMLやHTMLのようにタグをランダムに織り交ぜることはできません。 –

0

私のケースでは、JSTLコードをコメントアウトするためにHTMLコメント構文を使用していたことがわかりました。したがって、JSTL構文を含むhtmlファイルを再チェックして、同じ間違いをしたことを確認してください。 例以下を参照してください:コメントの下にコメント上記

<!-- <security:authorize access="hasAnyRole('ASSOC_COMPANY','PUBLIC_COMPANY', 'INDIVIDUAL')"> --> 

変更を。

<%-- <security:authorize access="hasAnyRole('ASSOC_COMPANY','PUBLIC_COMPANY', 'INDIVIDUAL')"> --%> 
関連する問題