cancel
Showing results for 
Search instead for 
Did you mean: 

Installing Alfresco 1.2rc - startup fails

tronda
Champ in-the-making
Champ in-the-making
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 tomcat
sudo 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.jar

Runs:
jar -tf cryptix-jce-provider.jar | grep MD4

Gives this result:
cryptix/jce/provider/mac/HMAC_MD4.class
cryptix/jce/provider/md/MD4.class
cryptix/jce/provider/rsa/RSACipher_OAEP_MD4.class
cryptix/jce/provider/rsa/RSASignature_PKCS1_MD4.class
cryptix/jce/provider/rsa/RSASignature_PSS_MD4.class

So the class exists.

Any suggestion?
7 REPLIES 7

gary_spencer
Champ in-the-making
Champ in-the-making
Hi,

Could you try moving the cryptix-jce-provider.jar to the Tomcat shared/lib folder.

Cheers

Gary

tronda
Champ in-the-making
Champ in-the-making
Thanks for the quick feedback.

Could you try moving the cryptix-jce-provider.jar to the Tomcat shared/lib folder.

That worked. I got a hibernate exception, but I guess the reason is that I haven't configured MySQL yet.

A little suggestion: The prepackaged alfresco/tomcat distribution should have put the cryptix-jca-provider.jar in the shared/lib directory so we don't have to figure this part out.

gary_spencer
Champ in-the-making
Champ in-the-making
Hi,

This is only the second time I've heard of this problem. What environment are you running in ?, have you made any changes to the default Java setup such as additional jars in the lib/ext folder or changes to properties files ?.

Cheers

Gary

tronda
Champ in-the-making
Champ in-the-making
This is only the second time I've heard of this problem. What environment are you running in ?, have you made any changes to the default Java setup such as additional jars in the lib/ext folder or changes to properties files ?.
I'm running Ubuntu 5.10 (Breezy) with Sun's jdk1.5.0_06. The jdk haven't been changed in any way other than adding some of the Linux truetype fonts. The following statement is on top of startup.sh script in tomcat/bin directory:

export JAVA_HOME=/usr/local/java/jdk1.5.0_06

None of Alfrescos property files have been altered.

gary_spencer
Champ in-the-making
Champ in-the-making
I'll grab a copy of Ubuntu and have a look into that.

Cheers

Gary

tronda
Champ in-the-making
Champ in-the-making
I'll grab a copy of Ubuntu and have a look into that.
If you don't want to install Ubuntu, I would recommend using WMWare Player which is a no-cost virtualization software. Very nice when trying out for instance Ubuntu.

http://www.vmware.com/products/player/

http://www.vmware.com/vmtn/vm/ubuntu.html


—— Trond

gary_spencer
Champ in-the-making
Champ in-the-making
Hi,

I use VMWare, I've got a Workstation licence, excellent bit of software.

I've installed Ubuntu and added Java 1.5 and the Alfresco 1.2 RC2 bundle. I've managed to get the Alfresco CIFS server working, had to set the domain name and broadcast mask in the file-servers.xml config file.

I've not been able to provoke the MD4/Cryptix exception here.

Cheers

Gary