smclab / caldav-sync

Liferay Calendar connector for CalDAV
https://liferaypartneritalia.smc.it/calendar-mobile-sync
Other
7 stars 13 forks source link

can not support add new calendar in IOS #5

Open bill2004158 opened 10 years ago

bill2004158 commented 10 years ago
10:16:56,408 DEBUG [http-bio-8080-exec-2][CalDAVMethodFactory:90] Serving CalDAV request: http://192.168.0.1:8080/webdav/de038bca-2062-48e9-a8fc-f4b60882d659/calendar/5F40DCBE-4D9B-4A4D-A16D-6DC0BC3D73BF/__MKCALENDAR__User: 10201host: 192.168.0.1:8080__accept-encoding: gzip, deflate__content-type: text/xml__accept-language: zh-cn__content-length: 1143__accept: */*__cookie: JSESSIONID=6F19B539A83F63FC627BA3EBB6C9084E__connection: keep-alive__user-agent: iOS/6.1 (10B141) dataaccessd/1.0__ [Sanitized]
10:16:56,408 ERROR [http-bio-8080-exec-2][WebDAVServlet:143] com.liferay.portal.kernel.webdav.WebDAVException: Method MKCALENDAR is not implemented
com.liferay.portal.kernel.webdav.WebDAVException: Method MKCALENDAR is not implemented
    at it.smc.calendar.sync.caldav.CalDAVMethodFactory.create(CalDAVMethodFactory.java:97)
    at com.liferay.portal.webdav.WebDAVServlet.service(WebDAVServlet.java:109)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.filters.RequestDumperFilter.doFilter(RequestDumperFilter.java:203)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
    at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:293)
    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
    at com.liferay.portal.servlet.filters.jsoncontenttype.JSONContentTypeFilter.processFilter(JSONContentTypeFilter.java:42)
    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
    at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:226)
    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:185)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:185)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:96)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
fabiopezzutto commented 10 years ago

Hi, the MKCALENDAR feature is not implemented yet. It will be done into a next version of plugin (it should be released for September). Any contribution is well accepted :)

bill2004158 commented 10 years ago

@fabiopezzutto , thanks for reponse. btw, it seems when I add new appointment in IOS, it will not auto push back to server?

bill2004158 commented 10 years ago

@fabiopezzutto ,

as you said: "Any contribution is well accepted". yes, I would like to commit some contribution. and we plan to impl the sync feature for Outlook. the question is we will use it for commercial purpose. in your project home page, I just find "Liferay Portal Community Edition License" which is LGPL. so my question is: can you use it for free, and whether we can apply/commit the patches that fix the bug and added new feature? what License I can get?

mmariuzzo commented 10 years ago

I'm trying to clarify some things.

This repository contains a Liferay CE Plugins SDK. The copyright.txt is the original one. We not change it for three reasons:

The LGPL allow you to use the plugin as-is everywhere you want. For your needs or for your company needs you can extend it: create a derived product. But if you provide you derived product to an external entity the LGPL impose you two things:

The code you provide us (contribute) will be covered by LGPL license. And you have to ensure that the code is yours, and doesn't infringe any copyright or patents. Again, we are providing this plugins for free (free as free beer), so every contributed and accepted code wil be provided for free. You implicity agree to this statement when submit a contribution.

You mention Outlook. We, supported by our legal office, discovered some patent infringment traps on Microsoft products and specifications. We know that there are some differences on patent laws in US, in UE (we are Italian) and other countries. But we hope to not provide two version of this plugin: one for US and one for the rest of the World.

bill2004158 commented 10 years ago

@mmariuzzo , thanks for reply.

as @fabiopezzutto, said “next version of plugin (it should be released for September)”. And "Next coming integrations - Active Sync integration for Outlook" in https://www.liferay.com/marketplace/-/mp/application/31865384. so can I you know your schedule or any develop plan?

btw, I have checked outlook, it seems it only support calendar sync with Exchange server? I think we can't impl Active Sync integration?

mmariuzzo commented 10 years ago

You are right: ootb Outlook supports only Active Sync protocol.

We (the developer team) have started to implement an ActiveSync Server. But our legal office stop us after few weeks because patent laws.

Actually we are exploring development of a native Outlook plugin able to talk with Liferay API. Unfortunately there isn't am official roadmap about it, right now.

bill2004158 commented 10 years ago

@mmariuzzo, can I know the official roadmap? or any develop plan?

yuchi commented 5 years ago

@fabiopezzutto Can we close this?

fabiopezzutto commented 5 years ago

MKCALENDAR is still not supported. So we keep this issue open.