Here is what I did:
cd /path/to/apache-roller-blah.zip
unzip apache-roller-blah.zip
cd apache-roller-blah/webapps/roller
jar cvf /somewhere/roller.war *
vi roller-custom.properties
installation.type=auto
database.configurationType=jdbc
database.jdbc.driverClass=com.mysql.jdbc.Driver
database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb
database.jdbc.username=roller
database.jdbc.password=fooblat
mail.configurationType=properties
mail.hostname=mail.cityofprescott.org
cp roller-custom.properties
/opt/SUNWappserver/appserver/domains/domain1/lib/classes
chmod 444
/opt/SUNWappserver/appserver/domains/domain1/lib/classes/roller-custom.properties
When I deploy the .war file I get this in server.log (not sure what this
means but it isn't good obviously):
[#|2007-12-20T12:02:24.197-0700|INFO|sun-appserver9.1|javax.enterprise.system.tools.deployment|_ThreadID=27;_ThreadName=Thread-45;|deployed
with moduleid = roller|#]
[#|2007-12-20T12:02:26.210-0700|INFO|sun-appserver9.1|javax.enterprise.system.container.web|_ThreadID=28;_ThreadName=Thread-44;|PWC1412:
WebModule[/roller] ServletContext.log():Loading Spring root
WebApplicationContext|#]
[#|2007-12-20T12:02:27.777-0700|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=28;_ThreadName=Thread-44;|
Roller Weblogger: Successfully loaded custom properties file from
classpath|#]
[#|2007-12-20T12:02:34.332-0700|INFO|sun-appserver9.1|javax.enterprise.system.core.security|_ThreadID=28;_ThreadName=Thread-44;|JACC
Policy Provider: PolicyWrapper.implies, context(null)-
permission((java.lang.reflect.ReflectPermission suppressAccessChecks))
domain that failed(ProtectionDomain
(file:/opt/SUNWappserver/appserver/domains/domain1/applications/j2ee-modules/roller/WEB-INF/lib/xwork-2.0.4.jar
<no signer certificates>)
WebappClassLoader
delegate: true
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
EJBClassLoader :
urlSet = []
doneCalled = false
Parent -> [EMAIL PROTECTED]
<no principals>
[EMAIL PROTECTED] (
(javax.management.MBeanPermission [com.sun.messaging.jms.*:*] *)
(java.util.PropertyPermission java.version read)
(java.util.PropertyPermission java.vm.name read)
(java.util.PropertyPermission java.vm.vendor read)
(java.util.PropertyPermission os.name read)
(java.util.PropertyPermission java.vendor.url read)
(java.util.PropertyPermission java.vm.specification.vendor read)
(java.util.PropertyPermission java.specification.vendor read)
(java.util.PropertyPermission os.version read)
(java.util.PropertyPermission java.specification.name read)
(java.util.PropertyPermission java.class.version read)
(java.util.PropertyPermission file.separator read)
(java.util.PropertyPermission java.vm.version read)
(java.util.PropertyPermission os.arch read)
(java.util.PropertyPermission java.vm.specification.name read)
(java.util.PropertyPermission java.vm.specification.version read)
(java.util.PropertyPermission java.specification.version read)
(java.util.PropertyPermission java.vendor read)
(java.util.PropertyPermission * read,write)
(java.util.PropertyPermission path.separator read)
(java.util.PropertyPermission line.separator read)
(java.io.FilePermission /var/tmp//- delete)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/lib/databases/- delete)
(java.io.FilePermission <<ALL FILES>> read,write)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/applications/j2ee-modules/roller/WEB-INF/lib/-
read)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/applications/j2ee-modules/roller/WEB-INF/lib
read)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/applications/j2ee-modules/roller/-
read)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/applications/j2ee-modules/roller
read)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/generated/jsp/j2ee-modules/roller/-
read,write,delete)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/generated/jsp/j2ee-modules/roller
read,write)
(java.io.FilePermission
/opt/SUNWappserver/appserver/domains/domain1/applications/j2ee-modules/roller/WEB-INF/lib/xwork-2.0.4.jar
read)
(unresolved
com.sun.corba.ee.impl.presentation.rmi.DynamicAccessPermission access null)
(unresolved com.sun.enterprise.security.CORBAObjectPermission * *)
(java.net.SocketPermission localhost:1024- listen,resolve)
(java.net.SocketPermission * connect,resolve)
(org.apache.naming.JndiPermission jndi:/server/roller/WEB-INF/classes/*)
(org.apache.naming.JndiPermission jndi:/server/roller/*)
(org.apache.naming.JndiPermission jndi:/server/roller/WEB-INF/lib/*)
(javax.management.MBeanTrustPermission register)
(javax.security.auth.PrivateCredentialPermission
javax.resource.spi.security.PasswordCredential * "*" read)
(java.lang.RuntimePermission loadLibrary.*)
(java.lang.RuntimePermission getClassLoader)
(java.lang.RuntimePermission modifyThreadGroup)
(java.lang.RuntimePermission accessDeclaredMembers)
(java.lang.RuntimePermission setContextClassLoader)
(java.lang.RuntimePermission queuePrintJob)
(java.lang.RuntimePermission getProtectionDomain)
(java.lang.RuntimePermission stopThread)
)
)|#]
[#|2007-12-20T12:02:34.337-0700|SEVERE|sun-appserver9.1|javax.enterprise.system.container.web|_ThreadID=28;_ThreadName=Thread-44;_RequestID=409f91df-89a1-4d54-8d99-23b24e89207c;|WebModule[/roller]PWC1270:
Exception starting filter struts2
java.security.AccessControlException: access denied
(java.lang.reflect.ReflectPermission suppressAccessChecks)
at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
at
java.security.AccessController.checkPermission(AccessController.java:427)
at
java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at
java.lang.reflect.AccessibleObject.setAccessible(AccessibleObject.java:107)
at
com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.<init>(ContainerImpl.java:275)
at
com.opensymphony.xwork2.inject.ContainerImpl$3.create(ContainerImpl.java:130)
at
com.opensymphony.xwork2.inject.ContainerImpl$3.create(ContainerImpl.java:128)
at
com.opensymphony.xwork2.inject.ContainerImpl.addInjectorsForMembers(ContainerImpl.java:154)
at
com.opensymphony.xwork2.inject.ContainerImpl.addInjectorsForMethods(ContainerImpl.java:126)
at
com.opensymphony.xwork2.inject.ContainerImpl.injectStatics(ContainerImpl.java:111)
at
com.opensymphony.xwork2.inject.ContainerBuilder.create(ContainerBuilder.java:494)
at
com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:145)
at
com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
at
org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
at
org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
at
org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201)
at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:257)
at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:369)
at
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4381)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:5181)
at com.sun.enterprise.web.WebModule.start(WebModule.java:327)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:973)
at
org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:148)
at
org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:170)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:955)
at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688)
at
com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1581)
at
com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1222)
at
com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:182)
at
com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:278)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:974)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:961)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:464)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
at
com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:308)
at
com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:226)
at
com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:298)
at
com.sun.enterprise.deployment.phasing.ApplicationStartPhase.runPhase(ApplicationStartPhase.java:132)
at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:591)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:635)
at
com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:744)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:375)
at
com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:358)
at
com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:464)
at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:90)
at $Proxy1.invoke(Unknown Source)
at
com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:304)
at
com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:174)
at
com.sun.enterprise.deployment.client.DeploymentClientUtils.startApplication(DeploymentClientUtils.java:145)
at
com.sun.enterprise.deployment.client.DeployAction.run(DeployAction.java:537)
at java.lang.Thread.run(Thread.java:595)
|#]
[#|2007-12-20T12:02:34.713-0700|SEVERE|sun-appserver9.1|org.apache.catalina.core.StandardContext|_ThreadID=28;_ThreadName=Thread-44;_RequestID=409f91df-89a1-4d54-8d99-23b24e89207c;|PWC1306:
Startup of context /roller failed due to previous errors|#]
[#|2007-12-20T12:02:34.729-0700|SEVERE|sun-appserver9.1|javax.enterprise.system.container.web|_ThreadID=28;_ThreadName=Thread-44;_RequestID=409f91df-89a1-4d54-8d99-23b24e89207c;|WebModule[/roller]PWC1277:
Exception sending context destroyed event to listener instance of class
org.apache.roller.weblogger.ui.core.RollerContext
java.lang.IllegalStateException: Roller Weblogger has not been
bootstrapped yet
at
org.apache.roller.weblogger.business.WebloggerFactory.getWeblogger(WebloggerFactory.java:60)
at
org.apache.roller.weblogger.ui.core.RollerContext.contextDestroyed(RollerContext.java:215)
at
org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4559)
at
org.apache.catalina.core.StandardContext.stop(StandardContext.java:5347)
at com.sun.enterprise.web.WebModule.stop(WebModule.java:356)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:5203)
at com.sun.enterprise.web.WebModule.start(WebModule.java:327)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:973)
at
org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:148)
at
org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:170)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:955)
at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688)
at
com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1581)
at
com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1222)
at
com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:182)
at
com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:278)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:974)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:961)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:464)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
at
com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:308)
at
com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:226)
at
com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:298)
at
com.sun.enterprise.deployment.phasing.ApplicationStartPhase.runPhase(ApplicationStartPhase.java:132)
at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:591)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:635)
at
com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:744)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:375)
at
com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:358)
at
com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:464)
at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:90)
at $Proxy1.invoke(Unknown Source)
at
com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:304)
at
com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:174)
at
com.sun.enterprise.deployment.client.DeploymentClientUtils.startApplication(DeploymentClientUtils.java:145)
at
com.sun.enterprise.deployment.client.DeployAction.run(DeployAction.java:537)
at java.lang.Thread.run(Thread.java:595)
|#]