2011-05-29 42 views
1

我正在嘗試寫一個簡單的REST Java Web服務。我在服務器端使用Provider接口,在客戶端使用Dispatch。我試圖在POST請求的頭部中傳輸一個值,但有一些問題。 我的客戶端代碼:Java REST中POST POST標題的問題WS

private void invoke(Dispatch<Source> dispatch 
        Object data) { 
    Map<String, Object> request_context = dispatch.getRequestContext(); 
    request_context.put(MessageContext.HTTP_REQUEST_METHOD, "POST"); 

    request_context.put("org.kpi.asd", "SOME TEXT");   

    StreamSource source = make_stream_source(data.toString()); 
    dispatch.invoke(source); 
} 

我的服務器代碼:

public Source invoke(Source request) { 
    // Filter on the HTTP request verb 
    if (ws_ctx == null) throw new RuntimeException("DI failed on ws_ctx."); 

    // Grab the message context and extract the request verb. 
    MessageContext msg_ctx = ws_ctx.getMessageContext();  
    String aaa = (String) msg_ctx.get("org.kpi.asd"); 
} 

在服務器:AAA爲空。我不明白爲什麼。救救我,請(:

回答

0

消息上下文是不是你設置任意的HTTP頭有其中包含HTTP標頭中的消息上下文的另一個屬性,看HTTP_REQUEST_HEADERS