|
|
|
Дата и DynaActionForm
|
|||
|---|---|---|---|
|
#18+
Ситуация такая: есть форма <form-bean name="violationForm" type="org.apache.struts.action.DynaActionForm"> <form-property name="violation" type="violation.model.Violation"/> </form-bean> где Violation - это бин, некоторые поля которого имеют тип java.sql.Date Соответственно когда вводим в формочку дату в формате YYYY-MM-DD, то все хорошо, а когда оставляем поле пустым, то она ругается, тк видимо пытается пребразовать к дате пустую строчку. Можно ли с этим что-то поделать? Может, поможет Validator? Если это вариант, то как прописать правила в validation.xml? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2005, 11:41 |
|
||
|
Дата и DynaActionForm
|
|||
|---|---|---|---|
|
#18+
Во-первых, как ругается? Во-вторых, javascript тебе поможет ;) (простая проверка перед submit'ом) с validator'ом (интуитивно) думаю не пройдет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2005, 11:02 |
|
||
|
Дата и DynaActionForm
|
|||
|---|---|---|---|
|
#18+
Ругается примерно вот так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. Вообще, действительно склоняюсь к мысли про javascript, но проблема в том, что я его не знаю, во-первых, и во-вторых, если принудительно запихнуть вместо пустой строчки(а такая ситуация возможна) null, мне все равно кажется, что он ругнется, когда попытается преобразовать его к дате. Ну неужели эта проблема не решается как-то более изящно? Ну не верю я, тем более что в книжках этот DynaActionForm активно пропагандируется вместо простого ActionForm. Может быть можно в struts-confige как-то указать значение по умолчанию для формы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2005, 12:57 |
|
||
|
Дата и DynaActionForm
|
|||
|---|---|---|---|
|
#18+
я совсем не знаю стратс, но неужели в каком то там валидаторе или конверторе нельзя сделать так: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2005, 13:28 |
|
||
|
Дата и DynaActionForm
|
|||
|---|---|---|---|
|
#18+
В том-то и проблема, что сначала он пытается преобразовать к дате и где-то там сохранить, а только потом происходит валидация. Можно конечно покопаться в стратсовских исходниках, но как-то грустно, я посмотрела - слишком уж глубоко копать:( . Может в java/sql какое-то значение даты, которое воспринимается как undefined?.. Его можно тогда было бы подставлять javascriptом на стороне клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2005, 14:28 |
|
||
|
Дата и DynaActionForm
|
|||
|---|---|---|---|
|
#18+
FarlenВ том-то и проблема, что сначала он пытается преобразовать к дате и где-то там сохранить, а только потом происходит валидация. Можно конечно покопаться в стратсовских исходниках, но как-то грустно, я посмотрела - слишком уж глубоко копать:( . Может в java/sql какое-то значение даты, которое воспринимается как undefined?.. Его можно тогда было бы подставлять javascriptом на стороне клиента. Валидации в DynaActionForm не происходит, если нужна,то для DynaActionForm нужно валидатор от стратса подключать. Или надо наследника от DynaActionForm писать и метод validate переписывать. проверку нужно делать обязательно. а что если юзер поле не пустым оставит,а какую-нить билеберду задаст? еще можно сделать из java.sql.Date String и проверку в Action проводить. А почему бы не воспользоваться обычной ActionForm? Всё упростится само собой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2005, 16:06 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33321903&tid=2151242]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 485ms |

| 0 / 0 |
