Unable to start Bloomreach v14 vanilla instance

After installing a vanilla instance of version 14, I can get it to start using the mvn -Pcargo.run -Drepo.path=storage command, but when I take attempt to deploy the cms and site war files i am getting this message for both cms and site.

Any idea why this would fail to load when just using Tomcat?

org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/site]]
at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:743)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:719)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1015)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1895)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoClassDefFoundError: org/hippoecm/hst/core/container/ContainerException

Hi Al,
The ContainerException class is part of hst-api.jar which should be deployed in Tomcat’s shared/lib.

Are you building a tar.gz distribution as in Create a Project Distribution - Bloomreach Experience - Headless Digital Experience Platform ?

HTH
Jeroen

Hi Jeroen,

Thank you - I did forget that step! However, now I have a new problem when starting up Tomcat. Again, this is still a vanilla instance for v14. The site.war does not seem to have any issues starting up.

SEVERE: Servlet [Repository] in web application [/cms] threw load() exception
org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 6; The processing instruction target matching “[xX][mM][lL]” is not allowed.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:400)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1473)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPIData(XMLScanner.java:747)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanPIData(XMLDocumentFragmentScannerImpl.java:1014)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPI(XMLScanner.java:715)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:907)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:339)
at org.apache.jackrabbit.core.config.ConfigurationParser.parseXML(ConfigurationParser.java:280)
at org.apache.jackrabbit.core.config.RepositoryConfigurationParser.parseRepositoryConfig(RepositoryConfigurationParser.java:323)
at org.apache.jackrabbit.core.config.RepositoryConfig.create(RepositoryConfig.java:354)
at org.apache.jackrabbit.core.config.RepositoryConfig.create(RepositoryConfig.java:330)
at org.apache.jackrabbit.core.config.RepositoryConfig.create(RepositoryConfig.java:312)
at org.hippoecm.repository.LocalHippoRepository.createRepositoryConfig(LocalHippoRepository.java:301)
at org.hippoecm.repository.LocalHippoRepository.initialize(LocalHippoRepository.java:284)
at org.hippoecm.repository.LocalHippoRepository.create(LocalHippoRepository.java:122)
at org.hippoecm.repository.LocalHippoRepository.create(LocalHippoRepository.java:112)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.hippoecm.repository.HippoRepositoryFactory.getHippoRepository(HippoRepositoryFactory.java:147)
at org.hippoecm.repository.RepositoryServlet.init(RepositoryServlet.java:207)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1143)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1090)

Hi,
It seems that the repository.xml file that is used is invalid XML.
If you don’t know where it is located, you can set log level of class org.hippoecm.repository.LocalHippoRepository to INFO (or DEBUG) in your log4j2.xml

HTH
Jeroen

Jeoren,

This is the repository.xml file that I set up and put in /opt/cms/tomcat/conf , correct?

Yes that one makes sense.
As said, LocalHippoRepository should output its location on INFO log level.

Regards, Jeroen

1 Like