2014-08-20 2 views
0

Я просто спрашиваю, правильно ли это выражение, я получаю сообщение об ошибке Unterminated < sql: param tag, когда он закрыт.El выражение, передающееся как значение в другое выражение el

Я просто хочу знать, что это выражение верно.

<sql:param value="<fmt:formatDate value="${date}" dateStyle="full"/>" 

и это не работает, почему

<fmt:parseDate var="date" value="${param.month}, ${param.day}, ${param.year}" type="DATE" 
pattern="dd/mm/yyyy" /> 
+0

Вы не можете вставлять такие теги JSP, как вы не можете использовать тег XML в атрибуте другого тега. –

+0

спасибо Dave Newton – danishjan

ответ

1

JSPX должен быть хорошо сформированным XML. Вложенные XML-подобные теги действительно недействительны.

Просто используйте атрибут var тега <fmt:formatDate>, чтобы создать переменную области, которую вы, в свою очередь, можете отнести в другой тег.

<fmt:formatDate value="${date}" dateStyle="full" var="formattedDate" /> 
<sql:param value="${formattedDate}" /> 

Что касается вашего <fmt:parseDate> попытки, это не удалось, так как шаблон, который вы указали в value атрибута не соответствует шаблону, который вы указали в pattern атрибута. Вы в основном указываете шаблон MM, dd, yyyy на значение, в то время как шаблон ожидает dd/mm/yyyy. Также обратите внимание, что mm означает минуты, а не месяцы. Вам нужны MM в течение нескольких месяцев.

Просто убедитесь, что они совпадают.

<fmt:parseDate var="date" value="${param.month}/${param.day}/${param.year}" pattern="MM/dd/yyyy" /> 

См. Также the SimpleDateFormat javadoc для получения подробной информации о шаблонах.

+0

Спасибо большое BalusC – danishjan

Смежные вопросы