You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Installation and Troubleshooting FAQs

Updated for Roller 1.2

  • How do I install Roller? #1
  • What platforms are supported? #2
  • How do I install on Jetty? #3
  • How do I install on Resin? #4
  • How do I install on Orion? #5
  • How do I install on Weblogic 8.1? #6
  • How do I install on JBoss? #7
  • How do I set up an administrative user for my Roller install? #8
  • How can I test if my DB-connection is setup correctly? #9
  • Why does MySQL reject connections from Roller? #10
  • I get an "Illegal mix of collations" error from MySQL. What's wrong? #11
  • What's this Cannot create JDBC driver of class ' ' for connect URL 'null' all about? #12
  • Help! I'm seeing "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?' at line 1" #13
  • Why do I sometimes see a log message "PingQueueProcessor:processQueue | WARNING Skipping current ping queue processing round because we cannot yet determine the site's absolute context url? #14
  • When I use the "remember me" feature to login, Roller sometime just hangs. How do I fix this? #15
  • I'm seeing "java.lang.StringIndexOutOfBoundsException: String index out of range: 23". How do I fix it? #16
  • How do I configure roller to use LDAP user authentication #17

How do I install Roller? #1

See the Roller InstallationGuide.

What platforms are supported? #2

The Roller InstallationGuide discusses installing Roller on Windows or UNIX, the MYSQL database, and the Tomcat 5.0 and 5.5 servlet engines. The Roller software includes database creation scripts for MYSQL, HSQL, and Postgres databases but, at this point, the Roller project members do not test against the last two database configurations.

Some folks have installed Roller on the OC4J, Resin and Jetty servlet engines.

How do I install on Jetty? #3

Read the Jetty Installation Guide, which is probably out of date, or you ask on the Roller Mailing Lists for advice.

How do I install on Resin? #4

Read the Resin Installation Guide, which is probably out of date, or you can ask the Roller Mailing Lists for advice.

How do I install on Orion or OC4J? #5

You are on your own, but you can ask the Roller Mailing Lists for advice and there are some notes from an OC4J install on DaveJohnson's weblog.

How do I install on WebLogic 8.1? #6

See the Weblogic Installation Guide, which is probably out of date, or you can ask the Roller Mailing Lists for advice.

How do I install on JBoss? #7

See the JBoss Installation Guide.

How do I set up an administrative user for my Roller install? #8

The very first user you create will be an admin user. That initial user can then grant and revoke admin rights from any other user.

Also, there is a command-line utility program called rollerpw.sh or rollerpw.bat you can run to grant and revoke admin rights from users and to perform other administrative tasks. See the instructions in Step 8.1 of the InstallationGuide for more information.

How can I test if my database connection is setup correctly? #9

Point your browser to http://localhost:8080/roller/dstest.jsp. If that page is able to create a connection, then your database connection is set up correctly.

Why does MySQL reject connections from Roller? #10

If Roller fails to start and you see a message like the one below in your log files (such as the Tomcat catalina.out log file), then you may not have MySQL set up for networking. See this page for more information http://dev.mysql.com/doc/mysql/en/Access_denied.html.

 
MESSAGE: Data source rejected establishment of connection,  
         message from server: "Host 'localhost.example.com' 
         is not allowed to connect to this MySQL server"
MESSAGE: Attempted reconnect 3 times. Giving up.
MESSAGE: java.sql.SQLException

I get an "Illegal mix of collations" error from MySQL. What's wrong? #11

You probably missed the instructions to set up UTF-8 as the default character encoding. Check out these instructions.

What's this Cannot create JDBC driver of class ' ' for connect URL 'null' all about? #12

It's a long story. Read it here.

Help! I'm seeing "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?' at line 1" #13

This appears to be due to a MySQL and Connector/J bug that occurs if you use the MySQL 4.1.X server with Connector/J 3.1.X drivers. We recommend that you use the Connector/J 3.0.16 (or later 3.0.X series) drivers with MySQL 4.1.X to avoid this. You can download them from the MySQL site. Drop the jar in your CATALINA_HOME/common/lib and remove any 3.1.X drivers that you have there.

An alternate workaround that will allow you to keep the Connector/J 3.1.X drivers is to disable use of server-side prepared statements by setting the additional property useServerPrepStmts=false in both of the MySQL JDBC URLs in the context configuration.

Roller user Lee Gwun Wai has reported on the roller-user mailing list that this can also occur in the typical ISP-hosted situation where one's database is using UTF-8 but the overall server character set is something other than UTF-8. He suggests dropping the useUnicode=true from all JDBC URLs. There is additional information on hosted database configuration on our UTF-8 MySQL setup page. We have still only seen this reported with the Connector/J 3.1.X drivers.

Why do I sometimes see a log message "PingQueueProcessor:processQueue | WARNING Skipping current ping queue processing round because we cannot yet determine the site's absolute context url". What does this mean and do I need to do anything about it? #14

This warning appears if the ping queue processor task runs before there have been any requests made to the server and you have not set an explicit site URL in the configuration.

Due to a quirk/limitation of the Servlet API, the webapp is unable to determine the absolute context url unless it is set explicitly in the configuration or until after the first request. It needs the full site url to determine the urls to put in outbound pings. If it can't determine it, it logs this and skips one round of ping processing.

The ping queue processor task runs every five minutes by default. You'll see one of these each time the ping queue task runs until at least one request has been received by Roller.

Most production environments will never see this. You might see this in trial and development if start the server and just let it sit there for awhile. You shouldn't see them after you start doing stuff.

You don't have to do anything about it; things should be fine as soon as your server starts to see any activity. However, you can avoid the message by setting your absolute site url explicitly in "Absolute URL to Site" field in the configuration under "Admin | Configuration".

When I use the "remember me" feature to login, Roller sometime just hangs. How do I fix this? #15

This has been reported on some Linux installations. Koji Lin suggested the gist of the following solution on the roller-user mailing list. The is caused by the java.security.SecureRandom class. On Linux environments it is often set up to use /dev/random as a source of entropy. Reading from the /dev/random device will block when there is not enough entropy available to satisfy a read request. Most linux systems now have /dev/urandom, which will not block and provides adequate security for most sites.

You can set your JRE to use /dev/urandom for all applications by editing the JAVA_HOME/jre/lib/security/java.security file. You can use it for Tomcat only by adding the following Java system property definition on the command line in the Tomcat startup script that invokes Java

-Djava.security.egd=file:/dev/urandom

or setting this in the JAVA_OPTS environment variable before invoking the Tomcat startup script. You may also want to refer to the Sun bug on this issue

I'm seeing "java.lang.StringIndexOutOfBoundsException: String index out of range: 23". How do I fix it? #16

If you're using PostgreSQL, and you see a stack trace starting like the one below, then this is due to a (well-known) bug in older PostgreSQL JDBC Drivers.

java.lang.StringIndexOutOfBoundsException: String index out of range: 23
java.lang.String.charAt(String.java:444)
org.postgresql.jdbc2.ResultSet.toTimestamp(ResultSet.java:1653)
org.postgresql.jdbc2.ResultSet.getTimestamp(ResultSet.java:398)
org.postgresql.jdbc2.ResultSet.getTimestamp(ResultSet.java:617)
...

You need to upgrade to the latest compatible JDBC drivers.

How do I configure roller to use LDAP user authentication #17

It is possible to setup roller to use LDAP Authentication for users created in roller DB. Please check LDAP and SSP FAQ page for more information.

  • No labels