Hitoshi Ozawa:
First of all, is it necessary to cluster on EC2?
Hi Hitoshi, I assumed it would be easiest to expand liferay's capacity when under high load by auto spawning additional instances of liferay on demand. Also, I thought incase one server died the surving servers in the cluster would keep the site online. I am new to amazon cloud and would love to hear what others are doing/recommending.
Hitoshi Ozawa:
you can put your indexes on a shared drive or in a database
I avoided that because the documentation recomended against it. Have you had success with a shared drive?
I did do some digging and found that it is possible to run EhCahe w/o multicasting by changing the default behaviour of peerProvider type from 'automatic' to 'manual' and by specifying each cache peer via rmiURLs as decribed in
this link, but I have been unsuccessful in getting this working.
What I did exactly was added these settings to my portel-ext.properties file:
1net.sf.ehcache.configurationResourceName=[b]/custom-ehcache/[/b]hibernate-clustered.xml
2net.sf.ehcache.configurationResourceName.peerProviderProperties=[b]peerDiscovery=manual,rmiUrls=//ffweb2:40001[/b]
3
4ehcache.multi.vm.config.location=[b]/custom-ehcache/l[/b]iferay-multi-vm-clustered.xml
5ehcache.multi.vm.config.location.peerProviderProperties=[b]manual,rmiUrls=//ffweb2:40001[/b]
I then created the 'custom-ehcache' folder in my tomcat's: webapps/ROOT/WEB-INF/classes/ folder and copied 'hibernate-clustered.xml', and 'liferay-multi-vm-clustered.xml' from portal-impl.jar file and placed these files in my 'custom-ehcache' folder:
1tomcat/webapps/ROOT/WEB-INF/classes/custom-ehcache/
2├── hibernate-clustered.xml
3└── liferay-multi-vm-clustered.xml
I then modified cacheManagerPeerListenerFactory definitions in these files as so:
hibernate-clustered.xml 1
2<ehcache
3 dynamicConfig="false"
4 monitoring="off"
5 name="hibernate-clustered"
6 updateCheck="false"
7 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8 xsi:noNamespaceSchemaLocation="ehcache.xsd"
9>
10 <cacheManagerPeerProviderFactory
11 class="com.liferay.portal.cache.ehcache.LiferayCacheManagerPeerProviderFactory"
12 properties="portalPropertyKey=net.sf.ehcache.configurationResourceName.peerProviderProperties"
13 propertySeparator=","
14 />
15 <cacheManagerPeerListenerFactory
16 class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
17 [b]properties="port=40001,
18 remoteObjectPort=40002,
19 socketTimeoutMillis=120000"[/b]
20 />
liferay-multi-vm-clustered.xml:
1
2<ehcache
3 dynamicConfig="true"
4 monitoring="off"
5 name="liferay-multi-vm-clustered"
6 updateCheck="false"
7 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8 xsi:noNamespaceSchemaLocation="ehcache.xsd"
9>
10
11 <!--
12 Caches in this file can be clustered and are configured to be clustered.
13 -->
14
15 <cacheManagerPeerProviderFactory
16 class="com.liferay.portal.cache.ehcache.LiferayCacheManagerPeerProviderFactory"
17 properties="portalPropertyKey=ehcache.multi.vm.config.location.peerProviderProperties"
18 propertySeparator=","
19 />
20 <cacheManagerPeerListenerFactory
21 class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
22 [b]properties="port=40001,
23 remoteObjectPort=40002,
24 socketTimeoutMillis=120000"[/b]
25 />
And when I start tomcat I am presented with many errors regarding bean creation failures, none that I fully understand:
1Apr 2, 2012 1:41:40 AM org.apache.catalina.core.AprLifecycleListener init
2INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/jdk1.6.0_25/jre/lib/amd64/server:/usr/lib/jvm/jdk1.6.0_25/jre/lib/amd64:/usr/lib/jvm/jdk1.6.0_25/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
3Apr 2, 2012 1:41:41 AM org.apache.coyote.AbstractProtocol init
4INFO: Initializing ProtocolHandler ["http-bio-80"]
5Apr 2, 2012 1:41:41 AM org.apache.coyote.AbstractProtocol init
6INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
7Apr 2, 2012 1:41:41 AM org.apache.catalina.startup.Catalina load
8INFO: Initialization processed in 1111 ms
9Apr 2, 2012 1:41:41 AM org.apache.catalina.core.StandardService startInternal
10INFO: Starting service Catalina
11Apr 2, 2012 1:41:41 AM org.apache.catalina.core.StandardEngine startInternal
12INFO: Starting Servlet Engine: Apache Tomcat/7.0.23
13Apr 2, 2012 1:41:41 AM org.apache.catalina.startup.HostConfig deployDescriptor
14INFO: Deploying configuration descriptor /usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/conf/Catalina/localhost/ROOT.xml
15Loading jar:file:/usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/system.properties
1601:41:44,512 INFO [EasyConf:122] Refreshed the configuration of all components
1701:41:45,365 INFO [ConfigurationLoader:56] Properties for jar:file:/usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal loaded from [file:/usr/local/liferay/portal-setup-wizard.properties, file:/usr/local/liferay/portal-ext.properties, jar:file:/usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal.properties]
18Loading jar:file:/usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal.properties
19Loading file:/usr/local/liferay/portal-ext.properties
20Loading file:/usr/local/liferay/portal-setup-wizard.properties
2101:41:54,206 INFO [DialectDetector:80] Determine dialect for MySQL 5
2201:41:54,256 INFO [DialectDetector:145] Found dialect org.hibernate.dialect.MySQLDialect
2301:41:55,105 INFO [LiferayCacheManagerPeerProviderFactory:76] [b]portalPropertyKey net.sf.ehcache.configurationResourceName.peerProviderProperties has value peerDiscovery=manual,rmiUrls=//ffweb2:40001[/b]
2401:42:22,845 INFO [LiferayCacheManagerPeerProviderFactory:76] [b]portalPropertyKey ehcache.multi.vm.config.location.peerProviderProperties has value manual,rmiUrls=//ffweb2:40001[/b]
25[b]01:42:23,097 ERROR [ContextLoader:227] Context initialization failed[/b]
26org.springframework.beans.factory.BeanCreationException: [b]Error creating bean with name 'com.liferay.portal.cache.keypool.MultiVMKeyPool'[/b] defined in class path resource [META-INF/util-spring.xml]: [b]Cannot resolve reference to bean 'com.liferay.portal.cache.keypool.MultiVMKeyPoolPortalCacheManager'[/b] while setting bean property 'portalCacheManager'; nested exception is org.springframework.beans.factory.BeanCreationException:[b] Error creating bean with name 'com.liferay.portal.cache.keypool.MultiVMKeyPoolPortalCacheManager'[/b] defined in class path resource [META-INF/util-spring.xml]: [b]Cannot resolve reference to bean 'com.liferay.portal.kernel.cache.MultiVMPool'[/b] while setting bean property 'multiVMPool'; nested exception is org.springframework.beans.factory.BeanCreationException: [b]Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPool' [/b]defined in class path resource [META-INF/util-spring.xml]: [b]Cannot resolve reference to bean 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager'[/b] while setting bean property 'portalCacheManager'; nested exception is org.springframework.beans.factory.BeanCreationException: [b]Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager'[/b] defined in class path resource [META-INF/util-spring.xml]: Invocation of init method failed; [b]nested exception is java.lang.NumberFormatException: null[/b]
27 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
28 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
29 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
30 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
31 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
32 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
33 at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
34 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
35 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
36 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
37 at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
38 at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
39 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
40 at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:282)
41 at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:204)
42 at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
43 at com.liferay.portal.spring.context.PortalContextLoaderListener.contextInitialized(PortalContextLoaderListener.java:159)
44 at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765)
45 at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260)
46 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
47 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
48 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
49 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
50 at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
51 at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1581)
52 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
53 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
54 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
55 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
56 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
57 at java.lang.Thread.run(Thread.java:662)
58Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.liferay.portal.cache.keypool.MultiVMKeyPoolPortalCacheManager' defined in class path resource [META-INF/util-spring.xml]: Cannot resolve reference to bean 'com.liferay.portal.kernel.cache.MultiVMPool' while setting bean property 'multiVMPool'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPool' defined in class path resource [META-INF/util-spring.xml]: Cannot resolve reference to bean 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager' while setting bean property 'portalCacheManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager' defined in class path resource [META-INF/util-spring.xml]: Invocation of init method failed; nested exception is java.lang.NumberFormatException: null
59 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
60 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
61 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
62 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
63 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
64 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
65 at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
66 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
67 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
68 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
69 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
70 ... 30 more
71Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPool' defined in class path resource [META-INF/util-spring.xml]: Cannot resolve reference to bean 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager' while setting bean property 'portalCacheManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager' defined in class path resource [META-INF/util-spring.xml]: Invocation of init method failed; nested exception is java.lang.NumberFormatException: null
72 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
73 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
74 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
75 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
76 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
77 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
78 at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
79 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
80 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
81 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
82 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
83 ... 40 more
84Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.liferay.portal.kernel.cache.MultiVMPortalCacheManager' defined in class path resource [META-INF/util-spring.xml]: Invocation of init method failed; nested exception is java.lang.NumberFormatException: null
85 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420)
86 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
87 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
88 at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
89 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
90 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
91 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
92 at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
93 ... 50 more
94Caused by: java.lang.NumberFormatException: null
95 at java.lang.Integer.parseInt(Integer.java:417)
96 at java.lang.Integer.valueOf(Integer.java:554)
97 at net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory.createAutomaticallyConfiguredCachePeerProvider(RMICacheManagerPeerProviderFactory.java:115)
98 at net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory.createCachePeerProvider(RMICacheManagerPeerProviderFactory.java:61)
99 at com.liferay.portal.cache.ehcache.LiferayCacheManagerPeerProviderFactory.createCachePeerProvider(LiferayCacheManagerPeerProviderFactory.java:109)
100 at net.sf.ehcache.config.ConfigurationHelper.createCachePeerProviders(ConfigurationHelper.java:132)
101 at net.sf.ehcache.CacheManager.configure(CacheManager.java:617)
102 at net.sf.ehcache.CacheManager.init(CacheManager.java:361)
103 at net.sf.ehcache.CacheManager.<init>(CacheManager.java:230)
104 at com.liferay.portal.cache.ehcache.EhcachePortalCacheManager.afterPropertiesSet(EhcachePortalCacheManager.java:69)
105 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
106 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
107 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
108 at java.lang.reflect.Method.invoke(Method.java:597)
109 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1544)
110 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1485)
111 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
112 ... 57 more
113Apr 2, 2012 1:42:23 AM org.apache.catalina.core.StandardContext startInternal
114SEVERE: Error listenerStart
115Apr 2, 2012 1:42:23 AM org.apache.catalina.core.StandardContext startInternal
116SEVERE: Context [] startup failed due to previous errors
117Apr 2, 2012 1:42:23 AM org.apache.catalina.startup.HostConfig deployDirectory
118INFO: Deploying web application directory /usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/web-form-portlet
119Apr 2, 2012 1:42:23 AM org.apache.catalina.startup.HostConfig deployDirectory
120INFO: Deploying web application directory /usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/wsrp-portlet
121Apr 2, 2012 1:42:26 AM org.apache.catalina.startup.HostConfig deployDirectory
122INFO: Deploying web application directory /usr/local/liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/mail-portlet
123Apr 2, 2012 1:42:26 AM org.apache.coyote.AbstractProtocol start
124INFO: Starting ProtocolHandler ["http-bio-80"]
125Apr 2, 2012 1:42:26 AM org.apache.coyote.AbstractProtocol start
126INFO: Starting ProtocolHandler ["ajp-bio-8009"]
127Apr 2, 2012 1:42:26 AM org.apache.catalina.startup.Catalina start
128INFO: Server startup in 45212 ms
129Apr 2, 2012 1:43:19 AM org.apache.catalina.core.StandardServer await
130INFO: A valid shutdown command was received via the shutdown port. Stopping the Server instance.
131Apr 2, 2012 1:43:19 AM org.apache.coyote.AbstractProtocol pause
132INFO: Pausing ProtocolHandler ["http-bio-80"]
133Apr 2, 2012 1:43:19 AM org.apache.coyote.AbstractProtocol pause
134INFO: Pausing ProtocolHandler ["ajp-bio-8009"]
135Apr 2, 2012 1:43:19 AM org.apache.catalina.core.StandardService stopInternal
136INFO: Stopping service Catalina
137Apr 2, 2012 1:43:19 AM org.apache.catalina.util.LifecycleBase stop
138INFO: The stop() method was called on component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]] after stop() had already been called. The second call will be ignored.
139Apr 2, 2012 1:43:19 AM org.apache.catalina.loader.WebappClassLoader loadClass
140INFO: Illegal access: this web application instance has been stopped already. Could not load org.apache.commons.logging.impl.LogFactoryImpl. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
141java.lang.IllegalStateException
142 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1574)
143 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1533)
144 at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1131)
145 at org.apache.commons.logging.LogFactory$2.run(LogFactory.java:1065)
146 at java.security.AccessController.doPrivileged(Native Method)
147 at org.apache.commons.logging.LogFactory.newFactory(LogFactory.java:1062)
148 at org.apache.commons.logging.LogFactory.getFactory(LogFactory.java:650)
149 at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
150 at org.apache.commons.configuration.AbstractFileConfiguration.<init>(AbstractFileConfiguration.java:121)
151 at org.apache.commons.configuration.AbstractFileConfiguration.<init>(AbstractFileConfiguration.java:136)
152 at org.apache.commons.configuration.PropertiesConfiguration.<init>(PropertiesConfiguration.java:237)
153 at com.germinus.easyconf.AggregatedProperties.addFileProperties(AggregatedProperties.java:164)
154 at com.germinus.easyconf.AggregatedProperties.addPropertiesSource(AggregatedProperties.java:140)
155 at com.germinus.easyconf.AggregatedProperties.addGlobalFileName(AggregatedProperties.java:123)
156 at com.germinus.easyconf.ConfigurationLoader.readPropertiesConfiguration(ConfigurationLoader.java:48)
157 at com.germinus.easyconf.ComponentConfiguration.getAvailableProperties(ComponentConfiguration.java:152)
158 at com.germinus.easyconf.ComponentConfiguration.getProperties(ComponentConfiguration.java:140)
159 at com.liferay.portal.configuration.ConfigurationImpl.getComponentProperties(ConfigurationImpl.java:439)
160 at com.liferay.portal.configuration.ConfigurationImpl.printSources(ConfigurationImpl.java:492)
161 at com.liferay.portal.configuration.ConfigurationImpl.<init>(ConfigurationImpl.java:100)
162 at com.liferay.portal.configuration.ConfigurationImpl.<init>(ConfigurationImpl.java:67)
163 at com.liferay.portal.configuration.ConfigurationFactoryImpl.getConfiguration(ConfigurationFactoryImpl.java:28)
164 at com.liferay.portal.kernel.configuration.ConfigurationFactoryUtil.getConfiguration(ConfigurationFactoryUtil.java:25)
165 at com.liferay.util.portlet.PortletProps.<init>(PortletProps.java:65)
166 at com.liferay.util.portlet.PortletProps.<clinit>(PortletProps.java:69)
167 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
168 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
169 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
170 at java.lang.reflect.Method.invoke(Method.java:597)
171 at com.liferay.wsrp.service.ClpSerializer.getServletContextName(ClpSerializer.java:56)
172 at com.liferay.wsrp.service.WSRPConsumerPortletLocalServiceUtil.getService(WSRPConsumerPortletLocalServiceUtil.java:375)
173 at com.liferay.wsrp.service.WSRPConsumerPortletLocalServiceUtil.destroyWSRPConsumerPortlets(WSRPConsumerPortletLocalServiceUtil.java:312)
174 at com.liferay.wsrp.servlet.WSRPServletContextListener.doPortalDestroy(WSRPServletContextListener.java:41)
175 at com.liferay.portal.kernel.util.BasePortalLifecycle.portalDestroy(BasePortalLifecycle.java:30)
176 at com.liferay.wsrp.servlet.WSRPServletContextListener.contextDestroyed(WSRPServletContextListener.java:32)
177 at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4805)
178 at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5453)
179 at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
180 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1540)
181 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1530)
182 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
183 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
184 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
185 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
186 at java.lang.Thread.run(Thread.java:662)
187Apr 2, 2012 1:43:19 AM org.apache.catalina.loader.WebappClassLoader loadClass
188INFO: Illegal access: this web application instance has been stopped already. Could not load org.apache.commons.logging.impl.LogFactoryImpl$3. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
189java.lang.IllegalStateException
190 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1574)
191 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1533)
192 at org.apache.commons.logging.impl.LogFactoryImpl.getParentClassLoader(LogFactoryImpl.java:700)
193 at org.apache.commons.logging.impl.LogFactoryImpl.createLogFromClass(LogFactoryImpl.java:1187)
194 at org.apache.commons.logging.impl.LogFactoryImpl.discoverLogImplementation(LogFactoryImpl.java:914)
195 at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:604)
196 at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:336)
197 at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:310)
198 at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
199 at org.apache.commons.configuration.AbstractFileConfiguration.<init>(AbstractFileConfiguration.java:121)
200 at org.apache.commons.configuration.AbstractFileConfiguration.<init>(AbstractFileConfiguration.java:136)
201 at org.apache.commons.configuration.PropertiesConfiguration.<init>(PropertiesConfiguration.java:237)
202 at com.germinus.easyconf.AggregatedProperties.addFileProperties(AggregatedProperties.java:164)
203 at com.germinus.easyconf.AggregatedProperties.addPropertiesSource(AggregatedProperties.java:140)
204 at com.germinus.easyconf.AggregatedProperties.addGlobalFileName(AggregatedProperties.java:123)
205 at com.germinus.easyconf.ConfigurationLoader.readPropertiesConfiguration(ConfigurationLoader.java:48)
206 at com.germinus.easyconf.ComponentConfiguration.getAvailableProperties(ComponentConfiguration.java:152)
207 at com.germinus.easyconf.ComponentConfiguration.getProperties(ComponentConfiguration.java:140)
208 at com.liferay.portal.configuration.ConfigurationImpl.getComponentProperties(ConfigurationImpl.java:439)
209 at com.liferay.portal.configuration.ConfigurationImpl.printSources(ConfigurationImpl.java:492)
210 at com.liferay.portal.configuration.ConfigurationImpl.<init>(ConfigurationImpl.java:100)
211 at com.liferay.portal.configuration.ConfigurationImpl.<init>(ConfigurationImpl.java:67)
212 at com.liferay.portal.configuration.ConfigurationFactoryImpl.getConfiguration(ConfigurationFactoryImpl.java:28)
213 at com.liferay.portal.kernel.configuration.ConfigurationFactoryUtil.getConfiguration(ConfigurationFactoryUtil.java:25)
214 at com.liferay.util.portlet.PortletProps.<init>(PortletProps.java:65)
215 at com.liferay.util.portlet.PortletProps.<clinit>(PortletProps.java:69)
216 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
217 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
218 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
219 at java.lang.reflect.Method.invoke(Method.java:597)
220 at com.liferay.wsrp.service.ClpSerializer.getServletContextName(ClpSerializer.java:56)
221 at com.liferay.wsrp.service.WSRPConsumerPortletLocalServiceUtil.getService(WSRPConsumerPortletLocalServiceUtil.java:375)
222 at com.liferay.wsrp.service.WSRPConsumerPortletLocalServiceUtil.destroyWSRPConsumerPortlets(WSRPConsumerPortletLocalServiceUtil.java:312)
223 at com.liferay.wsrp.servlet.WSRPServletContextListener.doPortalDestroy(WSRPServletContextListener.java:41)
224 at com.liferay.portal.kernel.util.BasePortalLifecycle.portalDestroy(BasePortalLifecycle.java:30)
225 at com.liferay.wsrp.servlet.WSRPServletContextListener.contextDestroyed(WSRPServletContextListener.java:32)
226 at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4805)
227 at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5453)
228 at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
229 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1540)
230 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1530)
231 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
232 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
233 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
234 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
235 at java.lang.Thread.run(Thread.java:662)
23601:43:19,940 ERROR [PortletBeanLocatorUtil:38] BeanLocator is null for servlet context wsrp-portlet
23701:43:19,942 ERROR [BasePortalLifecycle:33] com.liferay.portal.kernel.bean.BeanLocatorException: BeanLocator has not been set for servlet context wsrp-portlet
238com.liferay.portal.kernel.bean.BeanLocatorException: BeanLocator has not been set for servlet context wsrp-portlet
239 at com.liferay.portal.kernel.bean.PortletBeanLocatorUtil.locate(PortletBeanLocatorUtil.java:42)
240 at com.liferay.wsrp.service.WSRPConsumerPortletLocalServiceUtil.getService(WSRPConsumerPortletLocalServiceUtil.java:375)
241 at com.liferay.wsrp.service.WSRPConsumerPortletLocalServiceUtil.destroyWSRPConsumerPortlets(WSRPConsumerPortletLocalServiceUtil.java:312)
242 at com.liferay.wsrp.servlet.WSRPServletContextListener.doPortalDestroy(WSRPServletContextListener.java:41)
243 at com.liferay.portal.kernel.util.BasePortalLifecycle.portalDestroy(BasePortalLifecycle.java:30)
244 at com.liferay.wsrp.servlet.WSRPServletContextListener.contextDestroyed(WSRPServletContextListener.java:32)
245 at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4805)
246 at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5453)
247 at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
248 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1540)
249 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1530)
250 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
251 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
252 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
253 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
254 at java.lang.Thread.run(Thread.java:662)
25501:43:19,944 ERROR [BasePortalLifecycle:33] java.lang.NullPointerException
256java.lang.NullPointerException
257 at com.liferay.portal.kernel.servlet.PortalClassLoaderServletContextListener.doPortalDestroy(PortalClassLoaderServletContextListener.java:66)
258 at com.liferay.portal.kernel.util.BasePortalLifecycle.portalDestroy(BasePortalLifecycle.java:30)
259 at com.liferay.portal.kernel.servlet.PortalClassLoaderServletContextListener.contextDestroyed(PortalClassLoaderServletContextListener.java:36)
260 at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4805)
261 at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5453)
262 at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
263 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1540)
264 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1530)
265 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
266 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
267 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
268 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
269 at java.lang.Thread.run(Thread.java:662)
27001:43:19,962 ERROR [BasePortalLifecycle:33] java.lang.NullPointerException
271java.lang.NullPointerException
272 at com.liferay.portal.kernel.servlet.PortalClassLoaderServletContextListener.doPortalDestroy(PortalClassLoaderServletContextListener.java:66)
273 at com.liferay.portal.kernel.util.BasePortalLifecycle.portalDestroy(BasePortalLifecycle.java:30)
274 at com.liferay.portal.kernel.servlet.PortalClassLoaderServletContextListener.contextDestroyed(PortalClassLoaderServletContextListener.java:36)
275 at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4805)
276 at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5453)
277 at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
278 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1540)
279 at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1530)
280 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
281 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
282 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
283 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
284 at java.lang.Thread.run(Thread.java:662)
285Apr 2, 2012 1:43:19 AM org.apache.coyote.AbstractProtocol stop
286INFO: Stopping ProtocolHandler ["http-bio-80"]
287Apr 2, 2012 1:43:19 AM org.apache.coyote.AbstractProtocol stop
288INFO: Stopping ProtocolHandler ["ajp-bio-8009"]
289Apr 2, 2012 1:43:19 AM org.apache.coyote.AbstractProtocol destroy
290INFO: Destroying ProtocolHandler ["http-bio-80"]
291Apr 2, 2012 1:43:19 AM org.apache.coyote.AbstractProtocol destroy
292INFO: Destroying ProtocolHandler ["ajp-bio-8009"]
Hopefully I am missing something simple, or someone who has done this can share thier knowledge.
Thanks,
-steve