2012-05-06 3 views
0

я добавляю проверку логики в перегруженном методе действует в моем действии ExpenseManagerAction.java, как показано ниже:сообщение проверки не может быть отображено

public void validate(){ 
    if (!StringUtil.matchDateString(expense.getTempDate())) { 
     addFieldError("expense.tempDate","Date format is invalid"); 
    } 
} 

и мое содержание СПЯ является следующим:

<s:form action="expenseManagerAction" method="post" theme="simple"> 
    <table width="80%" align="center" border="1" > 
     <tr> 
      <td width="50%">Expense ID</td> 
      <td align="left"> 
       <s:textfield name="expense.expenseId" /> 
      </td> 
     </tr> 
     <tr> 
      <td>PaymentItem</td> 
      <td align="left"> 
       <s:textfield name="expense.paymentItem" />    
      </td> 
     </tr> 
     <tr> 
      <td>Comments</td> 
      <td align="left"> 
       <s:textarea name="expense.comments" rows="10" cols="30" /> 
      </td> 
     </tr> 
     <tr> 
      <td>PaymentDate</td> 
      <td align="left"> 
       <s:textfield name="expense.tempDate" cssClass="Wdate" /><!-- onClick="WdatePicker()" --> 
      </td> 
     </tr> 
     <tr> 
      <td>Price</td> 
      <td align="left"> 
       <s:textfield name="expense.price" /> 
      </td> 
     </tr> 
     <tr> 
      <td>Quantity</td> 
      <td align="left"> 
       <s:textfield name="expense.quantity" /> 
      </td> 
     </tr> 
     <tr> 
      <td colspan="2" width="100%"> 
       <p>Expert Search(Double click to magnify it)</p> 
       <s:textarea onmouseover="showTooltip();" tooltip="Double click to magnify it" rows="1" cols="100" id="advanced" name="expertCondition" ondblclick="openExpertSearchWindow();"></s:textarea> 
      </td> 
     </tr> 
     <tr> 
      <td colspan="2" align="center"> 
       <s:submit type="button" action="expenseManagerAction_smartSearch" value="smartSearch" /> 

       <s:submit type="button" action="expenseManagerAction_reset" value = "Reset" /> 
       <s:submit type="button" id="btnExpSearch" action="expenseManagerAction_search" value = "Expert Search" /> 
      </td> 
     </tr> 
    </table> 
</s:form> 

При вводе недопустимого символа «a» в текстовом поле «Дата платежа» нажмите кнопку «SmartSearch», я могу увидеть оператор addFieldError («cost.tempDate», «Формат даты недействителен»); был выполнен, когда я его отлаживаю, но сообщение об ошибке не может быть отображено в форме, я не знаю, как ее решить.

ответ

0

Варианты включают в себя:

  • Переопределение тему на основе каждого поля
  • Не используя простую тему для формы
  • Создание пользовательской темы
  • ошибки визуализации полей вручную
Смежные вопросы