0
私は応答から文字列テキストを取得しようとしています。 私は私の方法の1つでそれを設定しました。 コントローラへのAjaxコールがここにあります。応答から文字列を渡してそれをajax呼び出しにするには
function SaveItems() {
$.ajax({
type : "POST",
url : '/myProject/dispatcherServlet/controller/saveItem',
data : jsondata,
dataType : "json",
contentType: "application/json",
crossDomain:true,
success : function(data) {
var res=data;
alert("data :"+data);
},
error : function(data) {
}
});
}
コントローラメソッド
@RequestMapping(value = "/saveItems",headers = "Accept=application/json", method = RequestMethod.POST)
@ResponseBody
public String saveItems(@RequestBody final String configJson,HttpServletRequest request, HttpServletResponse response)
{
Object json = null;
ObjectMapper objectMapper = new ObjectMapper();
try {
ProfileModel profileModel = objectMapper.readValue(
configJson,profileModel.class);
configServiceImpl.createProfile(profileModel,request ,response);
} catch (JsonParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "success";
}
私はResponseオブジェクトに文字列を設定していた場所からサービス方法。私は、コードを実行すると
public void createProfile(profileModel profileModel,HttpServletRequest request,HttpServletResponse response)
{
String resultID ="error01";
String resultText="Error in creating profile"
String appnededText =resultID+resultText;
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
pw.write(appnededText);
pw.close();
}
は私が
java.lang.IllegalStateException: getWriter() has already been called for this response
at org.apache.catalina.connector.Response.getOutputStream(Response.java:588)
at org.apache.catalina.connector.ResponseFacade.getOutputStream(ResponseFacade.java:183)
at org.springframework.http.server.ServletServerHttpResponse.getBody(ServletServerHttpResponse.java:71)
at org.springframework.http.converter.StringHttpMessageConverter.writeInternal(StringHttpMessageConverter.java:109)
at org.springframework.http.converter.StringHttpMessageConverter.writeInternal(StringHttpMessageConverter.java:40)
at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:180)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:143)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:89)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:189)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:69)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:122)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:743)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:672)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:82)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:919)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:851)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:855)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
がどのように応答から文字列を送信ください怒鳴るのエラーを取得し、それを得る「アヤックス」
のデータパラメータのresponseBody属性に文字列を取得する必要があります。私はjspでデータを使用することができません。私は火災のバグを使用して応答の応答テキストを参照してくださいしかし、私は私が警告オブジェクトのオブジェクトを参照してください – Varun
データオブジェクト(あなたの成功、エラーコールバックのパラメータです)は、様々な属性の構成:そのうちのいくつかは、responseTextです。これらを使用して、必要なHTTP応答ステータスコードと返信する文字列を取得することができます – MohamedSanaulla