私は、Lotus Notes のカレンダー エントリを Google カレンダーと同期する Java オープン ソース プロジェクトを管理しています: https://sourceforge.net/projects/lngooglecalsync/
2013 年 6 月 6 日頃、約 8 人のユーザーが 10 回の試行のうち 9 回で以下のエラーを受け取り始めました。応答の HTML 部分に「要求したカレンダーにアクセスできません」というメッセージが含まれていることに注意してください。HTML の残りの部分は、「Google」という単語の色付きバージョンを表示するだけです。
com.google.gdata.util.ServiceException: Internal Server Error
<html><head><meta http-equiv="content-type" content="text/html;charset=UTF-8">
<title>Error</title>
<style type="text/css">body {font-family: arial,sans-serif}</style></head>
<body text="#000000" bgcolor="#ffffff"><table border="0" cellpadding="2" cellspacing="0" width="100%"><tr><td rowspan="3" width="1%" nowrap><b><font face="times" size="10"><font color="#0039b6">G</font> <font color="#c41200">o</font> <font color="#f3c518">o</font> <font color="#0039b6">g</font> <font color="#30a72f">l</font> <font color="#c41200">e</font></font> </b></td>
<td> </td></tr>
<tr><td bgcolor="#3366cc"><font face="arial,sans-serif" color="#ffffff"><b>Error</b></font></td></tr>
<tr><td> </td></tr></table>
<blockquote>Cannot access the calendar you requested</blockquote>
<p></p>
<div style="background:#3366cc; width:1px; height:4px"></div></body></html>
例外の原因となっている getFeed() 呼び出しは次のとおりです。
try {
calendars = service.getFeed(mainCalendarFeedUrl, CalendarFeed.class);
} catch (com.google.gdata.util.ServiceException ex) {
calendars = null;
throw ex;
}
6 月 6 日より前は、この問題は存在しませんでした。同じ頃、Google は空の Location 値の保存方法をカレンダーに変更しました。以前は null を使用していましたが、現在は "" を使用しています。これにより、最初はコードが壊れていましたが、今では両方の状況を処理しています。
また、ユーザーは、非公開の Google カレンダー リンクで単純な http get 操作を実行する Coldfusion スクリプトを 1 年以上正常に実行していたと報告しました。そのスクリプトは現在、同じ問題で断続的に失敗しています。
このすべての情報に基づいて、Google が何らかの変更を加えたため、現在この断続的な問題が発生していると思います。ほとんどのユーザー (私を含む) はこの例外を目にすることはありませんが、この問題を経験している人々のための解決策を見つけたいと思います.
問題を診断または修正する方法について何か考えはありますか?
更新: 2013 年 8 月 12 日、この問題を経験していたすべてのユーザーが、問題が解決したと述べています。そのため、問題は Google 側にあり、修正されたと想定しています。