私は春にサービスを開発しており、サービスはJBOSS7.1.0でデプロイされました。リクエストマッピングのサンプルコード:
@RequestMapping(value=/state, method=RequestMethod.GET)
public ResponseEntity<ListStatesResponseVO> getListOfStates(@RequestParam(required=false) Long id,
@RequestParam(required=false) Long page,
@RequestParam(required=false) Long pagesize);
私の問題は、リクエストパラメータで特殊文字を渡すと、有効なxml応答が返されることですが、私の理解によれば、「400BADREQUEST」が返されるはずです。
サンプルURI:
http://localhost:8080/location-services/location/api/state?id=$%^$^$#$%^$%
私も追加しました
<property name="org.apache.catalina.connector.URI_ENCODING" value="UTF-8"/>
<property name="org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING" value="true"/>
JBOSSのstandalone.xml内。
そしてまた
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<!-- set forceEncoding to true if you want to override encoding of servlet -->
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
web.xml内。
しかし、これらは問題を解決しません。
これに利用できる解決策はありますか?前もって感謝します。