CALDAV with Notifylink fails - 500 error - TomCat Problem?

Best practice information from Scalix users relating to integration of Scalix with other products.

Moderator: ScalixSupport

echelon
Posts: 126
Joined: Wed Jun 07, 2006 2:45 pm

CALDAV with Notifylink fails - 500 error - TomCat Problem?

Postby echelon » Wed Mar 25, 2009 10:22 pm

We use Notifylink Enterprise Sevrer (NLES) 4.6 to link our Blackberry/Iphone etc devices to Scalix 11.4.3. Although NLES by default uses Microsoft CDO routines (to mimic Outlook client?) to retrieve PIM (Calendar, Contacts, Tasks) from Notify, the CDO code has not been updated for the extended daylight savings time. (I am not sure what the point of EDST is supposed to be- it is currently causing a lot of people to miss meatings.)

NLES will also support CALDAV for calendar information exchange.
I am also using CALDAV for Thunderbird+Lightning clients with pretty good results.

(Nt. the issues I am experiencing may be related to the posted issues at
viewtopic.php?t=12580)


NLES is configured to retreive my calendar info from

http://scalixserver.mydomain.com/api/da ... m/Calendar

I captured traffic using Wireshark to make sure it was logging in and locating the correct URL.
The traffic capture shows the connection to http://scalixserver.mydomain.com/api/da ... m/Calendar is OK, then connecting to

http://scalixserver.mydomain.com/api/da ... dule-InBOX and reading any items in that directory. At which point the process fails. (I am not sure if it chokes on something in "/schedule-InBOX" or has actually moved on to read the contents in "/Calendar."

The capture shows the following (which is also similar to what the /var/opt/scalix/gx/tomcat/logs/scalix-api.log file shows)


---------------------------------------------------------------------------------------------------


500 InternalServerError

M00009 search returned an error

com.scalix.api.dav.HttpException: M00009 search returned an error .at com.scalix.api.dav.caldav.CalDAVModule.search(CalDAVModule.java:202)
.at com.scalix.api.dav.caldav.CalendarQuery.process(CalendarQuery.java:138)
.at
com.scalix.api.dav.repository.ReportMethod.process(ReportMethod.java:74)
.at com.scalix.api.dav.DavController.processRequest(DavController.java:93)
.at com.scalix.api.dav.DavController.handleRequest(DavController.java:123)
.at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)

.at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:839)

.at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:774)

.at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:460)

.at
com.scalix.api.PlatformDispatcherServlet.service(PlatformDispatcherServlet.java:74)

.at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
.at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)

.at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)

.at
org.springframework.web.filter.AbstractRequestLoggingFilter.doFilterInternal(AbstractRequestLoggingFilter.java:133)

.at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)

.at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)

.at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)

.at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

.at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)

.at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

.at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)

.at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)

.at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
.at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
.at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)

.at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)

.at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)

.at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)

.at java.lang.Thread.run(Unknown Source) Caused by: M00009 search returned an error .at com.scalix.api.mailbox.Mailbox.search(Mailbox.java:391)
.at com.scalix.api.dav.caldav.CalDAVModule.search(CalDAVModule.java:200)
.... 28 more
Caused by: javax.mail.MessagingException: A14 BAD X-GLOBAL-SEARCH failed, internal error; nested exception is:
.com.sun.mail.iap.BadCommandException: A14 BAD X-GLOBAL-SEARCH failed, internal error .at com.sun.mail.imap.IMAPFolder.doCommand(IMAPFolder.java:2631)
.at com.scalix.api.imap.Imap.search(Imap.java:1352)
.at com.scalix.api.mailbox.Mailbox.search(Mailbox.java:383)
.... 29 more
Caused by: com.sun.mail.iap.BadCommandException: A14 BAD X-GLOBAL-SEARCH failed, internal error .at com.sun.mail.iap.Protocol.handleResult(Protocol.java:330)
.at com.scalix.api.imap.XGlobalSearch.doCommand(XGlobalSearch.java:161)
.at com.sun.mail.imap.IMAPFolder.doProtocolCommand(IMAPFolder.java:2672)
.at com.sun.mail.imap.IMAPFolder.doCommand(IMAPFolder.java:2626)
.... 31 more

---------------------------------------------------------------------------------------------------

Any thoughts?

Thanks

fewa

Re: CALDAV with Notifylink fails - 500 error - TomCat Problem?

Postby fewa » Sat Apr 25, 2009 12:22 pm

I had the same problem for a while. It can be one of a couple of possible things:

1. Check and make sure all user names are consistent i.e. First_Last OR First_Last@domain.com

2. Look in the "/var/opt/scalix/?/tomcat/conf/server.xml" configuration file. Change the value for maxSpareThreads="125" to maxSpareThreads="300" in the four (I tnink?) places in the file. Restart scalix-tomcat, then omshut (stops scalix), then omrc (starts scalix). You can change the maxSpareThreads= to an appropriate (higher) value depending on CPU, RAM. I am not knowledgeable enough to know what those values are, sorry.

This is what worked for me.

fewa

Re: CALDAV with Notifylink fails - 500 error - TomCat Problem?

Postby fewa » Sat Apr 25, 2009 12:27 pm

I forgot one other thing to try:

3. Uninstall the "DB" component of scalix and then reinstall it. After that run sxmkindex First_Lastto generate the indexes for a users mailbox. Check the Admin guide for the rest of the proper syntax options for sxmkindex.

Good Luck.


Return to “Third Party Integration”



Who is online

Users browsing this forum: No registered users and 2 guests