2017-03-14 4 views
0

javax.servlet.http.HttpServletResponse戻り応答(HttpServletResponseの)に

私のサーブレットにjavax.ws.rs.core.Responseをキャストしようとしたとき、私はいつもClassCastExceptionで終わるが、このようになりますのHttpServletRequest:

@GET 
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     Response myResponse = processRequest(request); 
     //myResponse -> response 
} 

サーブレットはAAの桟橋でホストされています:

context = new ServletContextHandler(ServletContextHandler.SESSIONS); 
context.addServlet(new ServletHolder(servlet),"/*"); 

可能であれば、myResponse(基本的にはjson本体)を返信したい。

誰かが助けることができますか?

答えて

1

サーブレットからの応答を応答(カスタム)形式で上流に送信することはできません。

応答をアップストリームに送信する際に、HttpServletrequestとHttpServletResponseに値を設定する必要があります。

以下は、サーブレットでjson形式でデータを送信するための私の提案です。

JSONデータを文字列としてStringオブジェクトに格納します。 このオブジェクトをrequest.setAttribute()に設定します。属性の名前を使用して、ajax関数の値を取得します。 JSON.parse()を使用して文字列をJSONに変換します。

+0

ええ、私はこれもまた唯一の方法だと考えました – Gobliins

関連する問題