geremyk / google-gdata

Automatically exported from code.google.com/p/google-gdata
0 stars 0 forks source link

Exception thrown when parsing appointment with comments from the composite feed #147

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Create a new appointment in GCalendar and add a comment to it with the
"Add a comment" link.
2. Try to get the appointment from Google Calendar .NET API using the
composite feed.

What is the expected output? What do you see instead?
The expected output is an EventEntry object representing the appointment. I
get an exception instead. The stack trace follows:
Internal Source: Google.GData.Client

Parsing failed[Google.GData.Client.ClientFeedException]
TargetSite: Parse
StackTrace:
   at Google.GData.Client.AtomFeedParser.Parse(Stream streamInput, AtomFeed
feed)
   at Google.GData.Client.AtomFeed.Parse(Stream stream, AlternativeFormat
format)
   at Google.GData.Client.Service.Query(FeedQuery feedQuery, DateTime
ifModifiedSince)
   at Google.GData.Client.Service.Query(FeedQuery feedQuery)
   at Google.GoogleFeeder.GetFeed(Service service, FeedQuery query)
   at Google.CalendarDataSource.GetEntryAndExceptions(String user, String
password, String id)
   at Google.CalendarDataSource.Open(PrimaryKey key)
   at QSMSP.Adapter.Open(DataSourceEnum kind, Object sourceKey, PrimaryKey
key) in
d:\src\qi2.0\src\quantumsystem\insight\unmanaged\qsmsp\adapter.cpp:line 345
   at QSMSP.Adapter.Open(Object sourceKey, PrimaryKey key) in
d:\src\qi2.0\src\quantumsystem\insight\unmanaged\qsmsp\adapter.cpp:line 331
   at CQSMessage.Load(CQSMessage* , _SBinary* pRecordEID, PrimaryKey key)
in
d:\src\qi2.0\src\quantumsystem\insight\unmanaged\qsmsp\qsmessage.cpp:line 415
   at CQSMAPIFolder.OpenEntry(CQSMAPIFolder* , UInt32 cbEntryID, ENTRYID*
lpEntryID, _GUID* lpInterface, UInt32 ulFlags, UInt32* lpulObjType,
IUnknown** lppUnk) in
d:\src\qi2.0\src\quantumsystem\insight\unmanaged\qsmsp\qsmapifolder.cpp:line
625

//////////////////////////////////////////////////////////////
Inner Exception: Parsing failed[Google.GData.Client.ClientFeedException]
TargetSite: Parse
StackTrace:
   at Google.GData.Client.AtomFeedParser.Parse(Stream streamInput, AtomFeed
feed)
   at Google.GData.Client.AtomFeed.Parse(Stream stream, AlternativeFormat
format)
   at Google.GData.Extensions.FeedLink.ParseFeedLink(XmlNode node)
   at Google.GData.Extensions.Comments.CreateInstance(XmlNode node,
AtomFeedParser parser)
   at Google.GData.Client.AbstractEntry.Parse(ExtensionElementEventArgs e,
AtomFeedParser parser)
   at Google.GData.Client.AbstractFeed.OnNewExtensionsElement(Object
sender, ExtensionElementEventArgs e)
   at Google.GData.Client.ExtensionElementEventHandler.Invoke(Object
sender, ExtensionElementEventArgs e)
   at Google.GData.Client.AtomFeed.OnNewExtensionElement(Object sender,
ExtensionElementEventArgs e)
   at Google.GData.Client.BaseFeedParser.OnNewExtensionElement(XmlNode
node, AtomBase baseObject)
   at Google.GData.Client.BaseFeedParser.OnNewExtensionElement(XmlReader
reader, AtomBase baseObject)
   at Google.GData.Client.AtomFeedParser.ParseExtensionElements(XmlReader
reader, AtomBase baseObject)
   at Google.GData.Client.AtomFeedParser.ParseEntry(XmlReader reader)
   at Google.GData.Client.AtomFeedParser.ParseFeed(XmlReader reader,
AtomFeed feed)
   at Google.GData.Client.AtomFeedParser.Parse(Stream streamInput, AtomFeed
feed)

//////////////////////////////////////////////////////////////
Inner Exception: Value cannot be null.
Parameter name: uriString[System.ArgumentNullException]
TargetSite: .ctor
StackTrace:
   at System.Uri..ctor(String uriString)
   at Google.GData.Client.Utilities.CalculateUri(AtomUri localBase, AtomUri
inheritedBase, String localUri)
   at Google.GData.Client.AtomEntry.BaseUriChanged(AtomUri uriBase)
   at Google.GData.Client.AtomFeed.BaseUriChanged(AtomUri uriBase)
   at Google.GData.Client.AtomFeed.OnParsedNewEntry(Object sender,
FeedParserEventArgs e)
   at Google.GData.Client.BaseFeedParser.OnNewAtomEntry(FeedParserEventArgs
args)
   at Google.GData.Client.AtomFeedParser.ParseFeed(XmlReader reader,
AtomFeed feed)
   at Google.GData.Client.AtomFeedParser.Parse(Stream streamInput, AtomFeed
feed)

For more information, see Help and Support Center at
http://go.microsoft.com/fwlink/events.asp. 

What version of the product are you using? On what operating system?
1.2.0.0

Please provide any additional information below.
This only happens when the appointment has comments. Inspecting the
composite feed, I see the comment is represented with an <entry> tag.
Inside is an <id> tag that contains what seems to be an identifier (but
it't not an URI). Maybe this string is being used to initialize an URI
raising the exception.

Original issue reported on code.google.com by capt.ho...@gmail.com on 14 Jul 2008 at 3:13

GoogleCodeExporter commented 8 years ago
Fixed in subversion. Will be in all versions > 1.2.1.0

Note there seems to be a service side issue with UTF8 encoding of non US 
characters, i found some composite 
feeds that failed to parse due to that, just in case you are running into that 
as well. We are investigating that.

Original comment by fman...@gmail.com on 4 Aug 2008 at 2:05

GoogleCodeExporter commented 8 years ago
>Note there seems to be a service side issue
>with UTF8 encoding of non US characters

Yep, I noticed that and reported the bug at gdata-issues a couple weeks ago.
http://code.google.com/p/gdata-issues/issues/detail?id=667

Thanks for your help

Regards

Original comment by capt.ho...@gmail.com on 4 Aug 2008 at 5:54

GoogleCodeExporter commented 8 years ago
If you have wiretraces (Fiddler) of that problem, please attach them to the 
server sde bugreport. I send them 
mine, but more data, easier to find...

Original comment by fman...@gmail.com on 5 Aug 2008 at 9:53