Mail Archive Home | exoplatform List | January 2008 Index
| <-- Date Index | <-- Thread Index --> |
|
Peter, Thanks for the reply. Would it help if I just changed the
database to latin1? Also, this is a pretty complicated process in comparison to eXo
1.x. Is this going to be simplified in the future? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From:
pnedonosko@xxxxxxxxx [mailto:pnedonosko@xxxxxxxxx] On Behalf Of Peter
Nedonosko Hi, 2008/1/31, Kito D. Mann <kmann@xxxxxxxxxx>: Vitaly, Thanks for the quick reply. You
were right – I missed that change in database-configuration.xml. The dialect
also needed to be changed in two other config files:
conf/jcr/jcr-configuration.xml and conf/jcr/repository-configuration.xml. It'd
be nice if changing the info in one file was sufficient J. At any rate, eXo is now having
a problem creating keys in tables:
2008/01/28 12:33:52:500 EST
[INFO] JDBCWorkspaceDataContainer - Using a dialect 'MySQL' … 2008/01/28 12:33:52:546 EST
[ERROR] JDBCWorkspaceDataContainer - Error of init db
org.exoplatform.services.jcr. ength is 765 bytes; . Last
command: CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT ON JCR_SITEM(CONTAINER_NAME,
PAREN f DataSource: 'system'. Reason:
Specified key was too long; max key length is 765 bytes; . Last command: CREATE orage.jdbc.init.DBInitializerException:
Could not create db schema of DataSource: 'system'. Reason: Specified k AME, I_INDEX, I_CLASS, VERSION)
at
org.exoplatform.services.jcr.impl.storage.jdbc.init.DBInitializer.init(DBInitializer.java:292)
at org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer.initDatabase(JDBCWorkspace
at
org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer.<init>(JDBCWorkspaceDataCo
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at
org.exoplatform.container.ExoContainer.createComponent(ExoContainer.java:131)
at
org.exoplatform.container.jmx.MX4JComponentAdapter.getComponentInstance(MX4JComponentAdapter.java:57
at org.picocontainer.defaults.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:322)
at
org.picocontainer.defaults.DefaultPicoContainer.getComponentInstanceOfType(DefaultPicoContainer.java
at
org.exoplatform.services.jcr.impl.RepositoryContainer.registerWorkspace(RepositoryContainer.java:155
at
org.exoplatform.services.jcr.impl.RepositoryContainer.registerWorkspacesComponents(RepositoryContain
at
org.exoplatform.services.jcr.impl.RepositoryContainer.registerComponents(RepositoryContainer.java:32
at org.exoplatform.services.jcr.impl.RepositoryContainer.<init>(RepositoryContainer.java:93)
at
org.exoplatform.services.jcr.impl.RepositoryServiceImpl.createRepository(RepositoryServiceImpl.java:
at org.exoplatform.services.jcr.impl.RepositoryServiceImpl.init(RepositoryServiceImpl.java:272)
at
org.exoplatform.services.jcr.impl.RepositoryServiceImpl.start(RepositoryServiceImpl.java:210)
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 org.picocontainer.defaults.LifecycleVisitor.traverse(LifecycleVisitor.java:75)
at
org.picocontainer.defaults.LifecycleVisitor.start(LifecycleVisitor.java:113)
at
org.picocontainer.defaults.DefaultPicoContainer.start(DefaultPicoContainer.java:369)
at org.exoplatform.container.PortalContainer.start(PortalContainer.java:84)
at
org.exoplatform.container.RootContainer.createPortalContainer(RootContainer.java:103)
at org.exoplatform.portal.application.PortalController.init(PortalController.java:65)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4044)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:741)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1023)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1015)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
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 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by:
java.sql.SQLException: Specified key was too long; max key length is 765 bytes
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2928)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1571)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1666)
at com.mysql.jdbc.Connection.execSQL(Connection.java:2988)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:935)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:873)
at
org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225)
at
org.exoplatform.services.jcr.impl.storage.jdbc.init.DBInitializer.init(DBInitializer.java:263)
... 53 more Any ideas? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From: Vitaliy Obmanyuk [mailto:vetalok@xxxxxxxxx] Hello Kito, <property name="url"
value="jdbc:mysql://localhost:3307/exo2?relaxAutoCommit=true&autoReconnect=true&useUnicode=true&characterEncoding=utf8"/> you should use mysql DB driver instead of 2008/1/28, Kito D. Mann <kmann@xxxxxxxxxx>: Hello, I'm working with eXo 2 r2329 on Windows XP and when I tried to switch from
Hypersonic to MySQL 5.0.24a, I got the following exception: ERROR: cannot create portal container. ServletContext:
org.apache.catalina.core.ApplicationContextFacade@423da9 java.lang.RuntimeException: Cannot instantiate component class
org.exoplatform.services.jcr.impl.RepositoryServiceImpl at
org.exoplatform.container.jmx.MX4JComponentAdapter.getComponentInstance(MX4JComponentAdapter.java:76) at
org.picocontainer.defaults.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:322) at
org.picocontainer.defaults.DefaultPicoContainer.getComponentInstancesOfType(DefaultPicoContainer.java:281) at org.exoplatform.container.PortalContainer.getComponentInstancesOfType(PortalContainer.java:112) at
org.picocontainer.defaults.LifecycleVisitor.visitContainer(LifecycleVisitor.java:97) at
org.picocontainer.defaults.DefaultPicoContainer.accept(DefaultPicoContainer.java:416) 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
org.picocontainer.defaults.AbstractPicoVisitor.traverse(AbstractPicoVisitor.java:32) at
org.picocontainer.defaults.LifecycleVisitor.traverse(LifecycleVisitor.java:63) at
org.picocontainer.defaults.LifecycleVisitor.start(LifecycleVisitor.java:113) at
org.picocontainer.defaults.DefaultPicoContainer.start(DefaultPicoContainer.java:369) at
org.exoplatform.container.PortalContainer.start(PortalContainer.java:84) at
org.exoplatform.container.RootContainer.createPortalContainer(RootContainer.java:103) at
org.exoplatform.portal.application.PortalController.init(PortalController.java:65) at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161) at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981) at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4044) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350) at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761) at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:741) at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) at
org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553) at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488) at
org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1023) at
org.apache.catalina.core.StandardHost.start(StandardHost.java:719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1015) at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at
org.apache.catalina.core.StandardService.start(StandardService.java:448) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at
org.apache.catalina.startup.Catalina.start(Catalina.java:552) 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
org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: java.lang.RuntimeException: Cannot instantiate component class
org.exoplatform.services.jcr.impl.config.RepositoryServiceConfigurationImpl at org.exoplatform.container.jmx.MX4JComponentAdapter.getComponentInstance(MX4JComponentAdapter.java:76) at
org.picocontainer.defaults.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:322) at
org.picocontainer.defaults.DefaultPicoContainer.getComponentInstanceOfType(DefaultPicoContainer.java:313) at
org.exoplatform.container.ExoContainer.createComponent(ExoContainer.java:123) at
org.exoplatform.container.jmx.MX4JComponentAdapter.getComponentInstance(MX4JComponentAdapter.java:57) ... 42 more Caused by: java.lang.reflect.InvocationTargetException at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:494) at
org.exoplatform.container.ExoContainer.createComponent(ExoContainer.java:131) at
org.exoplatform.container.jmx.MX4JComponentAdapter.getComponentInstance(MX4JComponentAdapter.java:57) ... 46 more Caused by:
org.exoplatform.services.jcr.config.RepositoryConfigurationException: Fail to
init from xml! Reason:
org.exoplatform.services.jcr.config.RepositoryConfigurationException: Database
exception. java.sql.SQLException: Column length too big for colu mn 'CONFIG' (max = 65535); use BLOB or TEXT instead. SQL: CREATE TABLE
JCR_CONFIG (NAME VARCHAR(64) NOT NULL, CONFIG VARBINARY(102400) NOT NULL,
CONSTRAINT JCR_CONFIG_PK PRIMARY KEY(NAME)) at
org.exoplatform.services.jcr.impl.config.RepositoryServiceConfigurationImpl.<init>(RepositoryServiceConfigurationImpl.java:98) ... 52 more Caused by:
org.exoplatform.services.jcr.config.RepositoryConfigurationException: Database
exception. java.sql.SQLException: Column length too big for column 'CONFIG'
(max = 65535); use BLOB or TEXT instead. SQL: CREATE TABLE JCR_CONFIG (NAME
VARCHAR(64) N OT NULL, CONFIG VARBINARY(102400) NOT NULL, CONSTRAINT JCR_CONFIG_PK PRIMARY
KEY(NAME)) at
org.exoplatform.services.jcr.impl.config.JDBCConfigurationPersister.write(JDBCConfigurationPersister.java:271) at
org.exoplatform.services.jcr.impl.config.RepositoryServiceConfigurationImpl.<init>(RepositoryServiceConfigurationImpl.java:90) ... 52 more Caused by: java.sql.SQLException: Column length too big for column 'CONFIG'
(max = 65535); use BLOB or TEXT instead at
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2928) at
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1571) at
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1666) at
com.mysql.jdbc.Connection.execSQL(Connection.java:2988) at
com.mysql.jdbc.Statement.executeUpdate(Statement.java:935) at
com.mysql.jdbc.Statement.executeUpdate(Statement.java:873) at org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225) at
org.exoplatform.services.jcr.impl.config.JDBCConfigurationPersister.write(JDBCConfigurationPersister.java:226) ... 53 more I have modified database-configuration.xml in the
porta/WEB-INF/conf/database directory: <?xml version="1.0" encoding="ISO-8859-1"?> <configuration> <component>
<key>org.exoplatform.services.database.impl.ExoCacheProvider</key> <type>org.exoplatform.services.database.impl.ExoCacheProvider</type> </component> <component>
<key>org.exoplatform.services.database.HibernateService</key>
<jmx-name>database:type=HibernateService</jmx-name> <type>org.exoplatform.services.database.impl.HibernateServiceImpl</type> <init-params> <properties-param>
<name>hibernate.properties</name> <description>Default
Hibernate Service</description> <property
name="hibernate.show_sql" value="false"/> <property name="hibernate.cglib.use_reflection_optimizer"
value="true"/> <property
name="hibernate.connection.url"
value="jdbc:mysql://localhost:3307/exo2?relaxAutoCommit=true&autoReconnect=true&useUnicode=true&characterEncoding=utf8"/> <property
name="hibernate.connection.driver_class"
value="com.mysql.jdbc.Driver"/> <property
name="hibernate.connection.autocommit" value="true"/> <property
name="hibernate.connection.username" value="name"/> <property
name="hibernate.connection.password" value="password"/> <property
name="hibernate.dialect"
value="org.hibernate.dialect.MySQLDialect"/> <property
name="hibernate.c3p0.min_size" value="5"/> <property
name="hibernate.c3p0.max_size" value="20"/> <property
name="hibernate.c3p0.timeout" value="1800"/> <property
name="hibernate.c3p0.max_statements" value="50"/> </properties-param> </init-params> </component> <external-component-plugins> <target-component>org.exoplatform.services.naming.InitialContextInitializer</target-component> <component-plugin> <name>bind.datasource</name>
<set-method>addPlugin</set-method>
<type>org.exoplatform.services.naming.BindReferencePlugin</type> <init-params> <value-param>
<name>bind-name</name>
<value>jdbcexo</value> </value-param> <value-param>
<name>class-name</name>
<value>javax.sql.DataSource</value> </value-param> <value-param>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </value-param> <properties-param>
<name>ref-addresses</name>
<description>ref-addresses</description> <property name="driverClassName"
value="org.hsqldb.jdbcDriver"/> <property
name="url"
value="jdbc:mysql://localhost:3307/exo2?relaxAutoCommit=true&autoReconnect=true&useUnicode=true&characterEncoding=utf8"/> <property
name="username" value="name"/> <property
name="password" value="password"/> </properties-param> </init-params> </component-plugin> </external-component-plugins> </configuration> </configuration> And, of course, everything was fine before I changed this file to point to
MySQL instead of Hypersonic. The database does actually exist, and the user has
the proper rights. However, no tables have been created. Any ideas? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
| <-- Date Index | <-- Thread Index --> |
Powered by MHonArc.
Copyright © 2006-2007, OW2 Consortium | contact | webmaster.