2010-12-13 12 views
0

SOAPリクエストを送信し、WebServiceから応答を受け取るときに圧縮を使用する必要があります。残念ながら、私はGZIP圧縮を有効にする方法についての参考文献は見つかりませんでした。ここで私は、SOAPリクエストを送信するために使用し、簡単なコードは次のとおりです。SOAPMessage - SOAPConnection - gzip - how

SOAPConnectionFactory scf = SOAPConnectionFactory.newInstance(); 

SOAPConnection sc = scf.createConnection(); 

MessageFactory mf = MessageFactory.newInstance(); 

SOAPMessage message = mf.createMessage(); 

/* 
.... some code 
*/ 

URL url = new URL("https://blahblah/service/ws/Someservice"); 

SOAPMessage reply = sc.call(message, url); 

は、APIレベルで圧縮を有効にする方法はありますか私は圧縮を自分で実装するには、SOAPMessageをラップする必要がありますか?

答えて

1
SOAPConnectionFactory scf = SOAPConnectionFactory.newInstance(); 

SOAPConnection sc = scf.createConnection(); 

MessageFactory mf = MessageFactory.newInstance(); 

SOAPMessage message = mf.createMessage(); 

//************** HERE YOU DO THE GZIP******************************** 

MimeHeaders hd = message .getMimeHeaders(); 
hd.addHeader("Accept-Encoding", "gzip,deflate,sdch"); 

/* 
.... some code 
*/ 

URL url = new URL("https://blahblah/service/ws/Someservice"); 

SOAPMessage reply = sc.call(message, url);