I think this is the issue where Google was not accepting recurrence
rules where the first occurrence does not conform to the rule.

       String recurData = "DTSTART;VALUE=DATE:20091001\r\n"
       + "DTEND;VALUE=DATE:20091002\r\n"
       + "RRULE:FREQ=MONTHLY;BYDAY=1Tu;UNTIL=20100904\r\n";

October 1 is not a Tuesday.

What happens if you use "DATE:20091006" ?

Ray

On Fri, Oct 30, 2009 at 2:39 AM, Thamilselvi <[email protected]> wrote:
>
> Thanks you .. i can update all events but i can't update events for
> monthly recurring events
> i'm getting following error while using this code
>
> The code is :
>
>     GoogleService myService = new GoogleService("cl","exampleCo-
> exampleApp-1");
>      myService.setUserCredentials([email protected],password);
>
>      URL postURL = new URL("http://www.google.com/calendar/feeds/
> [email protected]/private/full");
>
>        Query myQuery = new Query(postURL);
>        myQuery.setFullTextQuery(title);
>        CalendarEventFeed myResultsFeed = myService.query
> (myQuery,CalendarEventFeed.class);
>
>        Iterator iterFeed = myResultsFeed.getEntries().iterator();
>        CalendarEventEntry myEvent = (CalendarEventEntry) iterFeed.next();
>
>        myEvent.setTitle(new PlainTextConstruct(title));
>        myEvent.setContent(new PlainTextConstruct(content));
>        Person author = new Person("Texflow", null,userId);
>        myEvent.getAuthors().add(author);
>        myEvent.addLocation(new Where("","",location));
>
>       String participants []={"[email protected]"};
>        if(participants !=null && !(participants.equals("")) )  {
>                EventWho []guest = new EventWho[participants.length];
>                        for(int i=0;i<participants.length;i++) {
>                                guest[i] = new EventWho();
>                                guest[i].setEmail(participants[i]);
>                                myEvent.addParticipant(guest[i]);
>
>                        }
>                myEvent.setSendEventNotifications(true);
>                }
>                //Create DateTime events and create a When object to hold 
> them, then
> add
>                //the When event to the event
>
>        String recurData = "DTSTART;VALUE=DATE:20091001\r\n"
>        + "DTEND;VALUE=DATE:20091002\r\n"
>        + "RRULE:FREQ=MONTHLY;BYDAY=1Tu;UNTIL=20100904\r\n";
>
>                        Recurrence recur = new Recurrence();
>                        recur.setValue(recurData);
>                        myEvent.setRecurrence(recur);
>                        myEvent.update();
>
>
> while using above code i'm getting following error
> com.google.gdata.util.InvalidEntryException: Bad Request
> [Line 3, Column 78, element entry] Duplicate extension element
> http://schemas.google.com/g/2005:recurrence
>
>        at
> com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse
> (HttpGDataRequest.java:502)
>        at
> com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse
> (GoogleGDataRequest.java:555)
>        at com.google.gdata.client.http.HttpGDataRequest.checkResponse
> (HttpGDataRequest.java:480)
>        at com.google.gdata.client.http.HttpGDataRequest.execute
> (HttpGDataRequest.java:459)
>        at com.google.gdata.client.http.GoogleGDataRequest.execute
> (GoogleGDataRequest.java:527)
>        at com.google.gdata.client.Service.update(Service.java:1422)
>        at com.google.gdata.client.Service.update(Service.java:1377)
>        at com.google.gdata.client.GoogleService.update
> (GoogleService.java:544)
>        at com.google.gdata.data.BaseEntry.update(BaseEntry.java:599)
>
>
>
>
> On Oct 16, 12:23 pm, florent devin <[email protected]> wrote:
>> If this is a new a entry you may use :
>> EventEntry inserted = myService.insert(URL, theEntry);
>>
>> if you want to update you have to get the entry and then use the update
>> function like  this :
>> CalendarEventFeed theResultFeed = myServie.query(theQuery,
>> CalendarEventFeed.class);
>> // then select the one you want for example
>> Iterator iterFeed = theResultFeed.getEntries().iterator();
>> CalendarEventEntry theEntry = (CalendarEventEntry) iterFeed.next;
>> // and then modify what you want
>> // .../...
>> // and then
>> theEntry.update();
>>
>> Hope this help
>> Regards
>>
>> 2009/10/16 Thamilselvi <[email protected]>
>>
>>
>>
>>
>>
>> > Hi ..
>> >  how to update particular events in my application using google
>> > calendar api in java
>>
>> > i tried to update using following code in java
>>
>> >  GoogleService myService = new GoogleService("cl","exampleCo-
>> > exampleApp-1");
>> >  myService.setUserCredentials(userId,password);
>>
>> >  URL postURL = new URL("http://www.google.com/calendar/feeds/
>> > [email protected]/private/full");
>>
>> >  CalendarEventEntry myEvent = new CalendarEventEntry();
>> >  myEvent.setTitle(new PlainTextConstruct("New Tile "));
>> >  myEvent.setContent(new PlainTextConstruct(content));
>> >  Person author = new Person("Sample", null,[email protected]);
>> >  myEvent.getAuthors().add(author);
>> >  myEvent.addLocation(new Where("","","Sample, Chennai"))
>>
>> > String recurData = "DTSTART;VALUE=DATE:20091001\r\n"
>> >        + "DTEND;VALUE=DATE:20091002\r\n"
>> >        + "RRULE:FREQ=WEEKLY;BYDAY=Tu;UNTIL=20100904\r\n";
>>
>> > Recurrence recur = new Recurrence();
>> > recur.setValue(recurData);
>> > myEvent.setRecurrence(recur);
>> > CalendarEventEntry updateEntry = myService.update(postURL,myEvent);
>>
>> --
>> Florent Devin
>> Téléphonez moi gratuitement via le net :
>> Domicile :http://call.mylivio.com/fd0
>> Professionnel :http://call.mylivio.com/fd_pro
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Calendar Data API" group.
To post to this group, send email to 
[email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-calendar-help-dataapi?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to