Project

General

Profile

Bug #60179

ERROR [Appointment.<init>:68] ENTITY - failed to parse appointment content

Added by Alexey Bobyr almost 4 years ago. Updated about 3 years ago.

Status:
Resolved
Priority:
Immediate
Assignee:
Alexey Bobyr
Category:
Scalix WEB
Target version:
Start date:
12/16/2015
Due date:
12/16/2015
% Done:

100%

Estimated time:
Operation System:
noarch package

Description

2015-12-16 02:26:32,597 ERROR [Appointment.<init>:68] ENTITY - failed to parse appointment content
net.fortuna.ical4j.data.ParserException: Error at line 111:Cannot set timezone for UTC properties
        at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:148)
        at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:210)
        at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:191)
        at com.scalix.wireless.api.entity.Appointment.<init>(Appointment.java:62)
        at com.scalix.wireless.api.entity.Message.fromXML(Message.java:451)
        at com.scalix.wireless.api.entity.PlatformResponse.<init>(PlatformResponse.java:58)
        at com.scalix.wireless.api.entity.MessageRef.<init>(MessageRef.java:31)
        at com.scalix.wireless.api.entity.Message.<init>(Message.java:84)
        at com.scalix.wireless.api.entity.MessageList.fromXML(MessageList.java:56)
        at com.scalix.wireless.api.entity.PlatformResponse.<init>(PlatformResponse.java:58)
        at com.scalix.wireless.api.entity.MessageList.<init>(MessageList.java:35)
        at com.scalix.wireless.api.entity.MessageListSequence.fromXML(MessageListSequence.java:60)
        at com.scalix.wireless.api.entity.PlatformResponse.<init>(PlatformResponse.java:47)
        at com.scalix.wireless.api.entity.MessageListSequence.<init>(MessageListSequence.java:32)
        at com.scalix.wireless.api.service.PlatformClient.getMessageChanges(PlatformClient.java:869)
        at com.scalix.wireless.controller.command.SyncCommand.doSync(SyncCommand.java:192)
        at com.scalix.wireless.controller.command.SyncCommand.execute(SyncCommand.java:130)
        at com.scalix.wireless.handlers.WirelessRequestImpl.execute(WirelessRequestImpl.java:228)
        at com.scalix.wireless.HttpRequestHandler.handleRequest(HttpRequestHandler.java:136)
        at com.scalix.wireless.WirelessServlet.doPost(WirelessServlet.java:106)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
        at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:158)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:146)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:943)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:877)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.springframework.web.filter.AbstractRequestLoggingFilter.doFilterInternal(AbstractRequestLoggingFilter.java:214)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
        at org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:221)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
        at org.apache.coyote.ajp.AjpNioProcessor.process(AjpNioProcessor.java:175)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1757)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1716)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsupportedOperationException: Cannot set timezone for UTC properties
        at net.fortuna.ical4j.model.property.UtcProperty.setTimeZone(UtcProperty.java:98)
        at net.fortuna.ical4j.data.CalendarBuilder.updateTimeZone(CalendarBuilder.java:372)
        at net.fortuna.ical4j.data.CalendarBuilder.access$3(CalendarBuilder.java:370)
        at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.parameter(CalendarBuilder.java:296)
        at net.fortuna.ical4j.data.CalendarParserImpl$ParameterParser.parse(CalendarParserImpl.java:336)
        at net.fortuna.ical4j.data.CalendarParserImpl$ParameterParser.access$1(CalendarParserImpl.java:291)
        at net.fortuna.ical4j.data.CalendarParserImpl$ParameterListParser.parse(CalendarParserImpl.java:277)
        at net.fortuna.ical4j.data.CalendarParserImpl$PropertyParser.parse(CalendarParserImpl.java:213)
        at net.fortuna.ical4j.data.CalendarParserImpl$PropertyParser.access$1(CalendarParserImpl.java:200)
        at net.fortuna.ical4j.data.CalendarParserImpl$PropertyListParser.parse(CalendarParserImpl.java:178)
        at net.fortuna.ical4j.data.CalendarParserImpl$ComponentParser.parse(CalendarParserImpl.java:390)
        at net.fortuna.ical4j.data.CalendarParserImpl$ComponentParser.access$1(CalendarParserImpl.java:376)
        at net.fortuna.ical4j.data.CalendarParserImpl$PropertyListParser.parse(CalendarParserImpl.java:175)
        at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:125)

google says
https://jira.sakaiproject.org/browse/SAK-28089

If the timezone of your Sakai installation is set to UTC then the exporting of iCal doesn't work as it attempts to use a TZID of Etc/UTC which gets flagged as invalid when exporting the calendar.
This is mentioned in the iCal4j issue tracker under: http://sourceforge.net/p/ical4j/bugs/112/
It is marked as won't fix with a suggestion that all calling code has to handle this special case.

http://sourceforge.net/p/ical4j/ical4j/ci/6dfdab53b97e7882d78595ec7aae6de8dc0b10d0/tree/source/net/fortuna/ical4j/model/tz.alias

https://mirakel.atlassian.net/browse/DAV-26

History

#1

Updated by Alexey Bobyr almost 4 years ago

Updated ical4j to version 1.0.7 (was 1.0.6)

For webmail, api, wireless and sis added additional fix which will
remove ";TZID=.*:" from ics and will try to build Calendar object without it.
Bad thing in this case some fields won't be displayed correctly because I'm truncating time zone
Good thing is that it will be visible to a user but without time zone.

latest builds is on upcoming folder.
I will monitor prod server but it seems that everything is working like it should.

Alexey Bobyr wrote:

[...]

google says
https://jira.sakaiproject.org/browse/SAK-28089
[...]

http://sourceforge.net/p/ical4j/ical4j/ci/6dfdab53b97e7882d78595ec7aae6de8dc0b10d0/tree/source/net/fortuna/ical4j/model/tz.alias

https://mirakel.atlassian.net/browse/DAV-26

#2

Updated by Alexey Bobyr almost 4 years ago

  • Due date set to 12/16/2015
  • Status changed from Answered to Resolved
  • % Done changed from 0 to 100
#3

Updated by Alexey Bobyr over 3 years ago

  • Target version changed from All to Scalix 12.6
#4

Updated by Alex I about 3 years ago

  • Subject changed from ERROR [Appointment.<init>:68] ENTITY - failed to parse appointment content (effected apps API,WEBMAIL, WIRELESS ,SIS) to ERROR [Appointment.<init>:68] ENTITY - failed to parse appointment content

Also available in: Atom PDF