[Seasar-user:18774] Re: [SAStruts] リクエストパラメータが配列になっている場合とアクションのインスタンスがないというエラーについて

decoy [E-MAIL ADDRESS DELETED]
2009年 10月 26日 (月) 15:43:52 JST


ひが様

decoyです。

お忙しい中、ご回答頂き有難う御座います。


> aaa[]のように配列のインデックスがついていないのが原因です。
> インデックスをつけるか
> aaa=bbb&aaa=cccのように普通の配列パラメータを使ってください。

上記のようにする事でエラーは表示されなくなりますが
クライアント(利用者)が下記のようなパラメータをつけてアクセスしてきた場合に
500エラーになるのを対処したいと考えております。

クライアントが下記のようなパラメータを勝手につけてアクセスしてきたとしても
エラーを表示させないようにする(下記のような配列になっているパラメータを無視する、つけていない場合のアクセスと同じとみなす)にはどのようにすれば宜しいでしょうか。

http://example.jp/sa-struts-tutorial/?aaa[]=bbb
http://example.jp/sa-struts-tutorial/?aaa[bbb]=ccc
http://example.jp/sa-struts-tutorial/?aaa['']=5678


> RequestUtilは直に呼び出してください。DIの対象ではありません。

上記、了解です。

以上、宜しくお願い致します。

// decoy



2009年10月26日10:14 Yasuo Higa <[E-MAIL ADDRESS DELETED]>:
> ひがです。
>
>> decoyです。
>>
>> SAStrutsのチュートリアルを動かしながら、いろいろ試しているのですが
>> そこで二点ほどご教授頂きたい点(わからない点)が御座います。
>>
>>
>> 1. リクエストパラメータに配列が渡ってきた場合
>>
>> どうしてもexceptionが発生してしまいます。
>>
>> 例えば下記のような場合です。
>> http://example.jp/sa-struts-tutorial/?aaa[]=bbb
>>
>> リクエストに関して特に何かしているわけではないのですが
>> 上記のようなパラメータをつけてアクセスされただけでtomcatのエラー画面になってしまいますので
>> どのアクションが呼ばれてもexceptionを発生させないようにするには
>> どのようにすれば宜しいでしょうか。
>>
> aaa[]のように配列のインデックスがついていないのが原因です。
> インデックスをつけるか
> aaa=bbb&aaa=cccのように普通の配列パラメータを使ってください。
>>
>>
>> 2. HTTPステータス 500 - パス /○○ に対するアクションのインスタンスがありません
>>
>> 例えばリクエスト関係の処理をしようと思って import org.seasar.struts.util.RequestUtil; とした後、
>>
>> @Resource
>> protected RequestUtil requestUtil;
>>
> RequestUtilは直に呼び出してください。DIの対象ではありません。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


Seasar-user メーリングリストの案内