Zimbra offers Open Source email server software and shared calendar for Linux and the Mac
Go Back   Zimbra :: Forums > Zimbra Collaboration Suite > Developers

Welcome to the Zimbra :: Forums!
Welcome, if you would like to post a comment please register. We also encourage you to explore all things Zimbra with our team and members of the community.

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 12-11-2007, 01:35 AM
Starter Member
 
Posts: 2
Default Running Zimbra 4.5.10 on tomcat 6 and jdk1.6

Hi guys,

I've been able to successfully build zimbra 4.5.10 source, and run it on tomcat 5.5.25 on RHEL 4. Now I'm trying to run it on tomcat 6.0.14 and jdk1.6. But, when i run "reset-the-world" task in ZimbraServer, I get following error

Code:
[...]
service-deploy:
init-wiki:
     [echo] Initializing wiki@klinux
     [java] ERROR: zclient.IO_ERROR (invoke Remote host closed connection during handshake, server: localhost) (cause: javax.net.ssl.SSLHandshakeException Remote host closed connection during handshake)
BUILD FAILED
Then, as per migration guide at Apache Tomcat - Apache Tomcat -- Migration Guide, I added SSLEnabled="true" in Connector at port="7443" and Connector at port="7071".
Code:
[...]
service-deploy:
init-wiki:
     [echo] Initializing wiki@klinux
     [java] [] INFO: I/O exception (org.apache.commons.httpclient.NoHttpResponseException) caught when processing request: The server localhost failed to respond
     [java] [] INFO: Retrying request
     [java] ERROR: zclient.IO_ERROR (invoke Connection refused, server: localhost) (cause: java.net.ConnectException Connection refused)
BUILD FAILED
I found the following in tomcat logs

Code:
127  INFO  [http-7070-1] [] soap - Servlet SoapServlet starting up
161  INFO  [http-7070-1] [] soap - Adding service AccountService to SoapServlet
189  INFO  [http-7070-1] [] soap - Servlet AdminServlet starting up
291  INFO  [http-7070-1] [] soap - Adding service AdminService to AdminServlet
294  INFO  [http-7070-1] [] PublicICalServlet - Servlet PublicICalServlet starting up
344  INFO  [http-7070-1] [] account - Servlet PreAuthServlet starting up
356  INFO  [http-7070-1] [] StatsImageServlet - Servlet StatsImageServlet starting up
5080 INFO  [http-7071-1] [] soap - Servlet AdminServlet starting up
5092 FATAL [http-7071-1] [] system - Attempted to instantiate a second instance of AdminServlet
If I access ZimbraAdmin, or service/soap page through tomcat manager, tomcat shuts itself down.

I also debugged with entry point "main" at com.zimbra.cs.account.ProvUtil with arguments
Code:
"in wiki@klinux test123 data/wiki/Template Template"
, which threw following exception
Code:
Exception in thread "main" java.lang.ExceptionInInitializerError
	at sun.text.normalizer.NormalizerBase.decompose(NormalizerBase.java:707)
	at sun.text.normalizer.NormalizerBase$NFKDMode.normalize(NormalizerBase.java:348)
	at sun.text.normalizer.NormalizerBase.normalize(NormalizerBase.java:1592)
	at sun.text.normalizer.NormalizerBase.normalize(NormalizerBase.java:1573)
	at java.text.Normalizer.normalize(Normalizer.java:146)
	at sun.security.x509.AVA.toRFC2253CanonicalString(AVA.java:986)
	at sun.security.x509.RDN.toRFC2253StringInternal(RDN.java:430)
	at sun.security.x509.RDN.toRFC2253String(RDN.java:409)
	at sun.security.x509.X500Name.getRFC2253CanonicalName(X500Name.java:714)
	at sun.security.x509.X500Name.equals(X500Name.java:400)
	at sun.security.pkcs.PKCS7.getCertificate(PKCS7.java:609)
	at sun.security.pkcs.SignerInfo.getCertificate(SignerInfo.java:202)
	at sun.security.pkcs.SignerInfo.verify(SignerInfo.java:328)
	at sun.security.pkcs.PKCS7.verify(PKCS7.java:494)
	at sun.security.pkcs.PKCS7.verify(PKCS7.java:511)
	at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:199)
	at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:176)
	at java.util.jar.JarVerifier.processEntry(JarVerifier.java:277)
	at java.util.jar.JarVerifier.update(JarVerifier.java:188)
	at java.util.jar.JarFile.initializeVerifier(JarFile.java:321)
	at java.util.jar.JarFile.getInputStream(JarFile.java:386)
	at sun.misc.URLClassPath$JarLoader$2.getInputStream(URLClassPath.java:689)
	at sun.misc.Resource.cachedInputStream(Resource.java:59)
	at sun.misc.Resource.getByteBuffer(Resource.java:154)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:249)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at sun.security.jca.ProviderConfig$3.run(ProviderConfig.java:234)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:225)
	at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:205)
	at sun.security.jca.ProviderList.getProvider(ProviderList.java:215)
	at sun.security.jca.ProviderList$ServiceList.tryGet(ProviderList.java:416)
	at sun.security.jca.ProviderList$ServiceList.access$200(ProviderList.java:358)
	at sun.security.jca.ProviderList$ServiceList$1.hasNext(ProviderList.java:468)
	at java.security.Signature.getInstance(Signature.java:192)
	at com.sun.net.ssl.internal.ssl.JsseJce.getSignature(JsseJce.java:197)
	at com.sun.net.ssl.internal.ssl.JsseJce.isEcAvailable(JsseJce.java:156)
	at com.sun.net.ssl.internal.ssl.CipherSuite$KeyExchange.isAvailable(CipherSuite.java:271)
	at com.sun.net.ssl.internal.ssl.CipherSuite.isAvailable(CipherSuite.java:143)
	at com.sun.net.ssl.internal.ssl.CipherSuiteList.buildAvailableCache(CipherSuiteList.java:210)
	at com.sun.net.ssl.internal.ssl.CipherSuiteList.getDefault(CipherSuiteList.java:233)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.init(SSLSocketImpl.java:508)
	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:391)
	at com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:123)
	at com.zimbra.cs.httpclient.EasySSLProtocolSocketFactory.createSocket(EasySSLProtocolSocketFactory.java:125)
	at com.zimbra.cs.httpclient.EasySSLProtocolSocketFactory.createSocket(EasySSLProtocolSocketFactory.java:166)
	at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:706)
	at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:386)
	at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
	at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
	at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324)
	at com.zimbra.soap.SoapHttpTransport.invoke(SoapHttpTransport.java:185)
	at com.zimbra.soap.SoapTransport.invoke(SoapTransport.java:225)
	at com.zimbra.cs.account.soap.SoapProvisioning.invoke(SoapProvisioning.java:146)
	at com.zimbra.cs.account.soap.SoapProvisioning.soapAdminAuthenticate(SoapProvisioning.java:118)
	at com.zimbra.cs.account.soap.SoapProvisioning.soapZimbraAdminAuthenticate(SoapProvisioning.java:133)
	at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:301)
	at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:1439)
Caused by: java.lang.RuntimeException: could not locate data
	at sun.text.normalizer.NormalizerImpl.<clinit>(NormalizerImpl.java:44)
	... 65 more
Please help me with migrating to tomcat 6. does anyone have any experience running zimbra on tomcat 6.
thanks,
Ron
Reply With Quote
  #2 (permalink)  
Old 12-11-2007, 07:12 AM
OpenSource Builder & Moderator
 
Posts: 1,166
Default

use of tomcat is discontinued in the newer 5.x tree, in favour of jetty.
Reply With Quote
  #3 (permalink)  
Old 12-11-2007, 09:41 PM
Starter Member
 
Posts: 2
Default Jetty vs Tomcat ?

Is there any reason why Tomcat was discontinued in favor of jetty ?

Speed ? Stability ? Scalability ?
Reply With Quote
  #4 (permalink)  
Old 12-11-2007, 11:25 PM
Former Zimbran
 
Posts: 5,606
Default

Quote:
Originally Posted by agentsmith View Post
Is there any reason why Tomcat was discontinued in favor of jetty ?

Speed ? Stability ? Scalability ?
All three. We'll have a blog post coming up about this more. . but tomcat is very unforgiving. If something goes wrong, it has a very famous tendency to not be able to handle it. Jetty is much better, as well as being faster, and way more scalable. Tomcat just wasn't cutting the mustard for what we needed.
Reply With Quote
  #5 (permalink)  
Old 12-12-2007, 12:00 AM
Starter Member
 
Posts: 2
Default

Quote:
Originally Posted by jholder View Post
All three. We'll have a blog post coming up about this more. . but tomcat is very unforgiving. If something goes wrong, it has a very famous tendency to not be able to handle it. Jetty is much better, as well as being faster, and way more scalable. Tomcat just wasn't cutting the mustard for what we needed.
Thanks for your reply. I looked at the Zimbra code and realised 'continuations' have been added recently. I'm still trying to see how Zimbra is using continuations - though I must say its a neat addition.

Any elaborations on how continuations is being used will be quite helpful.

Thanks again!
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Why Join?

Registering let's you ask questions, makes it easier to search, displays any files attached to posts, and notifies you about replies.

blog.zimbra.com




 

SEO by vBSEO ©2011, Crawlability, Inc.