ネタ心者歓迎!今更ながらにJava相談室 その4
■ このスレッドは過去ログ倉庫に格納されています
0356デフォルトの名無しさん
NGNG繁盛しているこっちに書かせてください。
今Servletを作っているんですが、その中で入力パラメータの禁止文字チェックやってます。
で、Tomcatでは以下のコードでうまくいってたのですが、IBMのWebSphereに移行したら
2バイト文字が全部禁止文字としてひっかかるようになってしまいました。
これって、あまりよいやり方じゃないんでしょうか?
もっとどのAPサーバに持っていっても汎用的に使える方法ってあるんでしょうか?
以下ソース。
String str = request.getParameter( "text" );
isvalid = new String( str.getBytes( "8859_1" ), "JISAutoDetect" );
java.text.StringCharacterIterator sci = new java.text.StringCharacterIterator( isvalid );
for( char c = sci.first(); c != java.text.CharacterIterator.DONE; c = sci.next() ) {
if( "<>&\"\';^[:]\\,!#$%()=|{`+*}?".indexOf( ( int )c ) != -1 ) {
throw new Exception( "記号文字を入力することはできません。" );
}
}
■ このスレッドは過去ログ倉庫に格納されています