« Zurück zu Starting with...

Database Configuration

Introduction #

Liferay comes with a default database called HSQL or "hypersonic." This is not meant for production use however! You need to switch to a real database to use Liferay. This page documents how to change the default database system.

Liferay 6.0 & 6.1 #

Database configuration in 6.0, 6.1 is the same as 5.2. Find your corresponding JDBC settings for your database, and put them into portal-ext.properties file, which can be found at

${CATALINA_HOME}/webapps/ROOT/WEB-INF/classes
where CATALINA_HOME variable is the liferay-portal-${liferay-version}/tomcat-${tomcat-version} directory

If it doesn't exist, you need to create it. For a full list of database-related portal-properties that you can paste in to make your database work, see Database Portal Properties. For more information, please read the Liferay 5.2 section which contains more details in case you need advanced configuration.

Liferay 5.2 #

In versions 5.2 and after, the configuration of the database is set in a single file, portal-ext.properties, for all application servers. Add the example below to set up MySQL.

jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=
jdbc.default.password=

As of 5.2.2 you can use the connection pools provided by the application server by specifying the JNDI name to be used in portal-ext.properties using the following property:

jdbc.default.jndi.name=jdbc/LiferayPool

This re-establishes the way connections are handled to the behaviour of version 5.1.x

If you do not have an existing portal-ext.properties file, you can create one and save it to:

{liferay-home}\{tomcat}\webapps\ROOT\WEB-INF\classes

for Tomcat. (To find out where to put portal-ext.properties for other app servers, please refer to the Portal Administrator's Guide.)

The portal.properties file has examples for all the main databases supported. However, if you are using the bundled / download version of Liferay (instead of building from source), you will not be able to find portal.properties in your installation. (Refer to page 127 of the Portal Administrator's Guide Second Edition for an explanation why this is the case.) Instead, you can find a copy of portal.properties here for reference:

http://svn.liferay.com/repos/public/portal/branches/5.2.x/portal-impl/src/portal.properties

Again, once you've referenced portal.properties to understand what settings are available, make the appropriate additions to your portal-ext.properties file.

Note that this system uses the apache commons pool for pooling connections to the database. If you prefer to use the pooling mechanism provided by the portal application server you can still do that through spring. In particular add this to the ext-spring.xml file:

<bean id="liferayDataSource"
class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
       <property name="targetDataSource">
               <bean
class="com.liferay.portal.spring.jndi.JndiObjectFactoryBean">
                       <property name="jndiName" value="jdbc/LiferayPool" />
               </bean>
       </property>
</bean>

This file can be found in your extension environment. If you are not using this environment just create an Spring configuration file with that name and add it to the META-INF dir of your installation.

For GlassFish Application server:

Set other properties e.g. using application server web admin interface. Idle Timeout = ?? seconds (less than timeout of your database server configuration)

Connection Validation (Validate connections, allow server to reconnect in case of failure)

Required=True
Validation Method=Table
Table Name=User_

For MySql, make sure you create the database first;

create database lportal character set utf8;

Note : Note that all these instructions apply to the core Liferay installation, but some installed plugins (for example WOL in Liferay 5.2) may have its own database configuration. See http://www.liferay.com/community/forums/-/message_boards/message/4526420 for a discussion specific to the WOL plugin.

Liferay 5.1 and prior #

In Liferay v5.1 and before, the configuration was specific for each application server. This section explains how to configure tomcat by modifying the ROOT.xml file. For other application servers please check their documentation.

ROOT.xml can be found in tomcat\conf\Catalina\localhost\ROOT.xml. for reference, at the end of this article I have included an excerpt of ROOT.xml from Liferay 4.3.x

Notice there are sample entries in this file for many different databases. By default, Liferay uses Hypersonic (lightweight db used for development purposes). Notice that all entries are commented out except for the Hypersonic entry. Since we want to change Liferay to point to MySQL, we will simply

1) Comment out the Hypersonic entry,

<!-- Hypersonic -->

<!--<Resource
	name="jdbc/LiferayPool"
	auth="Container"
	type="javax.sql.DataSource"
	driverClassName="org.hsqldb.jdbcDriver"
	url="jdbc:hsqldb:lportal"
	username="sa"
	password=""
	maxActive="20"
/>-->

2) and uncomment the MySQL entry (or which ever entry you need for your database).

<!-- MySQL -->

<Resource
	name="jdbc/LiferayPool"
	auth="Container"
	type="javax.sql.DataSource"
	driverClassName="com.mysql.jdbc.Driver"
	url="jdbc:mysql://localhost/lportal?useUnicode=true&amp;characterEncoding=UTF-8"
	username=""
	password=""
	maxActive="20"
/>

make sure that you change the value for url to point to your MySQL database url, and also fill in a username and password.

Including the JDBC driver #

The next step is to make sure that tomcat has the appropriate JDBC driver so that it can 'talk' to this database. You can find these drivers online, however, for your convenience, we have included the MySQL driver (along with many others) in the portal code at the following path:

portal\lib\development\mysql.jar

For Liferay 5.1.1, if you are using Oracle 9i, then there are some issues with ojdbc14.jar. Instead of that use other jars like ojdbc14_g.jar for connecting to database.

If we are..

  • developing in the EXT environment, we need to copy the JDBC driver to this path:
    • ext\ext-lib\global\mysql.jar
  • developing directly from Portal Core (not recommended), copy the driver here:
    • portal\lib\global\mysql.jar
  • only using the Tomcat bundle, copy the driver here:
    • tomcat\common\lib\ext\mysql.jar

Creating the database and tables #

You will first need to create the database, make sure that this matches the value in the url of your ROOT.xml.

For most versions of Liferay, you will have 2 sets of sql scripts, one which will create the Liferay tables with sample data (the Liferay public website) or with just the bare minimal data. You can find both sets of scripts in the portal code:

portal\sql\portal\portal-mysql.sql

and

portal\sql\portal-minimal\portal-minimal-mysql.sql

If you..

Manually creating the table #

Run the appropriate script against your database.

Automatically creating the tables #

Starting in 4.3, you only need to create the database and Liferay will automatically run the appropriate script to create all the necessary tables for you.

in portal.properties, there is a property that you can set which will determine if the portal will create a minimal version of Liferay or a version which is pre-populated with sample data.

##
## Schema
##

    #
    # Set this to true to automatically create tables and populate with default
    # data if the database is empty.
    #
    schema.run.enabled=true

    #
    # Set this to to true to populate with the minimal amount of data. Set this
    # to false to populate with a larger amount of sample data.
    #
    schema.run.minimal=false

If you wanted Liferay to automatically create only the necessary Liferay tables for you, then add the following values in your portal-ext.properties (tomcat\webapps\ROOT\WEB-INF\classes\portal-ext.properties)

    schema.run.enabled=true
    schema.run.minimal=true

Reference #

Excerpt of ROOT.xml in 4.3.x #

<Context path="" crossContext="true">

	<!-- DB2 -->

	<!--<Resource
		name="jdbc/LiferayPool"
        auth="Container"
        type="javax.sql.DataSource"
        driverClassName="com.ibm.db2.jcc.DB2Driver"
        url="jdbc:db2:lportal"
        username="db2admin"
        password="lportal"
        maxActive="20"
	/>-->

	<!-- Derby -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
		url="jdbc:derby:lportal"
		username=""
		password=""
		maxActive="20"
	/>-->

	<!-- Hypersonic -->

	<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="org.hsqldb.jdbcDriver"
		url="jdbc:hsqldb:lportal"
		username="sa"
		password=""
		maxActive="20"
	/>

	<!-- MySQL -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="com.mysql.jdbc.Driver"
		url="jdbc:mysql://localhost/lportal?useUnicode=true&amp;characterEncoding=UTF-8"
		username=""
		password=""
		maxActive="20"
	/>-->

	<!-- Oracle -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="oracle.jdbc.driver.OracleDriver"
		url="jdbc:oracle:thin:@localhost:1521:orcl"
		username="lportal"
		password="lportal"
		maxActive="20"
	/>-->

	<!-- P6Spy -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="com.p6spy.engine.spy.P6SpyDriver"
		url="jdbc:mysql://localhost/lportal?useUnicode=true&amp;characterEncoding=UTF-8"
		username=""
		password=""
		maxActive="20"
	/>-->

	<!-- PostgreSQL -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="org.postgresql.Driver"
		url="jdbc:postgresql://localhost:5432/lportal"
		username="sa"
		password=""
		maxActive="20"
	/>-->

	<!-- SQL Server -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="net.sourceforge.jtds.jdbc.Driver"
		url="jdbc:jtds:sqlserver://localhost/lportal"
		username="sa"
		password=""
		maxActive="20"
	/>-->

	<!-- Sybase -->

	<!--<Resource
		name="jdbc/LiferayPool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="net.sourceforge.jtds.jdbc.Driver"
		url="jdbc:jtds:sybase://localhost:5000/lportal"
		username="sa"
		password=""
		maxActive="20"
	/>-->

Related Articles #

Tomcat with SQL Server 2008

Building and Installing Liferay Source Code on Glassfish v2 and MySQL

Sybase configuration for Liferay

DB2 Express-C 9.5 on CentOS 5.2

Derby with Glassfish

PostgreSQL with Glassfish

Derby Java DB RDBMS

0 Anhänge
489394 Angesehen
Durchschnitt (2 Stimmen)
Die durchschnittliche Bewertung ist 5.0 von max. 5 Sternen.
Kommentare
Antworten im Thread Autor Datum
Hi, I have been googling and reading the wiki... Jon Goldberg 20. Februar 2009 10:05
I am also having a problem. I interpreted the... Troy St. john 20. Februar 2009 13:03
For MySql, make sure the database exist. It... Jerry Niu 20. Februar 2009 15:04
It is not as complicated as it appears in this... andrew chen 17. Juni 2009 14:33
Awesome - managed to get it working. Just one... Content Chemist 7. Januar 2010 10:46
I have been reading the Wiki and I'm... Lisa Simpson 23. Februar 2009 13:11
Hello Lisa, Unfortunately, this article... Richard Sezov 24. Februar 2009 15:43
Rich, I am using the jBoss-tomcat- 5.0.0... Brian Holland 1. April 2009 08:16
The first part of configuring liferay to use... Richard Sandoz 22. April 2009 22:07
Lisa, also wanted to let you know the Wiki... Bryan Cheung 24. Februar 2009 15:51
Hi Lisa, For the MySql connect, you need to... Jerry Niu 27. Februar 2009 12:23
I tried the technique above - ... Tom Wackerfuss 2. März 2009 12:32
This seems to work, I removed the HSQL... Michael Burchill 2. März 2009 20:39
It would be a cache issue in the Tomcat. It... Jonas Yuan 6. März 2009 14:16
I haven't been doing much development recently,... Larry Smith 23. März 2011 16:09
I've noticed that, since I'm using a very... David Thompson 1. März 2009 18:50
I downloaded the 5.2.2. Bundled with Tomcat 5.5... Franklin Phan 10. März 2009 15:59
Does Liferay generate any logs by default? I'm... Franklin Phan 10. März 2009 16:38
Seems like I still get this Msg: 23:18:30,686... Ben L 30. März 2009 16:41
Excellent! was googling & pulling my hair out... jef vratny 4. Mai 2009 04:25
Is there a way to keep using ROOT.xml instead... Diego Toharia 7. Mai 2009 01:33
Hi, nothing is commented about the wol-portlet... Luis Mas 18. Mai 2009 10:15
sorry, the file should be at ... Luis Mas 18. Mai 2009 10:35
and as wol tables are created in lportal schema... Angela Maria Russi 18. Mai 2009 11:45
Hi All I am unable to do the DB migration. My... New2 Liferay 20. Mai 2009 03:23
INGRES Database problem; in migration // SORRY... New2 Liferay 20. Mai 2009 03:25
Using Oracle I need to have a databse with an... Denis Signoretto 22. Mai 2009 01:04
404 error when going to http://hostname:8080/... general grant 22. Mai 2009 10:58
I am having the same problem with Tomcat 5.5. ... Erika O 27. Mai 2009 12:04
I'm trying to migrate from 5.1.2 to 5.2.3. ... Wayne Christian 7. Juni 2009 11:26
I also seem to be getting oading... Wayne Christian 7. Juni 2009 11:29
Hello Guys, I am new bee to Liferay, I just... Am sodi 7. Juni 2009 17:00
Thanks Ramesh, it worked perfectly. Even... Carlos Galindo 11. Juni 2009 14:57
hwat about Oracle hana Gebredingle 6. Juli 2009 01:45
What is the effect of having empty values for... Peter B West 30. Juli 2009 21:17
Someone really needs to clean this... J B 12. August 2009 12:26
I have a similar issue. I just want to move... dali Laadhar 29. September 2009 06:43
I also facing the same problem as like u i add... sasi kala 31. März 2010 04:32
Can someone plz help me connecting to a SQl... CJ van Tonder 14. Dezember 2009 01:31
Hi, I was able to configure Liferay Portal... Prem Kashyap 14. Dezember 2009 04:19
Just found out. Actually you do not need the... Prem Kashyap 14. Dezember 2009 04:31
Thank you so much, really helpfull infos. But,... Oğuz Çelikdemir 6. Januar 2010 00:07
Hi all, To configure liferay on oracle10g ... DarshanKumar N Bhatia 25. April 2010 21:05
HI Just to say Thanks "configure liferay on... DarshanKumar N Bhatia 7. August 2010 00:26
At the beginning of this page, in the area for... Kirk Stork 10. September 2010 06:32
Kirk, We have been working on this, literally,... Amy Mead 1. Oktober 2010 14:16
Windows/Unix MySQL Note: Windows and unix... David H Nebinger 23. Juli 2011 08:25
Hi All, We are having one web application, Now... Navnath Gajare 20. Oktober 2011 01:45
I have problem like this: 严重: Error waiting... Harry ni 20. September 2012 02:50
Yes, there is a solution, where you can migrate... Bella fernandis 11. Dezember 2012 22:30

Hi,

I have been googling and reading the wiki and posts. I downloaded the 5.2.1 version of liferay with both tomcat 5.5 and 6. I can't figure out what file to create or edit to have liferay use mysql instead of hypersonic. I have read alot about a portal(-ext). file to create. Does anyone have an example and what directory to put in? Sorry i am more of DBA than Java developer.

Liferay v5.2 unifies the configuration of the database in a single file for all application servers. As most other configuration options you can set this up in the portal(-ext).properties file as follows (example for MySQL):

I see this from above where do i put it. Is there a way to get those sample files?

jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:my­sql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsi­ng=false
jdbc.default.username=
jdbc.default.password=

Thanks,

Jon

PS. I got it working with hypersonic is real simple..... emoticon
Gepostet am 20.02.09 10:05.
I am also having a problem.

I interpreted the instructions above as "...if this file does not exist then create it using....".

So I did however it doesn't seem to work.

Any answers out there?
Gepostet am 20.02.09 13:03 als Antwort auf Jon Goldberg.
For MySql, make sure the database exist. It does not need to be populated, just needs to exist.
{{{
create database lportal521 character set utf8;
}}}
Gepostet am 20.02.09 15:04 als Antwort auf Jon Goldberg.
I have been reading the Wiki and I'm confused!!!! I can't find the portal.properties in 5.2 to save my life. Quoting.... "The portal.properties file has examples for all the main databases supported. " I'm unable to get this to attach to MySQL When I try to run Liferay with a MySQL configuration, I get a Tomcat 404 error message. I seem to be missing some vital file but I'll be damned if I know what it is or where to find it. I'm not that familiar with your product but I've been googling like mad and still can't come up with anything. Surely this product isn't so retarded that I can't set the database connection from an XML file. Or wait... I think that is what I'm seeing... I have to use ant and rebuild it get it to talk to a "real" database.
Gepostet am 23.02.09 13:11.
Hello Lisa,

Unfortunately, this article assumes that the reader has certain information that the article itself does not provide.

Please take a look at our Liferay Portal Administrator's Guide here: http://www.liferay.com/web/guest/community/documentation/5_1. On page 127, there is a description of what the portal.properties file is, where to find it, and how to extend it using your own portal-ext.properties file. The file in the 5.2 version of the portal does indeed have examples for the various databases, and you can use that as a template in your portal-ext.properties file to connect to your database of choice.

Hope this helps!

--Rich
Gepostet am 24.02.09 15:43 als Antwort auf Lisa Simpson.
Lisa, also wanted to let you know the Wiki article has been updated with a direct link to portal.properties in SVN. That way you can reference it and then add the properties you want to override in your portal-ext.properties.
Gepostet am 24.02.09 15:51 als Antwort auf Lisa Simpson.
Hi Lisa,

For the MySql connect, you need to create a new blank file and name it "portal-ext.properties" and put it in the "{liferay-home}\{tomcat}\webapps\ROOT\WEB-INF\classes" folder.

Cheers,

Jerry Niu
Gepostet am 27.02.09 12:23 als Antwort auf Lisa Simpson.
I've noticed that, since I'm using a very recent build of MySQL, the driver provided by LifeRay gave me errors regarding being unable to identify a dialect / unable to get a connection to the backing DB. Using the most recent connector from MySQL fixed this problem.
Gepostet am 01.03.09 18:50.
I tried the technique above -
{liferay-home}\tomcat-5.5.27\webapps\ROOT\WEB-INF\classes\portal-ext.properties,­ but the startup did not seem to pick it up (it still reported Hypersonic being used).

I did the following: unzip portal-impl.jar > comment out the Hypersonic section > edit portal.properties to include a section for MySql > zipped back up > copied to {liferay-home}\tomcat-5.5.27\webapps\ROOT\WEB-INF\lib > the startup now finds my empty MySql database, populates it, and all is good.

Regards, Tom W.
Gepostet am 02.03.09 12:32 als Antwort auf Jerry Niu.
This seems to work, I removed the HSQL reference in the portal.properties and left mysql in the portal-ext.properties and it is using Mysql.

One thing though is that the log still contains a reference to HSQL on startup if I tail -f catalina.out but when I checked it wasn't using any HSQL resources.
Gepostet am 02.03.09 20:39 als Antwort auf Tom Wackerfuss.
It would be a cache issue in the Tomcat.

It would be helpful: before restarting the Tomcat, remove folders /temp and /work.
Gepostet am 06.03.09 14:16 als Antwort auf Tom Wackerfuss.
I downloaded the 5.2.2. Bundled with Tomcat 5.5 and followed the instructions at
http://www.liferay.com/web/guest/community/wiki/-/wiki/Main/Quick+Installation+I­nstructions

I'm running it on Windows, and I'm getting this error:

SEVERE: Job (DEFAULT.listImagesJobDetail threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exc
eption: org.springframework.transaction.CannotCreateTransactionException: Could
not open JDBC Connection for transaction; nested exception is java.sql.SQLExcept
ion: Connections could not be acquired from the underlying database!]

So Liferay can't find it's own embedded HSQL db?
Gepostet am 10.03.09 15:59.
Does Liferay generate any logs by default? I'm not seeing any .log or .out files.
Gepostet am 10.03.09 16:38.
Seems like I still get this Msg:

23:18:30,686 WARN [DialectDetector:79] Liferay is configured to use Hypersonic
as its database. Do NOT use Hypersonic in production. Hypersonic is an embedded
database useful for development and demo'ing purposes. The database settings can
be changed in portal.properties.

But when I check the logs of the MySQL DB, it seems to be using this instead of the HSQL. Is this log message suppose to display regardless?
Gepostet am 30.03.09 16:41.
Rich,

I am using the jBoss-tomcat- 5.0.0 bundle and at the top it says "To find out where to put portal-ext.properties for other app servers, please refer to the Portal Administrator's Guide." but I can't seem to find anything about where to put this file in JBoss. Also Is the process the same for changing out the database. In a normal JBoss installation there are a few other places that I would modify, so I'm not sure exactly what to do. Any help would be greatly appreciated. Thanks
Gepostet am 01.04.09 08:16 als Antwort auf Rich Sezov.
The first part of configuring liferay to use MySQL is pretty straightforward. Just create the file (portal-ext.properties) and override the JDBC settings.

The next step, porting the existing data from HSQL as we have created alot of content, involved going into the script for HSQL (lportal.script) and pulling out all the insert statements and running them against the MySQL database. I was able to run all of the inserts successfully (4458) in all (ran a mass search&replace to put a trailing semicolon). After I ran this and went into the product, I experienced an issue. When I log in as our test user and go to the portlet pages, I get a white screen. I also tried logging in as Bruno Admin (the delivered admin account) and am able to see our content, but the screen layout isn't set right. I also noticed an error in the tomcat console: com.liferay.portal.kernel.xml.DocumentException: Error on line 1 of document : Content is not allowed in prolog.

Through the course of this effort, I had set the parameters in the portal.properties to recreate the initial database that liferay starts with (2200 insert statements). So through our customization, we more than doubled the data.

To recap the HSQL - MySQL process:
(1) Go into the folder C:\liferay-portal-5.2.2\tomcat-5.5.27\webapps\ROOT\WEB-INF\classes\
(2) Create a file: portal-ext.properties
(3) add this content to this file:
schema.run.enabled=true
schema.run.minimal=true
jdbc.default.driverClassName=­com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost/lportal?useUnicode=­true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=lport­al
jdbc.default.password=thepassword
(4) Create an empty database called lportal
(5) Start liferay. This will populate the database with all the tables (147) and insert data into them.
(6) Empty the data. This can be done by selecting all the tables in phpmyadmin and selecting "Empty" from the dropdown.
(7) Open the file C:\liferay-portal-5.2.2\data\hsql\lportal.script and find the first INSERT statment.
(8) Select from here on down to the end of the file and copy/paste this into a new file.
(9) Add a semicolon to the end of each insert statement. This can be done by search&replace close-parens followed by CR with close-parens semicolon CR -- ')CR' with ');^p' (^p is the ultraedit symbol for CR)
(10) import this into MySQL into the emptied database.
Gepostet am 22.04.09 22:07 als Antwort auf Brian Holland.
Excellent! was googling & pulling my hair out trying to get this to work!

here's what worked for my postgres connection on tomcat 6/ liferay 5.2.2

jdbc.default.driverClassName=org.postgresql.Driver
jdbc.default.url=jdbc:pos­tgresql://localhost:5432/lportal
jdbc.default.username=liferay
jdbc.default.passwo­rd=password
Gepostet am 04.05.09 04:25.
Is there a way to keep using ROOT.xml instead portal-ext.properties for database settings? I find that, since portal-ext.properties is inside webapps/, working with many environments is quite annoyin. When we do a release, we just deploy webapps and lib/ext, and we have many common-for-all-environments properties in portal-ext.properties.
Gepostet am 07.05.09 01:33.
Hi, nothing is commented about the wol-portlet configuration.

To fully change HSQL database to a production database, I had to create a file inside wol-portlet/web-inf/classes/jdbc.properties and this properties
jira.driverClassName
jira.url
jira.username
jira.password
as explained here:
http://www.liferay.com/web/guest/community/forums/-/message_boards/message/­2102487#_19_message_2112549
Gepostet am 18.05.09 10:15.
sorry, the file should be at wol-portlet/web-inf not inside classes
Gepostet am 18.05.09 10:35 als Antwort auf Luis Mas.
and as wol tables are created in lportal schema (in mysql is where we tested), jira.url should refer to lportal schema (or the schema where wol_ tables are).
Gepostet am 18.05.09 11:45 als Antwort auf Luis Mas.
Hi All

I am unable to do the DB migration.

My target database is INGRES.

I tried running the schema directly, but that does not work too and needs lot of modification. Tried searching the code but looks like there is no help for Ingress nor a Util class for Ingress in com\liferay\portal\tools\sql\ folder of portal-impl.jar.

When I point to Ingres database, server says that there is no table called repository_
Stacktrace is provided below..

Please help

here are my portal-ext.property entries.
------------------------------------
schema.run.enabled=true
schema.run.mi­nimal=true
jdbc.default.driverClassName=com.ingres.jdbc.IngresDriver
jdbc.default.­url=jdbc:ingres://hic-pcs4330:II7/lportal
jdbc.default.username=atonce_user
jdbc.d­efault.password=satyam@123
hibernate.dialect=org.hibernate.dialect.IngresDialect

S­TACKTRACE from Console
-----------------------------------------
10:21:27,536 INFO [PortalImpl:243] Portal lib directory /D:/liferay-portal-5.2.2/tomcat-6.0.18/webapps/ROOT/WEB-INF/lib
/
10:21:46,581 INFO [DBUtil:116] Using dialect org.hibernate.dialect.IngresDialect
10:21:47,737 INFO [DBUtil:116] Using dialect org.hibernate.dialect.IngresDialect
10:21:47,768 ERROR [QuartzSchedulerEngineImpl:93] Unable to initialize engine
com.liferay.portal.SystemException: java.lang.NullPointerException
at com.liferay.portal.service.impl.QuartzLocalServiceImpl.checkQuartzTables(QuartzL­ocalServiceImpl.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav­a:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils­.java:307)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(Ref­lectiveMethodInvocation.java:

..............
10:21:47,971 INFO [ServerDetector:104] Detected server tomcat
Starting Liferay Portal Standard Edition 5.2.2 (Augustine / Build 5202 / February 20, 2009)
10:21:52,565 INFO [ReleaseLocalServiceImpl:95] Create tables and populate with default data
10:21:52,565 INFO [DBUtil:116] Using dialect org.hibernate.dialect.IngresDialect
10:21:52,565 ERROR [ReleaseLocalServiceImpl:159] java.lang.NullPointerException
java.lang.NullPointerException
at com.liferay.portal.service.impl.ReleaseLocalServiceImpl.createTablesAndPopulate(­ReleaseLocalServiceImpl.java:
143)
at com.liferay.portal.service.impl.ReleaseLocalServiceImpl.getBuildNumberOrCreate(R­eleaseLocalServiceImpl.java:9
8)
Gepostet am 20.05.09 03:23.
INGRES Database problem; in migration

// SORRY FOR DUPLICATE ENTRY //
I am unable to do the DB migration.

My target database is INGRES.

I tried running the schema directly, but that does not work too and needs lot of modification. Tried searching the code but looks like there is no help for Ingress nor a Util class for Ingress in com\liferay\portal\tools\sql\ folder of portal-impl.jar.

When I point to Ingres database, server says that there is no table called repository_
Stacktrace is provided below..

Please help

here are my portal-ext.property entries.
------------------------------------
schema.run.enabled=true
schema.run.mi­nimal=true
jdbc.default.driverClassName=com.ingres.jdbc.IngresDriver
jdbc.default.­url=jdbc:ingres://hic-pcs4330:II7/lportal
jdbc.default.username=atonce_user
jdbc.d­efault.password=satyam@123
hibernate.dialect=org.hibernate.dialect.IngresDialect

S­TACKTRACE from Console
-----------------------------------------
10:21:27,536 INFO [PortalImpl:243] Portal lib directory /D:/liferay-portal-5.2.2/tomcat-6.0.18/webapps/ROOT/WEB-INF/lib
/
10:21:46,581 INFO [DBUtil:116] Using dialect org.hibernate.dialect.IngresDialect
10:21:47,737 INFO [DBUtil:116] Using dialect org.hibernate.dialect.IngresDialect
10:21:47,768 ERROR [QuartzSchedulerEngineImpl:93] Unable to initialize engine
com.liferay.portal.SystemException: java.lang.NullPointerException
at com.liferay.portal.service.impl.QuartzLocalServiceImpl.checkQuartzTables(QuartzL­ocalServiceImpl.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav­a:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils­.java:307)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(Ref­lectiveMethodInvocation.java:

..............
10:21:47,971 INFO [ServerDetector:104] Detected server tomcat
Starting Liferay Portal Standard Edition 5.2.2 (Augustine / Build 5202 / February 20, 2009)
10:21:52,565 INFO [ReleaseLocalServiceImpl:95] Create tables and populate with default data
10:21:52,565 INFO [DBUtil:116] Using dialect org.hibernate.dialect.IngresDialect
10:21:52,565 ERROR [ReleaseLocalServiceImpl:159] java.lang.NullPointerException
java.lang.NullPointerException
at com.liferay.portal.service.impl.ReleaseLocalServiceImpl.createTablesAndPopulate(­ReleaseLocalServiceImpl.java:
143)
at com.liferay.portal.service.impl.ReleaseLocalServiceImpl.getBuildNumberOrCreate(R­eleaseLocalServiceImpl.java:9
8)
Gepostet am 20.05.09 03:25.
Using Oracle I need to have a databse with an UTF-8 character encoding ? What happen if I have a databse with a single byte character encoding (ISO8859-1)?
Gepostet am 22.05.09 01:04.
404 error when going to http://hostname:8080/ with Portal 5.2.3/Tomcat 6 and MySQL:

I downloaded and unpacked the 5.2 portal bundle with tomcat 6. I can start the default install (embedded Demoticon and access it without issue.

I created the portal-ext.properties file in "{liferay-home}\{tomcat}\webapps\ROOT\WEB-INF\classes" as referenced above.

In the portal-ext.properties file I have:

jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mys­ql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsin­g=false
jdbc.default.username=lportal
jdbc.default.password=password

The database and user were created as required.

When I access htttp://myhost:8080 I get a 404 error. If I remove the portal-ext.properties file, it works again.

What am I missing or doing wrong?

Thanks - GG
Gepostet am 22.05.09 10:58.
I am having the same problem with Tomcat 5.5. Starting Tomcat 5.5 generates several exceptions after "Starting Spring root WebApplication context"
Gepostet am 27.05.09 12:04 als Antwort auf general grant.
I'm trying to migrate from 5.1.2 to 5.2.3. After providing the portal-ext.properties to convert from hypersonic
to my existing msql, I'm getting the following error. I assume I no longer need the mysql resource entry in ROOT.xml, like in previous versions. What about the mail resource entry?

What could be the problem? I've been succesfully running with
mysql on 5.1.2.


18:15:50,333 INFO [DBUtil:501] Database does not support case sensitive queries
18:15:50,350 ERROR [OpenSSOFilter:139] javax.servlet.ServletException: java.lang.RuntimeException: java.io.IOException: Cannot create directory: /usr/local/data/lucene/0
javax.servlet.ServletException: java.lang.RuntimeException: java.io.IOException: Cannot create directory: /usr/local/data/lucene/0
at com.liferay.portal.servlet.MainServlet.init(MainServlet.java:166)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1172)
Gepostet am 07.06.09 11:26.
I also seem to be getting
oading file:/Volumes/Shared/webappsrv/liferay-portal-5.2.3/tomcat-6.0.18/webapps/ROOT/W­EB-INF/classes/portal-ext.properties
18:28:33,462 ERROR [DataSourceFactoryBean:71] Unable to lookup jdbc/LiferayPool
javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:770)
at org.apache.naming.NamingContext.lookup(NamingContext.java:140)
at org.apache.naming.NamingContext.lookup(NamingContext.java:781)
Gepostet am 07.06.09 11:29 als Antwort auf Wayne Christian.
Hello Guys,

I am new bee to Liferay, I just yesterday downloaded and fiddled with the latest Liferay_Tomcat portal bundle Standard Edition (liferay-portal-tomcat-6.0-5.2.3).

I had same issues with MySQL on my local machine as you all have. After going through all the comments here on this thread i found user "Tom Wackerfuss" suggestions gave the success to configure Liferay with MySQL. Thank you Tom. Here are the steps i have performed to make it work with the latest SE.

1. Like Tom said unzip the portal-impl.jar and make 2 changes to portal.perperties file as below.
a. Comment HSQL properties.
b. Uncomment MySQL properties, add userID & Password values and save the file.
jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost/lportal?useUnicode=true&characterEncodin­g=UTF-8&useFastDateParsing=false
jdbc.default.username=<DBconnection_USER_ID>
jdbc.default.password=<BDConnection_PWD>

2. Make a jar file with all the original contents and changed portal.properties file. DON'T USE ZIP TOOL as i did and that jar file doesn't work. USE THE BELOW Command
1. jar cf portal-impl.jar *.*

3. Place this jar file back in where it belongs i.e. {liferay-home}\tomcat-5.5.27\webapps\ROOT\WEB-INF\lib

4. I didn't make chages to any other files like ROOT.XML or portal-ext.properties. You don't need to make changes in ROOT.XML to reflect database you want to point to in the 5.2.3 version this is what i found.

5. Start the server.

that is it .
Mallinarc
Gepostet am 07.06.09 17:00.
Thanks Ramesh, it worked perfectly. Even though I tried it on the liferay-portal-tomcat-5.5-5.2.2 bundle.
Gepostet am 11.06.09 14:57 als Antwort auf Ramesh C Mallina.
It is not as complicated as it appears in this document. I have blogged my configuration steps here:

http://www.soapractice.com/web/guest/home/-/asset_publisher/m0AI/blog/lifer­ay-glassfish-web-space-production-db-setup?redirect=%2Fweb%2Fguest

2 crucial steps:

# Create a text file named portal-ext.properties
# Add an entry in the properties file:
jdbc.default.jndi.name=jdbc/LiferayPool
#Edit the file liferay xxx/tomcat xxx/conf/Catalina/localhost/ROOT.xml. Add the following section. Note that this has to be placed between the <Context> </Context> tag
<Resource
name="jdbc/LiferayPool"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/yourDBName?useUnicode=true&amp;characterEncoding=UTF­-8"
username="yourUserName"
password="yourPassword"
maxActive="20"
/>
Gepostet am 17.06.09 14:33 als Antwort auf Jon Goldberg.
What is the effect of having empty values for
jdbc.default.username=
jdbc.default.password=
?
I assume that the database creation works, but who is the default user, or is it the anonymous user? In the article

http://www.liferay.com/web/guest/community/wiki/-/wiki/Main/Building%20an­d%20Installing%20Liferay%20Source%20Code%20on%20Glassfish%20v2%20and%20MySQL

the suggestion is

Login to MySQL as 'root' and create database lportal;
use lportal;
create user lportal;
set password for 'lportal'@'localhost' = password('lportal');
grant all privileges on *.* to 'lportal'@'localhost' identified by 'lportal'

With MySql 5.1.35, at least, this doesn't quite work, because user 'lportal' is created with an associated host of '%', but by creating user 'lportal'@'localhost' the password and privileges can be set.

This assumes that I have

jdbc.default.username=lportal
jdbc.default.password=lportal

in portal-ext.properties.

Shouldn't these wrinkles be mentioned in this article as well?
Gepostet am 30.07.09 21:17.
Someone really needs to clean this documentation up, I am trying to attempt this with 5.2.3 and am confused, need to seperate 4.x and 5.1.x old configs, and group them under a seperate wiki/doc location.
Gepostet am 12.08.09 12:26.
I have a similar issue.
I just want to move data from a portal working with hsql, to another portal working with mysql
The only thing that i have to recover are users.
So I extracted the user INSERT INTO lines from lportal.script, and created a script that worked perfectly in mysql

When I run : select * from User_ I see the records that I have added
but in the portal, I still only see the old users?

(I restarted everything : liferay and mysql)
Gepostet am 29.09.09 06:43.
Can someone plz help me connecting to a SQl database. . . . i have been strugeling for 2 days. i am new to liferay .i am running 5.2.3
Gepostet am 14.12.09 01:31.
Hi,
I was able to configure Liferay Portal Standard Edition 5.2.3 with MySQL. I have used JNDI configuration. Steps as follows -

Tasks 1 - ROOT Webapp

Unzip portal-impl.jar inside LIFERAY_HOME/webapps/ROOT/WEB-INF/lib
Search for file portal.properties and extract it to the folder - LIFERAY_HOME/webapps/ROOT/WEB-INF/classes
Rename the extracted file to portal-ext.properties
Comment out the following lines in the file -
# include-and-override=portal-ext.properties
#include-and-override=${liferay.home}/portal-ext.properties
I am not sure if commenting the above lines is needed. But i did commented it.

Search for jdbc.default.jndi.name=jdbc/LiferayPool in the file.
Uncomment the above line in the file. So now you will be using JNDI lookup for the database.

Open the file ROOT.xml inside the folder LIFERAY_HOME/conf/Catalina/localhost
Copy the following line -
<ResourceLink global="jdbc/LiferayPool" name="jdbc/LiferayPool" type="javax.sql.DataSource"/>

Tasks 2 - wol-portlet

Go to folder LIFERAY_HOME/webapps/wol-portlet/WEB-INF/classes/META-INF
Open the file - ext-spring.xml
Comment out the following lines -
<!-- <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
­ <property name="location">
<value>/WEB-INF/jdbc.properties</value>
</property>
<p­roperty name="placeholderPrefix" value="${jdbc." />
</bean> -->
<!-- <bean id="jiraDataSourceTarget" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.jira.driverClassName}" />
<property name="url" value="${jdbc.jira.url}" />
<property name="username" value="${jdbc.jira.username}" />
<property name="password" value="${jdbc.jira.password}" />
</bean> -->

Uncomment the following line -

<bean id="jiraDataSourceTarget" class="com.liferay.portal.spring.jndi.JndiObjectFactoryBean" lazy-init="true">
<property name="jndiName">
<value>jdbc/JIRAPool</value>
</property>
</bean>

Go to folder LIFERAY_HOME/webapps/wol-portlet/META-INF
Open the file - context.xml
Add the following line -
<ResourceLink global="jdbc/JIRAPool" name="jdbc/JIRAPool" type="javax.sql.DataSource"/>

Copy the context.xml to folder LIFERAY_HOME/conf/Catalina/localhost
Rename it as wol-portlet.xml

Tasks 3 - Creating Database and users

Create the following 2 database and users as follows -

Start MySQL
Run the following scrips from MySQL Prompt -

create database lportal character set utf8;
grant usage on lportal.* to luser@localhost identified by 'lpass';
grant all privileges on lportal.* to luser@localhost;

grant usage on lportal.* to 'luser'@'%' identified by 'lpass';
grant all privileges on lportal.* to 'luser'@'%';

create database jira character set utf8;
grant usage on jira.* to ljuser@localhost identified by 'ljpass';
grant all privileges on jira.* to ljuser@localhost;

grant usage on jira.* to 'ljuser'@'%' identified by 'ljpass';
grant all privileges on jira.* to 'ljuser'@'%';

Now you have 2 database created. lportal for ROOT. and jira for wol-portlet.

Tasks 4 -

Creating Resource in server.xml
Open the server.xml file under LIFERAY_HOME/conf
Add the following resource under <GlobalNamingResources>
<Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" maxActive="50" maxIdle="10" maxWait="10000"
removeAbandoned="true" removeAbandonedTimeout="240" validationQuery="SELECT 1" name="jdbc/LiferayPool" password="lpass" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/lportal" username="luser" />

<Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" maxActive="50" maxIdle="10" maxWait="10000"
removeAbandoned="true" removeAbandonedTimeout="240" validationQuery="SELECT 1" name="jdbc/JIRAPool" password="ljpass" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/jira" username="ljuser" />

Assumption - the mysql jdbc jar is in ext/lib folder.

Now you are good to start the server and your Liferay with MySQL should be working well and fine.

All the Best

Prem Kashyap
Gepostet am 14.12.09 04:19 als Antwort auf CJ van Tonder.
Just found out. Actually you do not need the jira database created. As I verify now, all the wol-portlet related tables got created inside the lportal database. So we do not need to creatre the jira database and we can point our JNDI jdbc/JIRAPool to lportal database.

Regards
Prem Kashyap
Gepostet am 14.12.09 04:31 als Antwort auf Prem Kashyap.
Thank you so much, really helpfull infos.
But, just wondering, if we want to install JIRA in our environment, should we use this jira database settings or will we need to point new database settings?
Gepostet am 06.01.10 00:07 als Antwort auf Prem Kashyap.
Awesome - managed to get it working.

Just one question: How do I check/confirm that Liferay Portal is actually using MySQL? I saw some messages on startup. Can I check in the Control Panel under the properties section?
Gepostet am 07.01.10 10:46 als Antwort auf andrew chen.
I also facing the same problem as like u
i add records in User_ table , but still i can see the old users

did u solve this problem...
pls try to reply me
Gepostet am 31.03.10 04:32 als Antwort auf dali Laadhar.
Hi all,

To configure liferay on oracle10g
Steps i Used:
1) Installing oracle 10g and creating user having username="lportal" password="lportal"
2) specifying jdbc.default.jndi.name=jdbc/LiferayPool in portal-ext.properties
3) Creating liferay pool
<!-- for oracle to create liferay pool -->
<Resource
name="jdbc/LiferayPool"
auth="Container"
type="javax.sql.DataSource"
dr­iverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:­1521:xe"
username="lportal"
password="lportal"
maxActive="20"/>

in root.xml
4) I started tomcat .it have created database successfully . and I created my static web content in Hindi.
5) After sign out. I restarted tomcat/liferay.
Result : again Hindi contains is not in Hindi language .it show ???? marks .
Also in database journalarticle table having content fields shows ???? marks .
Why is it so.....?
So let me know :
1) While installing oracle, what is the character set oracle has by default?
2) How to change it into UTF-8?
3) How to see what is current character set in oracle ?
4) We are not specifying ant character set in root.xml and in portal-ext.properties why ?


So,This is on Oracle10g as database.
Thanks and Regards
Darshankumar Bhatia
Gepostet am 25.04.10 21:05.
HI
Just to say Thanks
"configure liferay on oracle10g and multilanguage (Hindi)"
has resolved.Just i created new database using DBCA with utf-8 enable, It works fine .
Gepostet am 07.08.10 00:26 als Antwort auf DarshanKumar Bhatia.
At the beginning of this page, in the area for Liferay 6, it says to find portal-ext.properties here

{{{{liferay-home}/{tomcat}/webapps/ROOT/WEB-INF/classes}}}

Is it not true that the new home for this file is actually right in

{{{{liferay-home}}}}

Or is this an indication that the file has moved back to where it used to be?

In short, what is the proper location for portal-ext.properties in Liferay 6?
Gepostet am 10.09.10 06:32.
Kirk,

We have been working on this, literally, for hours and still cannot get mySQL to work. I do believe that your assumption is correct based on the following:

http://www.liferay.com/documentation/liferay-portal/6.0/administration­/-/ai/installing-liferay-for-an-enterprise-2

"Liferay Portal uses a special folder defined as Liferay Home. This folder is one folder higher than the location of the application server itself. This is why the bundles place the application server one folder in from the bundle's root folder.

If Liferay is unable to create the resources it needs in this folder, or if it finds itself running on certain application servers, it will fall back to defining the home folder in the home folder of the user ID that is running Liferay. "

Assuming this is correct (I say this because we still don't have it working either), we have tried to configure "the system" such that LifeRay would be the POOL for the database connection as opposed to the Application Server (in our case Tomcat). As a result, we focused on the portal-ext.properties file and not the application file (root.xml). Interestingly, I noticed that some had to configure both to work, but I don't think it is a requirement. I would be happy if one would work.

We also created a database as well as a user. We did not use root for that account (perhaps this is our problem). In spite of all of this, we cannot get mySQL to work. I will post the error message as soon as I can.

Any insight to get this to work would be so awesome!
Gepostet am 01.10.10 14:16 als Antwort auf Kirk Stork.
I haven't been doing much development recently, and I should have known that web app can't find a resource file unless it is on class path.

I suspect this did not for some, because they did not restart their server so that it would be picked up.

Richard Sezov should update his book if possible to provide these explicit details since it is overlooked by anyone who is new or rusty...
Gepostet am 23.03.11 16:09 als Antwort auf Jerry Niu.
Windows/Unix MySQL Note:

Windows and unix versions treat MySQL differently with regards to case sensitivity. If you are planning on developing in one platform and moving to the other, do yourself a favor and research the case sensitivity issue first.

The MySQL doco explains in detail the settings that you should use on either side to make the database more portable between the two systems.
Gepostet am 23.07.11 08:25.
Hi All,
We are having one web application, Now we are migrating it to portal.
For app we were using database for user managment.
Now we want to move this existing USERS to portal database.
Is there any best practise of doin this.??
Gepostet am 20.10.11 01:45 als Antwort auf David H Nebinger.
I have problem like this:
严重: Error waiting for multi-thread deployment of context descriptors to complete
java.util.concurrent.ExecutionException: java.lang.StackOverflowError
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
at java.util.concurrent.FutureTask.get(FutureTask.java:83)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:573)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:469)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1416)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:312)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.ja­va:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)­
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401)
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:346)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1145)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:782)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:8­86)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.StackOverflowError
at java.util.zip.ZipFile.getEntry(ZipFile.java:148)
at java.util.jar.JarFile.getEntry(JarFile.java:208)
at java.util.jar.JarFile.getJarEntry(JarFile.java:191)
at sun.misc.URLClassPath$JarLoader.getResource(URLClassPath.java:757)
at sun.misc.URLClassPath.getResource(URLClassPath.java:169)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.net.URL.getURLStreamHandler(URL.java:1144)
at java.net.URL.<init>(URL.java:572)
at java.net.URL.<init>(URL.java:464)
at sun.misc.URLClassPath$FileLoader.getResource(URLClassPath.java:977)
at sun.misc.URLClassPath$FileLoader.findResource(URLClassPath.java:966)
at sun.misc.URLClassPath.findResource(URLClassPath.java:146)
at java.net.URLClassLoader$2.run(URLClassLoader.java:385)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findResource(URLClassLoader.java:382)
at java.lang.ClassLoader.getResource(ClassLoader.java:1003)
at org.apache.catalina.loader.WebappClassLoader.getResource
..................
somebody can tell me why?
Gepostet am 20.09.12 02:50 als Antwort auf Navnath G.
Yes, there is a solution, where you can migrate your database from HSQL to any other.
Go to Control panel --> Server --> Server Administration --> Data migration

Now enter the configuration for database, where you want to migrate your data. As i migrated to MYSQL the configuration settings are:
jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysq­l://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing­=false
jdbc.default.username=your-username
jdbc.default.password=your-password

Befo­re Pressing "Execute" button ,do create a database named "lportal" . Now on clicking the Execute button the following message gets showed up:

The system is currently undergoing maintenance. Please try again later.
Wed, 22 Feb 2012 09:12:45 +0000 Executing com.liferay.portal.convert.ConvertDatabase

But not to worry you can see the database content migrating in console.

This is it. Have a successful migration. If you find any problem msg me.
Gepostet am 11.12.12 22:30 als Antwort auf Harry ni.