Hi Pavlin, Generally speaking, placing dependencies willy nilly in tomcat/lib is not a good idea. These libraries are shared by other Tomcat applications, and by globally introducing/updating a library you run the risk of upsetting other Tomcat applications. It also makes upgrading Tomcat more involved.
The recommended course is to place dependencies inside the application's WEB-INF/lib directory. Then package it into a WAR, and deploy. Personally, I have placed roller-custom.properties outside both Tomcat and Roller, creating a symbolic link inside tomcat/lib. Hope this helps. Regards, Chris Dodunski. > Hi all, > > I'm quite new to Roller too (less than 12 hours), so may by I'm missing > some > points. > > I had similar problems with the installation of Roller, but found that > simply following the installation guide strictly makes it work. Namely you > really have to put the JDBC, Mail and Activation (JAF) jars in a place > where > Tomcat can find them (for example as the guide guides - in > ${TOMCAT_HOME}/common/lib). > > An other problem is that you can not do this if you don't have admin > rights > on the server environment where your web server runs. > > So my questions are: > - (JUST CURIOUS) Why Roller needs to put anything (libs, properties > etc.) > outside it's WAR in order to start context? > - (REQUIRED!) How can we overcome that restriction? > > Really appreciate a hint how to install Roller as simple war. Otherwise it > is no-go for me :-(. > > Anyone? > > Pavlin > > > > nanren888 wrote: >> >> Dave, Chris, many thanks. >> >> (1) Had not seen the distinction between JNDI & whatever the other is >> called at this point. Have long forgotten what little I knew of this. >> Seems exactly right. Had taken then message in the log about about >> rollerdb to be from the file. A default, I now assume. Should have >> changed >> it to test it. >> >> (2) Where to put roller-custom.properties? Had put it separately, as >> suggested by a comment online, when searching, specifically saying don't >> put it in tomcat directories, ... >> Had named it in the tomcat deploy "XML Configuration file URL: " & >> assumed that meant it could then find it, having been handed it. >> >> (3) Tomcat classpath? At this point, I have no clue which directories >> might be included in that. >> >> The guide says >> STEP 3: Create a roller-custom.properties file in your Servlet >> container's >> classpath, e.g. on Tomcat you'd put it in common/classes. >> But, of course, there is no "common" directory & there is no "classes" >> directory. >> >> Any chance you could just nominate a good place to put it? Standard, >> follow-the-guide install. (pathetic & pleadingly) could the guide just >> say >> where to put it, rather than where to not put it? >> >> I've put it in /lib. >> If that's a bad idea, please nominate a better place. >> >> But, again, many thanks. On to the next error, to do with >> authenticating >> that user on that database, so seems to be finding it now, should be >> easier to sort MySQL out. >> >> >> >> >> Christopher Dodunski-4 wrote: >>> >>> Hi, >>> >>> The "mail.hostName=send.xtra.co.nz" directive tells me I am >>> communicating >>> with a fellow Kiwi. I see Dave has since replied, suggesting that your >>> roller-custom.properties file may not be available to Roller - not in >>> the >>> Tomcat classpath. If you have since sorted it, great. If not, feel >>> free >>> to TXT me on 027 535 3722 for my landline - happy to provide some >>> verbal >>> support. >>> >>> The case study below outlines my particular configuration. >>> >>> http://assets.optomus.com/documents/Roller%205%20-%20Multi-domain%20Case%20Study.pdf >>> >>> Regards, >>> >>> Chris Dodunski. >>> (New Plymouth, NZ) >>> >>> >>>> This has got to be something simple. Can someone tell me the most >>>> likely >>>> causes? >>>> >>>> new J2EE install >>>> new MySQL install (mysql-essential-5.1.52-win32.msi) >>>> new connector (mysql-connector-java-5.1.13-bin.jar in tomcat/lib) >>>> new mail.jar ( in tomcat/lib from javamail-1.4.3.zip) >>>> new activation.jar (in tomcat/lib from jaf-1_0_2-upd2.zip) >>>> new tomcat install (apache-tomcat-6.0.29-windows-x86.zip) >>>> All exactly to guides. >>>> >>>> New to this, lost & frustrated. >>>> >>>>>>If you are posting a question, please try search first. Your question >>>>>> may >>>> have already been answered. >>>> Entirely agree, but, searched this error, here & web & get 1,000s of >>>> hits, >>>> seemingly no clear pattern to the fixes offered. >>>> Many (old?) install suggestions/guides about endless config files, >>>> most >>>> that >>>> simply do not talley with the install I see. References to putting >>>> contexts >>>> in config files & such, now seems to be a separate file? Many >>>> questions >>>> about complicated configurations; I just want the first vanila >>>> installation. >>>> >>>> Lost with no idea of a coherent direction! >>>> >>>> tomcat clearly running. >>>> examples run >>>> admin runs >>>> deploy does not complain about roller >>>> reload & undeploy do not complain. >>>> >>>> created rollerdb as per guide, granted rolleruser for both '%' & >>>> localhost >>>> as per guide. >>>> mysql worbench can see mysql by TCP & pipe. can see rollerdb & >>>> rolleruser >>>> Seems to confirm mysql is on 3306 >>>> mysql seems to say it is on utf8 >>>> >>>> >>>> roller creates log as included below. >>>> >>>> used roller-custom.properties placed separately as suggested >>>> elsewhere. >>>> >>>> installation.type=auto >>>> database.configurationType=jdbc >>>> database.jdbc.driverClass=com.mysql.jdbc.Driver >>>> database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb >>>> database.jdbc.username=rolleruser >>>> database.jdbc.password=rollerPassword >>>> mail.hostName=send.xtra.co.nz >>>> mail.username=<our account name here> >>>> mail.password=<our password here> >>>> >>>> Specific questions, from install >>>> Have seen reference to roller-custom.properties as an xml config file, >>>> but >>>> it is not xml: Just as here: plain text. Can someone confirm that it >>>> is >>>> just >>>> text as here? >>>> >>>> >>>> if a ask for localhost:8080/roller/roller-ui it redirects to >>>> localhost:8080/roller/roller-ui/login.rol, gives a login page & of >>>> course, >>>> fails with >>>> >>>> Unexpected Exception >>>> Status Code 500 >>>> Message Roller Weblogger has not been bootstrapped yet >>>> Type >>>> Exception Roller has encountered and logged an unexpected exception. >>>> >>>> <Not been bootstrapped>? Search of the install & guides gave me zero >>>> hits >>>> on >>>> bootstrapped. >>>> >>>> >>>> My guess, lots see the same problem. Anyone let me in on the secret 3 >>>> most >>>> likely things? >>>> >>>> Next steps are to search for an example jsp or two that just uses >>>> mysql >>>> so >>>> I >>>> can test connection separately to roller. Or maybe some stand-alone >>>> java >>>> example of jdbc, is that the name? >>>> >>>> After that it is back to randomly trying the thousand or so random >>>> configuration tips on the web, or maybe just set the machine to format >>>> & >>>> go >>>> watch TV? >>>> >>>> Lost, tired, bewildered. >>>> Any help much appreciated. >>>> >>>> >>>> >>>> >>>> Status Code 500 >>>> Message An exception occurred processing JSP page /index.jsp at line >>>> 31 >>>> 28: >>>> } else { 29: // dispatch to setup page 30: RequestDispatcher setuppage >>>> = >>>> request.getRequestDispatcher("/roller-ui/setup.rol"); 31: >>>> setuppage.forward(request, response); 32: } 33: 34: %> Stacktrace: >>>> Type >>>> Exception Roller has encountered and logged an unexpected exception. >>>> >>>> roller.log starts >>>> >>>> INFO 2010-11-21 07:58:48,234 DatabaseProvider:successMessage - >>>> SUCCESS: >>>> Got >>>> parameters. Using configuration type JNDI_NAME >>>> INFO 2010-11-21 07:58:48,234 DatabaseProvider:successMessage - -- >>>> Using >>>> JNDI datasource name: java:comp/env/jdbc/rollerdb >>>> INFO 2010-11-21 07:58:48,234 DatabaseProvider:successMessage - >>>> SUCCESS: >>>> located JNDI DataSource [java:comp/env/jdbc/rollerdb] >>>> ERROR 2010-11-21 07:58:48,250 DatabaseProvider:errorMessage - ERROR: >>>> unable >>>> to obtain database connection. Likely problem: bad connection >>>> parameters >>>> or >>>> database unavailable. >>>> FATAL 2010-11-21 07:58:48,265 RollerContext:contextInitialized - >>>> Roller >>>> Weblogger startup failed during app preparation >>>> org.apache.roller.weblogger.business.startup.StartupException: ERROR: >>>> unable >>>> to obtain database connection. Likely problem: bad connection >>>> parameters >>>> or >>>> database unavailable. >>>> at >>>> org.apache.roller.weblogger.business.DatabaseProvider.<init>(DatabaseProvider.java:148) >>>> at >>>> org.apache.roller.weblogger.business.startup.WebloggerStartup.prepare(WebloggerStartup.java:171) >>>> at >>>> org.apache.roller.weblogger.ui.core.RollerContext.contextInitialized(RollerContext.java:138) >>>> at >>>> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135) >>>> at >>>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4630) >>>> at >>>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) >>>> at >>>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) >>>> at >>>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546) >>>> at >>>> org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041) >>>> at >>>> org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964) >>>> at >>>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502) >>>> at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277) >>>> at >>>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321) >>>> at >>>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) >>>> at >>>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) >>>> at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) >>>> at >>>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) >>>> at >>>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) >>>> at >>>> org.apache.catalina.core.StandardService.start(StandardService.java:519) >>>> at >>>> org.apache.catalina.core.StandardServer.start(StandardServer.java:710) >>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:581) >>>> 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:597) >>>> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) >>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) >>>> --- ROOT CAUSE --- >>>> org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC >>>> driver >>>> of >>>> class '' for connect URL 'null' >>>> at >>>> org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1452) >>>> >>>> -- >>>> View this message in context: >>>> http://old.nabble.com/yet-another-install-problem-%3C---ERROR%3A-unable-to-obtain-database-connection.-Likely-problem%3A-bad-connection-parameters-or-database-unavailable.-tp30268237s12275p30268237.html >>>> Sent from the Roller - User mailing list archive at Nabble.com. >>>> >>> >>> >>> >>> >> >> > > -- > View this message in context: > http://old.nabble.com/yet-another-install-problem-%3C---ERROR%3A-unable-to-obtain-database-connection.-Likely-problem%3A-bad-connection-parameters-or-database-unavailable.-tp30268237s12275p30276977.html > Sent from the Roller - User mailing list archive at Nabble.com. >