2012-02-02 13 views
3

GWTバージョンを2.4.0で、GAEバージョンを1.6.2で更新した後、com.google.gwt.user.client.ui.FormPaneljSessionIdを送信しません。 servlet-doPost-methodでnullを返すHttpSession(request.getSession(false))を取得しようとしたときに、このバグを発見しました。 私の配備されたバージョンのappspot.comでは、アプリはまだ動作しています。だから私は、クロームの開発ツールで、ポストの要求を分析し、jSessionIdFormPanelによって提出されていないことを検出:GWT FormPanelはGWTバージョン2.4.0で更新後にセッションIDを提出しません

開発モード:

Request  URL:http://halligalli:8888/_ah/upload/ahJtcDNzdHJlYW1pbmdwbGF5ZXJyGwsSFV9fQmxvYlVwbG9hZFNlc3Npb25fXxhHDA 
Request Method:POST 
Status Code:302 Found 
Request Headersview source 
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 
Accept-Encoding:gzip,deflate,sdch 
Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4 
Cache-Control:max-age=0 
Connection:keep-alive 
Content-Length:7181438 
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryB1bDbQ8YLCAabTG5 
Host:halligalli:8888 
Origin:http://127.0.0.1:8888 
Referer:http://127.0.0.1:8888/Mp3Streaming.html?gwt.codesvr=127.0.0.1:9997 
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7 
Request Payload 
------WebKitFormBoundaryB1bDbQ8YLCAabTG5 
Content-Disposition: form-data; name="newBlob"; filename="09Anything new.mp3" 
Content-Type: audio/mp3 

デプロイされたバージョン:

Request URL:http://***.appspot.com/_ah/upload/AMmfu6ZrLfT_jYLHJKBXRoWX9_DeeYoa3Ob-vY0bbOcAJ3bj9ihT7Wp5yPmM3yjhn2RBpJAE8Pr7fIA8O-rhY8k0ARTy7hyU3GU3Qw4WrTHvXcSJ9mXZndA/ALBNUaYAAAAATyp8A-H7HSFTkl5ekVfXgXOmd3gK2PQ3/ 
Request Method:POST 
Status Code:302 Found 
Request Headersview source 
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 
Accept-Encoding:gzip,deflate,sdch 
Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4 
Cache-Control:max-age=0 
Connection:keep-alive 
Content-Length:7181438 
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryXy11Yxjeo1JfdJdq 
Cookie:JSESSIONID=KOiv4hx1rqIJ1aZdP8CufQ ◄◄◄◄◄◄◄◄◄◄◄◄◄◄◄◄◄◄◄◄HERE IS THE DIFFERENCE 
Host:***.appspot.com 
Origin:http://***.appspot.com 
Referer:http://***.appspot.com/ 
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7 
Request Payload 
------WebKitFormBoundaryXy11Yxjeo1JfdJdq 
Content-Disposition: form-data; name="newBlob"; filename="09Anything new.mp3" 
Content-Type: audio/mp3 

I FormPanelを使用してGAE Blobstoreに保存されるファイルをアップロードしていますが、アップロードされたファイルの所有者を取得するためにセッションオブジェクトが必要です(開発モードの1つおきのRPCにはjSessionId)。 提案がありますか?

ありがとうございます!あなたの失敗リクエストから

+0

下記の回答は役に立ちましたか?もしそうなら、それを受け入れてください。 –

答えて

3

Request  URL:http://halligalli:8888/_ah/upload/ahJtcDNzdHJlYW1pbmdwbGF5ZXJyGwsSFV9fQmxvYlVwbG9hZFNlc3Npb25fXxhHDA 
[…] 
Host:halligalli:8888 
Origin:http://127.0.0.1:8888 
Referer:http://127.0.0.1:8888/Mp3Streaming.html?gwt.codesvr=127.0.0.1:9997 

あなたは同じ起源にリクエストを送信していない:あなたのブラウザはhalligalli127.0.0.1に設定されているクッキーを送信しません。 。

私が知る限り、これは開発環境のBlobstoreServiceの制限です。 GWT Blobstore error calling createUploadUrl()