Если вы хотите выполнить некоторую проверку самостоятельно (или использовать функции проверки распорок, которые были реорганизованы из распорок более поздних версий, чем 1.2), вам понадобятся свойства String именно по той причине, по которой вы цитируете: как только вы сохраните числовые значения в Integer или значения int, они должны быть либо числами, либо "вообще ничего" - иначе: как бы вы хранили "много" (в буквальном смысле) в свойстве Integer?
Проверка на стороне клиента (например, в Javascript) все еще будет работать, но вы не хотите на это полагаться.
Если - при вводе неверного номера - вы согласны с тем, что пользователю представляется пустое поле, вы можете хранить значения в свойствах Date-, Integer-, Wh бы то ни было. Если вы хотите представить исходное значение в сообщении об ошибке, вам понадобится свойство String.
Здесь указана цена, которую вам нужно сделать вручную. Поскольку Struts 1.2 довольно старый, вы можете подумать о постепенной замене инфраструктуры приложений более современной технологией и работать на двух технологиях (старой и новой) одновременно, пока старая часть не станет достаточно маленькой (или неважной). достаточно) быть уроненным.
nb - вы также получаете больше контроля над тем, какие значения вы хотите принять в качестве чисел. Я до сих пор помню старое приложение для банковских карт в Struts, в котором я спросил моего менеджера, каков ожидаемый результат, когда вы захотите снять 3e2 евро с вашей карты. Они не сказали 300 (как преобразовал Struts), но выбрали ошибку.