I've downloaded the tar.gz version of the release candidate for 1.2. So this is what I've done:sudo tar -zxvf ~/download/alfresco-tomcat-1.2.0RC1.tar.gz .sudo chgrp -R admin tomcatsudo chmod -R g+w tomcat- Goes into the startup.sh and add JAVA_HOME setting to jdk1.5.0_06- Add manager user to the tomcat-users.xml- Run startup.sh- Tries to start the alfresco application- Get the following exception:
INFO: Illegal access: this web application instance has been stopped already. C ould not load cryptix.jce.provider.md.MD4. The eventual following stack trace i s caused by an error thrown for debugging purposes as well as to attempt to term inate the thread which caused the illegal access, and has no functional impact.
09:53:17,952 ERROR [web.context.ContextLoader] Context initialization failed
java.lang.ThreadDeath
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa der.java:1227)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa der.java:1187)
at java.security.Provider$Service.getImplClass(Provider.java:1172)
at java.security.Provider$Service.newInstance(Provider.java:1129)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:220)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:147)
at java.security.Security.getImpl(Security.java:658)
at java.security.MessageDigest.getInstance(MessageDigest.java:122)
at org.alfresco.repo.security.authentication.MD4PasswordEncoderImpl.<cli nit>(MD4PasswordEncoderImpl.java:53)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at org.springframework.util.ClassUtils.forName(ClassUtils.java:108)
at org.springframework.beans.factory.support.BeanDefinitionReaderUtils.c reateBeanDefinition(BeanDefinitionReaderUtils.java:65)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:426)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:392)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. parseBeanDefinitions(DefaultXmlBeanDefinitionParser.java:307)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. registerBeanDefinitions(DefaultXmlBeanDefinitionParser.java:191)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registe rBeanDefinitions(XmlBeanDefinitionReader.java:295)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadB eanDefinitions(XmlBeanDefinitionReader.java:223)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBea nDefinitions(XmlBeanDefinitionReader.java:173)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBea nDefinitions(XmlBeanDefinitionReader.java:148)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReade r.loadBeanDefinitions(AbstractBeanDefinitionReader.java:126)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReade r.loadBeanDefinitions(AbstractBeanDefinitionReader.java:142)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. importBeanDefinitionResource(DefaultXmlBeanDefinitionParser.java:325)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. parseBeanDefinitions(DefaultXmlBeanDefinitionParser.java:298)
at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser. registerBeanDefinitions(DefaultXmlBeanDefinitionParser.java:191)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registe rBeanDefinitions(XmlBeanDefinitionReader.java:295)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadB eanDefinitions(XmlBeanDefinitionReader.java:223)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBea nDefinitions(XmlBeanDefinitionReader.java:173)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBea nDefinitions(XmlBeanDefinitionReader.java:148)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReade r.loadBeanDefinitions(AbstractBeanDefinitionReader.java:126)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReade r.loadBeanDefinitions(AbstractBeanDefinitionReader.java:142)
at org.springframework.web.context.support.XmlWebApplicationContext.load BeanDefinitions(XmlWebApplicationContext.java:126)
at org.springframework.web.context.support.XmlWebApplicationContext.load BeanDefinitions(XmlWebApplicationContext.java:94)
at org.springframework.context.support.AbstractRefreshableApplicationCon text.refreshBeanFactory(AbstractRefreshableApplicationContext.java:89)
at org.springframework.context.support.AbstractApplicationContext.refres h(AbstractApplicationContext.java:269)
at org.springframework.web.context.support.AbstractRefreshableWebApplica tionContext.refresh(AbstractRefreshableWebApplicationContext.java:134)
at org.springframework.web.context.ContextLoader.createWebApplicationCon text(ContextLoader.java:246)
at org.springframework.web.context.ContextLoader.initWebApplicationConte xt(ContextLoader.java:184)
at org.springframework.web.context.ContextLoaderListener.contextInitiali zed(ContextLoaderListener.java:49)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContex t.java:3692)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4 127)
at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java: 1175)
at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServl et.java:527)
at org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServl et.java:104)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica torBase.java:514)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav a:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java :868)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.p rocessConnection(Http11BaseProtocol.java:663)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo int.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFol lowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP ool.java:684)
at java.lang.Thread.run(Thread.java:595)
09:53:17,962 ERROR [[Catalina].[localhost].[/alfresco]] Exception sending contex t initialized event to listener instance of class org.springframework.web.contex t.ContextLoaderListener
java.lang.ThreadDeath
And then the stacktrace it continues forever (is it necessary to log every exception three times?). So I tried to find the MD4 class and doing a small search with my wounderful findinjar script I discovered this jar file:webapps/alfresco/WEB-INF/lib/cryptix-jce-provider.jarRuns:jar -tf cryptix-jce-provider.jar | grep MD4Gives this result:cryptix/jce/provider/mac/HMAC_MD4.classcryptix/jce/provider/md/MD4.classcryptix/jce/provider/rsa/RSACipher_OAEP_MD4.classcryptix/jce/provider/rsa/RSASignature_PKCS1_MD4.classcryptix/jce/provider/rsa/RSASignature_PSS_MD4.classSo the class exists.Any suggestion?