最近の更新 (Recent Changes)

2014-03-13
2014-02-14
2012-11-26
2012-09-06
2012-09-05

最新リリース情報

blanco2g (blanco2g-0.6.0)2013-01-09 13:11
blancoAnt (blancoAnt-0.1.8)2009-08-16 21:49
blancoAntDistribution (blancoAntDistribution-0.0.2)2008-11-24 21:05
blancoAntTask (blancoAntTask)2012-05-28 21:08
blancoBatchProcess (blancoBatchProcess-0.6.1)2009-08-09 23:16
blancoBcel (blancoBcel-0.0.2)2006-12-14 21:07
blancoCg (blancoCg-1.5.5)2012-05-28 21:09
blancoCharacterGroup (blancoCharacterGroup-0.2.1)2009-01-20 13:33
blancoCodeGenerator (blancoCodeGenerator2-1.0.2)2006-07-24 22:15
blancoCommons (blancoCommons-1.1.5)2012-05-28 20:50
blancoConcreteSax (blancoConcreteSax-0.0.5)2006-04-15 08:47
blancoConstants (blancoConstants-0.9.3)2009-01-19 13:54
blancoCsv (blancoCsv-1.2.4)2011-02-07 14:30
blancoCsvDotNet (blancoCsvDotNet-1.1.0)2011-02-07 13:38
blancoDb (blancoDbEE-2.2.4)2014-03-12 17:30
blancoDbCommon (blancoDbCommon-0.2.3)2013-01-08 12:00
blancoDbDocListing (blancoDbDocListing-0.0.2)2006-12-12 20:46
blancoDbDotNet (blancoDbDotNet-0.7.4)2011-02-07 15:54
blancoDbMetaData (blancoDbMetaData-0.1.7)2012-05-29 13:14
blancoDbPhp (blancoDbPhp-0.1.3)2009-11-07 07:16
blancoDbTableAccessor (blancoDbTableAccessor-0.0.6)2012-04-30 11:28
blancoDbTest (blancoDbTest-1.3.8)2006-03-21 00:37
blancoDocListing (blancoDocListing-0.1.6)2006-04-28 05:12
blancoEclipseAST2Cg (blancoEclipseAST2Cg-0.5.1)2012-05-28 21:11
blancoEclipseNls (blancoEclipseNls-0.0.2)2009-05-18 18:24
blancoEclipsePluginGen (blancoEclipsePluginGen-0.1.4)2008-11-11 11:36
blancoEncryption (blancoEncryption-0.0.5)2009-05-01 08:30
blancoExcelApi (blancoExcelApi-0.0.6)2012-07-05 15:15
blancoFileManager (blancoFileManager-0.0.1)2014-02-28 16:35
blancoFileManagerPlugin (blanco.plugin.filemanager_0.1.5)2007-03-01 21:58
blancoFindbugsTmx (findbugs.messages.tmx-20080730)2008-07-30 11:27
blancoFindbugsUtil (blancoFindbugsUtil-0.0.1)2008-07-23 14:23
blancoFixedLength (blanco.plugin.fixedlength_0.4.2)2006-10-27 08:38
blancoHashtable (blancoHashtable-0.0.2)2007-04-25 21:07
blancoHtmlFormatter (blancoHtmlFormatter-0.0.3)2009-04-17 23:02
blancoHtmlNormalizer (blancoHtmlNormalizer-0.1.5)2009-08-09 23:17
blancoHtmlParser (blancoHtmlParser-0.1.8)2009-08-09 22:47
blancoIBatis (blancoIBatis-0.0.3)2008-12-11 20:36
blancoJni (blancoJni-0.0.3)2006-12-14 21:09
blancoJsf (blancoJsf-0.2.0)2010-04-15 16:48
blancoJUnit (blancoJUnit-0.0.1)2006-01-14 01:00
blancoLog (blancoLog-0.1.9)2012-05-28 20:52
blancoLogMessage (blancoLogMessage-0.0.9)2012-01-15 21:32
blancoMailCore (blancoMailCore-0.7.2.2)2012-05-29 10:24
blancoManifest (blancoManifest-0.0.1)2008-11-13 14:28
blancoMessage (blancoMessage-0.6.3)2012-05-28 20:55
blancoMeta2Xml (blancoMeta2Xml-0.1.4)2012-05-28 21:20
blancoNLpackGenerator (blancoNLpackGenerator-0.1.29)2009-11-08 23:17
blancoNLpackTmx (pleiades.tmx-1.3.3)2011-08-17 10:55
blancoNLpackXliff (blancoNLpackXliff-0.0.61)2009-03-26 11:41
blancoOmegatUtil (blancoOmegatUtil-0.1.7)2009-09-10 11:38
blancoPdf (blancoPdf-0.2.5)2010-04-14 14:09
blancoPleiadesUtil (blancoPleiadesUtil-0.0.6)2008-11-11 11:48
blancoProperties (blancoProperties-0.0.9)2008-11-11 11:51
blancoReport (blancoReport-0.7.3)2009-03-05 22:06
blancoResourceBundle (blancoResourceBundle-1.3.9)2011-02-07 13:43
blancoRss (blancoRss-0.0.1)2008-01-04 17:56
blancoSed (blancoSed-0.0.1)2008-03-24 22:22
blancoService (blancoService-0.1.2)2010-01-23 12:08
blancoSOAP (blanco.plugin.soap_1.0.9)2008-05-12 09:43
blancoSort (blancoSort-0.0.1)2008-12-24 12:23
blancoSqlEditorPlugin (blanco.plugin.sqleditor_1.0.0)2007-05-17 22:36
blancoSqlFormatter (blancoSqlFormatter-0.1.1)2008-12-04 22:29
blancoStringConverter (blancoStringConverter-0.3.2)2009-01-20 13:52
blancoStringGroup (blancoStringGroup-0.3.2)2009-01-20 14:17
blancoStruts (blanco.plugin.strutsee_0.7.4)2005-11-15 22:18
blancoSvnConf (blancoSvnConf-0.1.1)2009-01-15 11:04
blancoTerasolunaBLogic (blancoTerasolunaBLogic-0.0.2)2008-11-27 12:26
blancoTextConverter (blancoTextConverter-0.0.7)2007-12-27 08:26
blancoTmx (blancoTmx-0.1.1)2009-08-09 23:18
blancoTmxUtil (blancoTmxUtil-0.0.2)2008-11-11 13:38
blancoUnicodeUtil (blancoUnicodeUtil-0.0.1-I201205282044)2012-05-29 10:25
blancoValueObject (blancoValueObject-1.2.3)2012-05-28 20:57
blancoValueObjectDotNet (blancoValueObjectDotNet-0.5.4)2011-02-07 13:51
blancoValueObjectFactory (blancoValueObjectFactory-0.0.2)2007-09-20 20:57
blancoValueObjectPhp (blanco.plugin.valueobjectphp_0.0.5)2006-12-29 08:13
blancoWebCrawler (blancoWebCrawler-0.0.2)2007-10-24 22:33
blancoWsdl (blancoWsdl-0.1.3)2006-12-19 21:56
blancoXliff (blancoXliff-0.2.5)2009-08-09 23:19
blancoXliff2Tmx (blancoXliff2Tmx-0.0.5)2009-08-09 23:20
blancoXliffUtil (blancoXliffUtil-0.1.9)2009-08-09 23:22
blancoXmlBinding (blancoXmlBinding-0.2.5)2012-05-28 21:21
blancoXsd (blancoXsd-0.0.5)2006-05-23 23:49
integrationBuild (Subversive-1.0.0.I20120601-1700-blancofw)2012-06-26 11:10
nlpack.eclipse (juno-I201206281030)2012-06-28 10:44
nlpack.eclipse.checkstyle (checkstyle-I200808081200)2008-08-08 10:52
nlpack.eclipse.egit (org.eclipse.egit_1.0.0-I201109051930)2011-09-05 19:30
nlpack.eclipse.findbugs (findbugs-I200809300900)2008-09-30 10:03
nlpack.eclipse.misc (org.tigris.subversion.subclipse-1.6.18-I201108190940)2011-08-19 09:40
nlpack.eclipse.springide (springide-I200808061200)2008-08-06 11:50
nlpack.eclipse.wtp.wst (wtp-wst-sdk-R-3.1.2-20100211202452-I201008241900)2010-08-24 18:55
oss.net.balusc.jsf.upload (net.balusc.jsf.upload-20111014)2011-10-14 10:00

Wikiガイド(Guide)

サイドバー (Side Bar)

@BlancoValidateLength アノテーション

フィールドのための長さ検証メソッドを自動生成します。

仕様

適用箇所

  • フィールド
  • java.lang.String にのみ適用可能

アノテーション要素

要素名 デフォルト 説明
min String (なし) 最小長さ
max String (なし) 最大長さ

詳細

  • このアノテーションが付与されたフィールドに対して長さ検証用メソッドが生成されます。
  • 応用的に、@BlancoValidateMethodForStruts と組み合わせると、Struts 用の検証メソッドを追加で生成します。

利用の例

入力ソースコード: AbstractSampleForm.java

  1. package sample.struts;
  2. import org.apache.struts.action.ActionForm;
  3. import blanco.gettersetter.BlancoGetterSetter;
  4. import blanco.struts.BlancoStrutsForm;
  5. import blanco.struts.BlancoStrutsReset;
  6. import blanco.validate.BlancoValidateLength;
  7. import blanco.validate.BlancoValidateMethodForStruts;
  8. import blanco.validate.BlancoValidateRequired;
  9. /**
  10. * サンプル・フォーム。
  11. */
  12. @BlancoStrutsForm
  13. public abstract class AbstractSampleForm extends ActionForm {
  14. private static final long serialVersionUID = 1L;
  15. /**
  16. * 文字列のフィールド。
  17. */
  18. @BlancoGetterSetter
  19. @BlancoStrutsReset
  20. @BlancoValidateMethodForStruts
  21. @BlancoValidateRequired
  22. @BlancoValidateLength(max = 5)
  23. protected String field1 = "";
  24. /**
  25. * 整数のフィールド。
  26. */
  27. @BlancoGetterSetter
  28. protected int field2 = -1;
  29. }

出力ソースコード: SampleForm.java ★以下のソースコードは Blanco2g によって自動生成されたものです。

  1. /*
  2. * このクラスは 'AbstractSampleForm' の具象クラスとして blanco Framework によって自動生成されました。
  3. */
  4. package sample.struts;
  5. import javax.servlet.http.HttpServletRequest;
  6. import org.apache.struts.action.ActionMapping;
  7. import org.apache.struts.action.ActionMessage;
  8. import org.apache.struts.action.ActionMessages;
  9. import blanco.fw.BlancoGeneratedBy;
  10. /**
  11. * サンプル・フォーム。
  12. */
  13. @BlancoGeneratedBy(name = "Blanco2g")
  14. public class SampleForm extends AbstractSampleForm {
  15. /**
  16. * シリアルバージョン UID.
  17. */
  18. private static final long serialVersionUID = 1L;
  19. /**
  20. * リセット
  21. *
  22. * @param mapping アクション・マッピング.
  23. * @param request リクエスト.
  24. */
  25. public void reset(final ActionMapping mapping, final HttpServletRequest request) {
  26. field1 = "";
  27. }
  28. /**
  29. * 文字列のフィールド。
  30. * [@BlancoGetterSetter]
  31. *
  32. * @return 取得したい値。
  33. */
  34. public String getField1() {
  35. return field1;
  36. }
  37. /**
  38. * 文字列のフィールド。
  39. * [@BlancoGetterSetter]
  40. *
  41. * @param field1 設定したい値。
  42. */
  43. public void setField1(final String field1) {
  44. this.field1 = field1;
  45. }
  46. /**
  47. * 文字列のフィールド。
  48. * [@BlancoValidateRequired]
  49. * [@BlancoValidateLength]
  50. *
  51. * @return 検証結果の文字列。問題なければ null。
  52. */
  53. public String validateField1() {
  54. // [@BlancoValidateRequired]
  55. if (field1 == null || field1.trim().length() == 0) {
  56. return "'field1' に値が入力されていません。";
  57. }
  58. // [@BlancoValidateLength]
  59. {
  60. final String value = (field1 == null ? "" : field1.toString());
  61. if (value.length() > 5) {
  62. return "'field1' は 5 文字以下で入力してください。";
  63. }
  64. }
  65. return null;
  66. }
  67. /**
  68. * 文字列のフィールド。
  69. * [@BlancoValidateMethodForStruts]
  70. * [@BlancoValidateLength]
  71. *
  72. * @param actionMessages Apache Struts ActionMessages
  73. * @return 検証結果が問題無しであれば true。検証結果に問題あれば false。
  74. */
  75. public boolean validateField1(final ActionMessages actionMessages) {
  76. // [@BlancoValidateRequired]
  77. if (field1 == null || field1.trim().length() == 0) {
  78. final ActionMessage msg = new ActionMessage("message.blanco.validate.required.input", "field1");
  79. actionMessages.add("WARN", msg);
  80. return false;
  81. }
  82. // [@BlancoValidateLength]
  83. {
  84. final String value = (field1 == null ? "" : field1.toString());
  85. if (value.length() > 5) {
  86. final ActionMessage msg = new ActionMessage("message.blanco.validate.length.max", "field1", "5");
  87. actionMessages.add("WARN", msg);
  88. return false;
  89. }
  90. }
  91. return true;
  92. }
  93. /**
  94. * 整数のフィールド。
  95. * [@BlancoGetterSetter]
  96. *
  97. * @return 取得したい値。
  98. */
  99. public int getField2() {
  100. return field2;
  101. }
  102. /**
  103. * 整数のフィールド。
  104. * [@BlancoGetterSetter]
  105. *
  106. * @param field2 設定したい値。
  107. */
  108. public void setField2(final int field2) {
  109. this.field2 = field2;
  110. }
  111. }

追加情報

Apache Struts Form との組合: 追加メッセージ

Apache Struts Form と組み合わせる場合には、以下のメッセージを追加で設定する必要があります。

キー メッセージ 説明
message.blanco.validate.length.minmax 「{0}」は {1} 文字以上 {2} 文字以下で入力してください。 最小・最大を指定
message.blanco.validate.length.minmax.locationinfo {0}「{1}」は {2} 文字以上 {3} 文字以下で入力してください。 @BlancoValidateMessage(useLocationInfo = true) により位置情報を追加した場合
message.blanco.validate.length.fixed 「{0}」は {1} 文字で入力してください。 最小・最大を指定し、値が一致している場合
message.blanco.validate.length.fixed.locationinfo {0}「{1}」は {2} 文字で入力してください。 @BlancoValidateMessage(useLocationInfo = true) により位置情報を追加した場合
message.blanco.validate.length.min 「{0}」は {1} 文字以上で入力してください。 最小を指定
message.blanco.validate.length.min.locationinfo {0}「{1}」は {2} 文字以上で入力してください。 @BlancoValidateMessage(useLocationInfo = true) により位置情報を追加した場合
message.blanco.validate.length.max 「{0}」は {1} 文字以下で入力してください。 最大を指定
message.blanco.validate.length.max.locationinfo {0}「{1}」は {2} 文字以下で入力してください。 @BlancoValidateMessage(useLocationInfo = true) により位置情報を追加した場合

Apache Struts Form との組合: 追加処理

  • メッセージに "WARN" という追加のグループを設定する必要があります。

リンク