<session-config> <session-timeout>1</session-timeout> </session-config>
未整理
Firefoxだと問題なくメソッドが実行できる。 しかし、IEだとメソッドが実行できず、エラーになってしまう。
f:url('')を使用すると、jsessionidが付与されることがある。(初期アクセス時など) ajaxのurlが意図したもとの違ってしまい 404 エラーが出ることがある。
"?redirect=true"でjsessionidが付与されないようにするとよい。
public class XxxAction { @Execute(validator = false, urlPattern = "changeCode/{code}") public String changeCode() { List<CodeDto> list = new ArrayList<CodeDto>(); CodeDto dto = new CodeDto(); dto.id = value.substring(2, 8); dto.name = label; list.add(dto); String json = JSON.encode(list); ResponseUtil.write(json); return null; } }
<script src="${f:url('/js/jquery.js')}"></script> <script type="text/javascript"> <!-- function combo_onchange(code) { $.ajax({ type: "POST", dataType: "json", url: "${f:url('changeCode')}" + "/" + code, success: function (data, textStatus, jqXHR) { alert("data.length:[" + data.length + "]"); for(var index = 0; index < data.length; index++) { alert(data[index].id + ":" + data[index].name); } }, error: function(jqXHR, textStatus, errorThrown) { alert(jqXHR.responseText); } }); } // -->