-
Type:
Bug
-
Status: Closed
-
Resolution: Won't Fix
-
Affects Version/s: 6.0.6 GA
-
Fix Version/s: 6.0.6 GA
-
Component/s: Core Infrastructure
-
Labels:
-
Environment:WebSphere Application Server 7.0.0.15
When Jackrabbit is configured to use a datasource, then filesystem doesn't initialize properly due to dependency on oracle.sql.BLOB
configuration example:
<FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
<param name="driver" value="javax.naming.InitialContext" />
<param name="url" value="jdbc/LiferayJackrabbit" />
<param name="schema" value="oracle" />
<param name="schemaObjectPrefix" value="J_R_FS_" />
</FileSystem
an exception thrown:
18:11:59,916 ERROR [OracleFileSystem:151] failed to load/introspect oracle.sql.BLOB
java.lang.ClassNotFoundException: oracle.sql.BLOB
at java.lang.Throwable.<init>(Throwable.java:80)
at java.lang.ClassNotFoundException.<init>(ClassNotFoundException.java:76)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:351)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:347)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:83)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at org.apache.jackrabbit.core.fs.db.OracleFileSystem.init(OracleFileSystem.java:144)
at org.apache.jackrabbit.core.config.RepositoryConfigurationParser$4.getFileSystem(RepositoryConfigurationParser.java:818)
at org.apache.jackrabbit.core.config.RepositoryConfig.getFileSystem(RepositoryConfig.java:778)
at org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:268)
at org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:627)
at org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:230)
at org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:251)
at org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:319)
at com.liferay.portal.jcr.jackrabbit.JCRFactoryImpl.createSession(JCRFactoryImpl.java:67)
at com.liferay.portal.jcr.jackrabbit.JCRFactoryImpl.initialize(JCRFactoryImpl.java:82)
at com.liferay.portal.jcr.JCRFactoryUtil.initialize(JCRFactoryUtil.java:51)
at com.liferay.portal.events.GlobalStartupAction.run(GlobalStartupAction.java:238)
at com.liferay.portal.events.EventsProcessorImpl.processEvent(EventsProcessorImpl.java:106)
at com.liferay.portal.events.EventsProcessorImpl.process(EventsProcessorImpl.java:58)
at com.liferay.portal.events.EventsProcessorUtil.process(EventsProcessorUtil.java:32)
at com.liferay.portal.servlet.MainServlet.processGlobalStartupEvents(MainServlet.java:1020)
at com.liferay.portal.servlet.MainServlet.init(MainServlet.java:307)
...
So far I wasn't been able to get it to work properly with JNDI datasource.
This thread suggests to upgrade to Jackrabbit 2:
http://jackrabbit.510166.n4.nabble.com/ClassCastException-JR-1-6-WebSphere-Oracle-JNDI-td1586687.html