[Building Sakai] SCORM PLAYER INTEGRATION WITH SAKAI 2.6
Raad Al-Rawi
raad at caret.cam.ac.uk
Mon Aug 17 07:28:15 PDT 2009
OK, so here is a summary of how far I have got. I still can't get the
integration to work because of a hibernate problem - it's possible there
is some missing dependency; but I can't identify what that might be. Any
help appreciated!
1) downloaded Icodeon player2 files (includes pre-built war + build
files) from Icodeon
2) downloaded rsmart-common + icodeon + icodeon-overlay from rsmart
3) put rsmart-common + icodeon + player2 in my Sakai 2.5 source tree for
building with maven2
4) fixed up dependencies in rsmart-common (or use 2.5.x branch of
rsmart-common)
5) ensured osp module was included in main Sakai pom.xml (because of
dependencies - is OSP really needed?)
6) fixed main pom.xml, added the extra modules (rsmart-common + icodeon)
and ran maven build for Sakai
7) copied config, maven, and webapps directories from icodeon-overlay to
player2 directory (overlaying the files in those dirs)
8) added the icodeon-player-2.jar (from
player2/webapps/player2/WEB-INF/lib/) to our CARET m2 repo (the build
does not find this jar by default)
9) in player2 maven dir, do a "mvn install -Dmaven.test.skip=true" (skip
the tests otherwise the build fails with a set of compile failures)
10) 3 jar files are produced under the player2 maven dir:
./vendor-player-plugins/m2-target/vendor-player-plugins-2.jar
./icodeon-player-plugins/m2-target/icodeon-player-plugins-2.jar
./component/model/m2-target/icodeon-player-api-2.jar
These were copied to webapps/player2/WEB-INF/lib/ in the expanded
player2.war tree and the tree was jar-ed up into a new war.
Starting sakai with the new player2.war in place produced the following
in the log:
INFO: Deploying web application archive player2.war (2009-08-17
14:40:30,930 main_org.apache.catalina.startup.HostConfig)
*** Icodeon Player 2: Initializing... ***
Icodeon SCORM Player 2 (Java Edition)
Version 2.0.5
$LastChangedDate: 2009-07-26 16:33:50 +0100 (Sun, 26 Jul 2009) $
$LastChangedRevision: 975 $
*** Icodeon Player 2: Initialized ***
2009-08-17 14:40:31,257 [main] ERROR com.icodeon.rte.dao.HibernateUtil -
Hibernate configuration initialization error
java.lang.ClassCastException: $Proxy2
at
com.icodeon.rte.dao.HibernateUtil.buildSessionFactories(HibernateUtil.java:122)
at
com.icodeon.rte.listeners.HibernateInitListener.contextInitialized(HibernateInitListener.java:76)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3764)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:831)
at
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:720)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
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:1022)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
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:700)
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:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
2009-08-17 14:40:31,259 [main] ERROR
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/player2]
- Exception sending context initialized event to listener instance of
class com.icodeon.rte.listeners.HibernateInitListener
java.lang.ExceptionInInitializerError
at
com.icodeon.rte.dao.HibernateUtil.buildSessionFactories(HibernateUtil.java:137)
at
com.icodeon.rte.listeners.HibernateInitListener.contextInitialized(HibernateInitListener.java:76)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3764)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:831)
at
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:720)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
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:1022)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
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:700)
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:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Caused by: java.lang.ClassCastException: $Proxy2
at
com.icodeon.rte.dao.HibernateUtil.buildSessionFactories(HibernateUtil.java:122)
... 25 more
ERROR: Error listenerStart (2009-08-17 14:40:31,260
main_org.apache.catalina.core.StandardContext)
ERROR: Context [/player2] startup failed due to previous errors
(2009-08-17 14:40:31,260 main_org.apache.catalina.core.StandardContext)
On 12-Aug-09 11:20, Raad Al-Rawi wrote:
> Thanks Nuno - that is what I thought too :(
> Maybe it's a 2.5 vs 2.6 issue.
> I'll keep the list posted on a solution - it might help someone trying
> to do the same thing.
>
> Cheers
>
>
> R
>
More information about the sakai-dev
mailing list