Struts 1.3アプリケーションでAjaxコールがあり、有効なXMLをブラウザに返すのに問題があります。 XMLの内容は正しく返送されていますが、ブラウザは依然として応答タイプをtext/htmlとして再設定します。コンテンツタイプtext/xmlをStruts 1.3のブラウザに出力するには
私のアクションクラスは、次のようになります
public ActionForward newContractCAUAjax(ActionMapping actionMapping,
ActionForm actionForm, HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse)throws Exception {
String target="forwardToCAUXML";
DynaActionForm dynaActionForm = (DynaActionForm) actionForm;
httpServletResponse.setContentType("text/xml");
httpServletResponse.setHeader("Content-type","application/xhtml+xml");
...
return actionMapping.findForward(target);
}
私は現在、ブラウザだけが戻って設定することをXML文字列をつかんされてやって、有効なXMLを取得するjQueryのparseXML()メソッドを使用していますが、これはのように思えますハックと私はむしろストラットを有効なXML応答として応答を返信したいと思います。
コンテンツタイプを.jspに追加すると、私が探していた結果が得られました。 – bittersweetryan