2009-04-23 7 views
0

ユーザーが以前にHTTPでセッションを記入したフォームフィールドを再作成しています。私は、サーブレットを通じてフォームからフィールドをつかんでいます:WhiteSpaceフォームテキストボックス

//On servlet 
String polyNum = request.getParameter("policyNum") 
session.setAttribute("policyNum", polyNum); 

//On JSP 
<td align = "right"><font color = "#FF0000">*</font><font face= "Calibri, Arial" size = "3"> Policy #:</font></td> 
<td><input type="text" name= "policyNum" size="19" tabindex = "1" value=" 
<% out.println(session.getAttribute("policyNum");%>"> 

問題:私は私のJSPページを実行すると、私は、フォームのテキストボックスで先頭の空白を取得します。したがって、私がフォームを提出すると、空白がデータベースにも挿入されます。

アイデア?どんな助けでも大歓迎です。

答えて

0

Stringクラスで.trim()メソッドを見てみましょう:

http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html#trim()

"を省略先頭と末尾の空白で、文字列のコピーを返します。"

+0

私はトリム方法を試しましたが、成功しませんでした。空白がフォームのテキストボックスにある場合は、jsp内でtrimメソッドを使用する必要がありますか? –

+0

あなたは答えを見つけてうれしいです。私は彼らが前後にどのように見えるのか不思議です。完全性のために投稿することができますか? –

1

あなたはこのようにそれをトリミングすることができます

String polyNum = request.getParameter("policyNum"); 
polyNum = polyNum == null ? null : polyNum.trim(); 
session.setAttribute("policyNum", polyNum ); 

とあなたのJSPが

<input type ="text" value=" 
<%= session.getAttribute("policyNum"); %> 
"/> 

のように見える場合は、空白文字を取得します。

また、データベースに入力する場所を表示しないでください。

0

Apache Commons StringUtilsライブラリは、nullを処理するときにトリミングするのに適しています。

ので

String polyNum = request.getParameter("policyNum"); 
polyNum = polyNum == null ? null : polyNum.trim(); 

String polyNum = StingUtils.stripToEmpty(request.getParameter("policyNum")); 
0

になることができますそれは私のJSPページ内の私のスクリプトレットがsyntanically間違って配置したことが判明しました。私は結局空白を整える必要はありませんでした。私のフォームは今は正常に動作しています。

あなたのApacheライブラリに関するあなたのソリューションは興味深いDamoです。私はあなたのフィードバックに感謝します。