roller-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Dodunski" <ChrisFromSquir...@christopher.net.nz>
Subject Re: yet another install problem <-- ERROR: unable to obtain database connection. Likely problem: bad connection parameters or database unavailable.
Date Mon, 22 Nov 2010 22:33:09 GMT
Hi Pavlin,

I expect Dave (the lead developer) will respond shortly to your question. 
I'd be interested in hearing the answer also.  I mentioned that I placed
my properties file outside both Roller and Tomcat.  If you're interested
in seeing my configuration, browse to the below case study.  A symbolic
link was placed in tomcat/lib (Tomcat version 6.0.29).

http://assets.optomus.com/documents/Roller%205%20-%20Multi-domain%20Case%20Study.pdf

Regards,

Chris Dodunski.


> Hi Chris and thanks for your quick response!
>
> I agree with you, that placing library dependency outside the
> webapp/${app}
> folder or ${app}.WAR potentially leads to troubles with versions among
> different web apps, but ...
>
> Roller would just not start if I don't follow the installation guide
> advise
> and don't put the libraries in the common/lib or any other place
> accessible
> by the bootstrap process of the web server.
>
> I certainly want to avoid this, but still didn't find/receive any hint how
> to do it if only possible.
>
> There was some forum note, that it is just like that, but no in depth
> explanation found yet.
> I believe I could do some bootstrap debugging and find the answer my self,
> but my time is ind of limited right now, so I decided to ask the
> community.
>
> Regards,
>
> Pavlin
>
>
>
>
> Christopher Dodunski-4 wrote:
>>
>> 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.
>>>
>>
>>
>>
>>
>
> --
> 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.-tp30268237s12275p30277970.html
> Sent from the Roller - User mailing list archive at Nabble.com.
>



Mime
View raw message