[Building Sakai] 2.7.0 with TurnitIn

Sam Chow samchow at ln.edu.hk
Wed Jan 26 04:08:34 PST 2011


Thx Steve , I am using version 2.7.0

On 1/26/11, Steve Swinsburg <steve.swinsburg at gmail.com> wrote:
> Hi Sam,
>
> Can you confirm if you are using Sakai 2.6 or 2.7?
>
> cheers,
> Steve
>
>
> On 26/01/2011, at 12:40 PM, Sam Chow wrote:
>
>> Dear Bryan,
>>
>> After read this jira, i still cant find any idea to solve it :(
>>
>> Thanks.
>>
>> Sam
>>
>> On Wed, Jan 26, 2011 at 8:31 AM, Bryan Bakotich <bakotibj at plu.edu> wrote:
>> Sam,
>>
>> Have you figured this out yet?
>> I found this JIRA which helped me through the error:
>> https://jira.sakaiproject.org/browse/TII-64
>>
>> -Bryan
>>
>>
>> On Wed, Jan 19, 2011 at 8:24 PM, Sam Chow <samchow at ln.edu.hk> wrote:
>> Dear Steve,
>>
>> Thanks.
>>
>> i have drop this 3 tables (DROP TABLE `CONTENTREVIEW_ITEM` ,
>> `CONTENTREVIEW_LOCK` ,
>> `CONTENTREVIEW_SYNC_ITEM` ;)
>>
>> , and the result is same. or i should try it with a empty database?
>>
>>
>>
>> On Thu, Jan 20, 2011 at 12:08 PM, Steve Swinsburg
>> <steve.swinsburg at gmail.com> wrote:
>> It sounds like there might be database changes between versions. Are you
>> able to remove the old tables for CR, then restart?
>>
>>
>>
>>
>> On 20/01/2011, at 2:48 PM, Sam Chow wrote:
>>
>>> Dear Steve,
>>>
>>> No, there are some data before i deploy Content Review
>>>
>>> On Thu, Jan 20, 2011 at 11:45 AM, Steve Swinsburg
>>> <steve.swinsburg at gmail.com> wrote:
>>> Is this on a fresh set of database tables for the Content Review system?
>>>
>>> cheers,
>>> Steve
>>>
>>>
>>> On 20/01/2011, at 2:21 PM, Sam Chow wrote:
>>>
>>> >
>>> > Dear David,
>>> >
>>> > Thanks for your reploy, i have change to use content review version
>>> > 0.6.
>>> >
>>> > But there are an run time error when a instructor click on the "In /
>>> > New "
>>> > in Assigenemnt.
>>> >
>>> > The error message is:
>>> >
>>> > 2011-01-20 11:28:49,111 ERROR http-8443-Processor49
>>> > org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/sakai-assignment-tool].[sakai.assignment.grades]
>>> > - Servlet.service() for servlet sakai.assignment.grades threw
>>> > exception
>>> > java.lang.IllegalArgumentException: restrictions property and value
>>> > cannot
>>> > be null or empty
>>> >        at
>>> > org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.buildCriteria(HibernateBasicGenericDao.java:72)
>>> >        at
>>> > org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.baseFindBySearch(HibernateBasicGenericDao.java:153)
>>> >        at
>>> > org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findBySearch(HibernateBasicGenericDao.java:237)
>>> >        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:597)
>>> >        at
>>> > org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>>> >        at
>>> > org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>>> >        at
>>> > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>>> >        at
>>> > org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>>> >        at
>>> > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>>> >        at
>>> > org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>>> >        at $Proxy42.findBySearch(Unknown Source)
>>> >        at
>>> > org.sakaiproject.contentreview.impl.hbm.BaseReviewServiceImpl.getReportList(BaseReviewServiceImpl.java:212)
>>> >        at
>>> > org.sakaiproject.assignment.impl.BaseAssignmentService.getSubmissions(BaseAssignmentService.java:2829)
>>> >        at
>>> > org.sakaiproject.assignment.impl.BaseAssignmentService.getSubmissions(BaseAssignmentService.java:3160)
>>> >        at
>>> > org.sakaiproject.assignment.impl.BaseAssignmentService.getSubmitterIdList(BaseAssignmentService.java:4129)
>>> >        at
>>> > org.sakaiproject.assignment.cover.AssignmentService.getSubmitterIdList(AssignmentService.java:776)
>>> >        at
>>> > org.sakaiproject.assignment.tool.AssignmentAction.sizeResources(AssignmentAction.java:10064)
>>> >        at
>>> > org.sakaiproject.cheftool.PagedResourceActionII.prepPage(PagedResourceActionII.java:270)
>>> >        at
>>> > org.sakaiproject.assignment.tool.AssignmentAction.build_instructor_grade_assignment_context(AssignmentAction.java:2507)
>>> >        at
>>> > org.sakaiproject.assignment.tool.AssignmentAction.buildMainPanelContext(AssignmentAction.java:886)
>>> >        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:597)
>>> >        at
>>> > org.sakaiproject.cheftool.VelocityPortletPaneledAction.toolModeDispatch(VelocityPortletPaneledAction.java:398)
>>> >        at
>>> > org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:236)
>>> >        at
>>> > org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1029)
>>> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>> >        at
>>> > org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56)
>>> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >        at
>>> > org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:580)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >        at
>>> > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
>>> >        at
>>> > org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
>>> >        at
>>> > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
>>> >        at
>>> > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>>> >        at
>>> > org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:500)
>>> >        at
>>> > org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1216)
>>> >        at
>>> > org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:204)
>>> >        at
>>> > org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:96)
>>> >        at
>>> > org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:768)
>>> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >        at
>>> > org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:641)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>> >        at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >        at
>>> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>> >        at
>>> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
>>> >        at
>>> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>> >        at
>>> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>>> >        at
>>> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>>> >        at
>>> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>>> >        at
>>> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
>>> >        at
>>> > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>>> >        at
>>> > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>>> >        at
>>> > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>>> >        at
>>> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>>> >        at java.lang.Thread.run(Thread.java:619)
>>> > 2011-01-20 11:28:49,352  WARN http-8443-Processor49
>>> > org.sakaiproject.portal.util.ErrorReporter - Bug Report bug-id:
>>> > 655bb7f4-1a9e-4d84-bd43-f48a4946664c user:
>>> > 2dfc5624-26f5-4ff5-a645-0cdfa20da3e2 usage-session:
>>> > 561f6a8b-573c-490e-b747-68cc69807d94 time: Jan 20, 2011 11:28:49 user
>>> > comment: null stack trace
>>> > org.sakaiproject.portal.api.PortalHandlerException:
>>> > org.sakaiproject.tool.api.ToolException
>>> >    at
>>> > org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:768)
>>> > caused by: org.sakaiproject.tool.api.ToolException
>>> >    at
>>> > org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:236)
>>> > caused by: java.lang.reflect.InvocationTargetException
>>> >    at
>>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> > caused by: java.lang.IllegalArgumentException: restrictions property
>>> > and
>>> > value cannot be null or empty
>>> >    at
>>> > org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.buildCriteria(HibernateBasicGenericDao.java:72)
>>> >    at
>>> > org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.baseFindBySearch(HibernateBasicGenericDao.java:153)
>>> >    at
>>> > org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findBySearch(HibernateBasicGenericDao.java:237)
>>> >    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:597)
>>> >    at
>>> > org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>>> >    at
>>> > org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>>> >    at
>>> > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>>> >    at
>>> > org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>>> >    at
>>> > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>>> >    at
>>> > org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>>> >    at $Proxy42.findBySearch(null:-1)
>>> >    at
>>> > org.sakaiproject.contentreview.impl.hbm.BaseReviewServiceImpl.getReportList(BaseReviewServiceImpl.java:212)
>>> >    at
>>> > org.sakaiproject.assignment.impl.BaseAssignmentService.getSubmissions(BaseAssignmentService.java:2829)
>>> >    at
>>> > org.sakaiproject.assignment.impl.BaseAssignmentService.getSubmissions(BaseAssignmentService.java:3160)
>>> >    at
>>> > org.sakaiproject.assignment.impl.BaseAssignmentService.getSubmitterIdList(BaseAssignmentService.java:4129)
>>> >    at
>>> > org.sakaiproject.assignment.cover.AssignmentService.getSubmitterIdList(AssignmentService.java:776)
>>> >    at
>>> > org.sakaiproject.assignment.tool.AssignmentAction.sizeResources(AssignmentAction.java:10064)
>>> >    at
>>> > org.sakaiproject.cheftool.PagedResourceActionII.prepPage(PagedResourceActionII.java:270)
>>> >    at
>>> > org.sakaiproject.assignment.tool.AssignmentAction.build_instructor_grade_assignment_context(AssignmentAction.java:2507)
>>> >    at
>>> > org.sakaiproject.assignment.tool.AssignmentAction.buildMainPanelContext(AssignmentAction.java:886)
>>> >    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:597)
>>> >    at
>>> > org.sakaiproject.cheftool.VelocityPortletPaneledAction.toolModeDispatch(VelocityPortletPaneledAction.java:398)
>>> >    at
>>> > org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:236)
>>> >    at
>>> > org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1029)
>>> >    at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>> >    at
>>> > org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56)
>>> >    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >    at
>>> > org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:580)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >    at
>>> > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
>>> >    at
>>> > org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
>>> >    at
>>> > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
>>> >    at
>>> > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>>> >    at
>>> > org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:500)
>>> >    at
>>> > org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1216)
>>> >    at
>>> > org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:204)
>>> >    at
>>> > org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:96)
>>> >    at
>>> > org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:768)
>>> >    at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
>>> >    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >    at
>>> > org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:641)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>> >    at
>>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >    at
>>> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>> >    at
>>> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
>>> >    at
>>> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>> >    at
>>> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>>> >    at
>>> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>>> >    at
>>> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>>> >    at
>>> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
>>> >    at
>>> > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>>> >    at
>>> > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>>> >    at
>>> > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>>> >    at
>>> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>>> >    at java.lang.Thread.run(Thread.java:619)
>>> >
>>> > Tool Placement:
>>> > No Placement
>>> >
>>> > Request:
>>> > :    AuthType:null
>>> > :    CharEncoding:UTF-8
>>> > :    ContentLength:-1
>>> > :    ContentType:null
>>> > :    ContextPath:/portal
>>> > :    LocalAddress:192.168.1.201
>>> > :    LocalName:dev-web1.local
>>> > :    LocalPort:8443
>>> > :    Method:GET
>>> > :    PathInfo:/tool/02d4773d-955a-4f66-b60a-15a85d66655d
>>> > :    Protocol:HTTP/1.1
>>> > :    QueryString:panel=Main
>>> > :    RemoteAddress:192.168.1.191
>>> > :    RemoteHost:192.168.1.191
>>> > :    RemotePort:45050
>>> > :    Requested
>>> > URL:https://203.188.102.180/portal/tool/02d4773d-955a-4f66-b60a-15a85d66655d
>>> > :    Scheme:https
>>> > :    ServerName:203.188.102.180
>>> > :    Headers:
>>> > :        Header:host:203.188.102.180
>>> > :        Header:connection:keep-alive
>>> > :
>>> > Header:referer:https://203.188.102.180/portal/tool/02d4773d-955a-4f66-b60a-15a85d66655d?panel=Main
>>> > :
>>> > Header:accept:application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
>>> > :        Header:user-agent:Mozilla/5.0 (Windows; U; Windows NT 5.1;
>>> > en-US)
>>> > AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.237
>>> > Safari/534.10
>>> > :        Header:accept-encoding:gzip,deflate,sdch
>>> > :        Header:accept-language:zh-TW,zh;q=0.8,en-US;q=0.6,en;q=0.4
>>> > :        Header:accept-charset:Big5,utf-8;q=0.7,*;q=0.3
>>> > :        Header:cookie:---censored---
>>> > :    Parameters:
>>> > :        Parameter:panel:0:Main
>>> > :    Attributes:
>>> > :
>>> > Attribute:sakai.character.encoding.done:sakai.character.encoding.done
>>> > :
>>> > Attribute:tool.url.manager:org.sakaiproject.portal.util.ToolURLManagerImpl at 13fd214
>>> > :
>>> > Attribute:sakai.html.body.onload:setMainFrameHeight('Main02d4773dx955ax4f66xb60ax15a85d66655d');setFocus(focus_path);
>>> > :        Attribute:javax.servlet.request.key_size:128
>>> > :        Attribute:sakai.filtered:sakai.filtered
>>> > :        Attribute:sakai.html.head.css:<link
>>> > href="/library/skin/tool_base.css" type="text/css" rel="stylesheet"
>>> > media="all" />
>>> > <link href="/library/skin/default/tool.css" type="text/css"
>>> > rel="stylesheet"
>>> > media="all" />
>>> >
>>> > :
>>> > Attribute:sakai.session:org.sakaiproject.tool.impl.MySession at c29a0b77
>>> > :
>>> > Attribute:javax.servlet.request.ssl_session:4d37abd2422c6cff86b846e50b47572e0b573c0754a8666bb66cd087c653b350
>>> > :        Attribute:sakai.html.head.css.skin:<link
>>> > href="/library/skin/default/tool.css" type="text/css" rel="stylesheet"
>>> > media="all" />
>>> >
>>> > :        Attribute:sakai.html.head.js:<script type="text/javascript"
>>> > language="JavaScript" src="/library/js/headscripts.js"></script>
>>> >
>>> > :        Attribute:sakai.html.head:<link
>>> > href="/library/skin/tool_base.css"
>>> > type="text/css" rel="stylesheet" media="all" />
>>> > <link href="/library/skin/default/tool.css" type="text/css"
>>> > rel="stylesheet"
>>> > media="all" />
>>> > <script type="text/javascript" language="JavaScript"
>>> > src="/library/js/headscripts.js"></script>
>>> >
>>> > :
>>> > Attribute:javax.servlet.request.cipher_suite:TLS_DHE_RSA_WITH_AES_128_CBC_SHA
>>> > :        Attribute:sakai.html.head.css.base:<link
>>> > href="/library/skin/tool_base.css" type="text/css" rel="stylesheet"
>>> > media="all" />
>>> >
>>> > Session:
>>> > :    Created:1295494097992
>>> > :    LastAccess:1295494129334
>>> > :    MaxInactive:3600
>>> > :    Attributes:
>>> > :        Attribute:portalskin:defaultskin
>>> >
>>> >
>>> >
>>> > David Horwitz wrote:
>>> >>
>>> >> Hi
>>> >>
>>> >> Sorry missed this earlier. I would recommend one of two things:
>>> >>
>>> >> 1) Use the 2.6 branch
>>> >>
>>> >> 2) Use trunk however this will require updating the content review
>>> >> API
>>> >> to a newer version
>>> >>
>>> >> David
>>> >>
>>> >> On 01/19/2011 09:01 AM, Sam Chow wrote:
>>> >>> I am still no idea on this :,(
>>> >>>
>>> >>>
>>> >>> Bryan Bakotich wrote:
>>> >>>
>>> >>>> I am also having this issue running the content-review-impl-base-0.5
>>> >>>> tag
>>> >>>> with sakai 2.7.x.
>>> >>>>
>>> >>>> Should I be using a different tag/branch of the code or is there a
>>> >>>> patch
>>> >>>> that can be applied to the 0.5 tag to fix this?
>>> >>>>
>>> >>>> -Bryan
>>> >>>>
>>> >>>> On Wed, Jan 12, 2011 at 7:11 PM, Sam Chow <samchow at ln.edu.hk>
>>> >>>> wrote:
>>> >>>>
>>> >>>>
>>> >>>>> Dear Steve,
>>> >>>>>
>>> >>>>> I use this one:
>>> >>>>> https://confluence.sakaiproject.org/display/TII/TurnitIn+Content+Review+Service+0.5
>>> >>>>>
>>> >>>>> is this version too old?
>>> >>>>>
>>> >>>>> <https://confluence.sakaiproject.org/display/TII/TurnitIn+Content+Review+Service+0.5>
>>> >>>>>
>>> >>>>> On Thu, Jan 13, 2011 at 10:44 AM, Steve Swinsburg <
>>> >>>>> steve.swinsburg at gmail.com> wrote:
>>> >>>>>
>>> >>>>>
>>> >>>>>> What version Turnitin integration do you have? That method (
>>> >>>>>> ContentResource.getContentLength()) changed in the 1.1 Kernel (ie
>>> >>>>>> Sakai
>>> >>>>>> 2.7) to return a long instead of an int, which is the cause of
>>> >>>>>> the
>>> >>>>>> incompatibility you see below.
>>> >>>>>>
>>> >>>>>> regards,
>>> >>>>>> Steve
>>> >>>>>>
>>> >>>>>>
>>> >>>>>>
>>> >>>>>>
>>> >>>>>> On 13/01/2011, at 12:47 PM, Sam Chow wrote:
>>> >>>>>>
>>> >>>>>> Dear all,
>>> >>>>>>
>>> >>>>>> I have try to upload assignment after deploy content-review, but
>>> >>>>>> it
>>> >>>>>> has
>>> >>>>>> error occur:
>>> >>>>>>
>>> >>>>>> 2011-01-13 09:54:53,988  WARN http-8443-Processor8
>>> >>>>>> org.sakaiproject.cheftool.VelocityPortletPaneledAction -
>>> >>>>>> Exception
>>> >>>>>> calling
>>> >>>>>> method doRead_add_submission_form
>>> >>>>>> java.lang.reflect.InvocationTargetException (Caused by
>>> >>>>>> java.lang.NoSuchMethodError:
>>> >>>>>> org.sakaiproject.content.api.ContentResource.getContentLength()I)
>>> >>>>>> java.lang.reflect.InvocationTargetException
>>> >>>>>>        at sun.reflect.GeneratedMethodAccessor672.invoke(Unknown
>>> >>>>>> Source)
>>> >>>>>>        at
>>> >>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>> >>>>>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.cheftool.VelocityPortletPaneledAction.actionDispatch(VelocityPortletPaneledAction.java:622)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.cheftool.VelocityPortletPaneledAction.processAction(VelocityPortletPaneledAction.java:532)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:230)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1029)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.cheftool.ToolServlet.doPost(ToolServlet.java:154)
>>> >>>>>>        at
>>> >>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56)
>>> >>>>>>        at
>>> >>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:580)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:500)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1216)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:204)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:96)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:73)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1059)
>>> >>>>>>        at
>>> >>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
>>> >>>>>>        at
>>> >>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:641)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>>> >>>>>>        at
>>> >>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>>> >>>>>>        at
>>> >>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
>>> >>>>>>        at
>>> >>>>>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>>> >>>>>>        at
>>> >>>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>>> >>>>>>        at
>>> >>>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>>> >>>>>>        at
>>> >>>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>>> >>>>>>        at java.lang.Thread.run(Thread.java:619)
>>> >>>>>> Caused by: java.lang.NoSuchMethodError:
>>> >>>>>> org.sakaiproject.content.api.ContentResource.getContentLength()I
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.contentreview.impl.turnitin.TurnitinReviewServiceImpl.isAcceptableContent(TurnitinReviewServiceImpl.java:357)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.assignment.impl.BaseAssignmentService$BaseAssignmentSubmissionEdit.getFirstAcceptableAttachement(BaseAssignmentService.java:10283)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.assignment.impl.BaseAssignmentService$BaseAssignmentSubmissionEdit.postAttachment(BaseAssignmentService.java:10258)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.assignment.tool.AssignmentAction.post_save_submission(AssignmentAction.java:4080)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.assignment.tool.AssignmentAction.doPost_submission(AssignmentAction.java:3870)
>>> >>>>>>        at
>>> >>>>>> org.sakaiproject.assignment.tool.AssignmentAction.doRead_add_submission_form(AssignmentAction.java:10674)
>>> >>>>>>        ... 45 more
>>> >>>>>>
>>> >>>>>> thanks!
>>> >>>>>>
>>> >>>>>> On Wed, Jan 12, 2011 at 10:56 PM, Anand Mehta
>>> >>>>>> <anand.mehta at yahoo.com>wrote:
>>> >>>>>>
>>> >>>>>>
>>> >>>>>>> Hi Sam,
>>> >>>>>>>
>>> >>>>>>> You can check the contentreview_item table for any errors. I
>>> >>>>>>> assume
>>> >>>>>>> that
>>> >>>>>>> both Process Content Review Queue and Process Content Review
>>> >>>>>>> Reports
>>> >>>>>>> jobs
>>> >>>>>>> are configured correctly.
>>> >>>>>>>
>>> >>>>>>> Thanks,
>>> >>>>>>> Anand
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>> ------------------------------
>>> >>>>>>> *From:* Adam Marshall <adam.marshall at oucs.ox.ac.uk>
>>> >>>>>>> *To:* Sam Chow <samchow at ln.edu.hk>;
>>> >>>>>>> "sakai-dev at collab.sakaiproject.org"
>>> >>>>>>> <sakai-dev at collab.sakaiproject.org>
>>> >>>>>>> *Sent:* Wed, January 12, 2011 3:59:25 AM
>>> >>>>>>> *Subject:* Re: [Building Sakai] 2.7.0 with TurnitIn
>>> >>>>>>>
>>> >>>>>>>> From our FAQ:
>>> >>>>>>>
>>> >>>>>>> No Turnitin report was generated. What could be the reason?
>>> >>>>>>>
>>> >>>>>>> A: There are a number of restrictions when using Turnitin. The
>>> >>>>>>> nature
>>> >>>>>>> of
>>> >>>>>>> these restrictions are such that you are unlikely to encounter
>>> >>>>>>> any of
>>> >>>>>>> these
>>> >>>>>>> in practice; however it is worth being aware of them in case you
>>> >>>>>>> have
>>> >>>>>>> any
>>> >>>>>>> problems. The scenario when you are most likely to run into them
>>> >>>>>>> would
>>> >>>>>>> be
>>> >>>>>>> when you are testing Turnitin for yourself with artificial
>>> >>>>>>> sample
>>> >>>>>>> data.
>>> >>>>>>>
>>> >>>>>>>  1. Turnitin distinguishes users on the basis of e-mail address.
>>> >>>>>>> Therefore, once an e-mail address has been associated with a
>>> >>>>>>> particular
>>> >>>>>>> user
>>> >>>>>>> it can not be associated with another one.
>>> >>>>>>>  2. The name of the WebLearn site containing the assignment must
>>> >>>>>>> be
>>> >>>>>>> greater than 5 characters.
>>> >>>>>>>  3. Document submissions must be over 100 characters in length.
>>> >>>>>>>  4. Assignment durations should not be "too" short. For example,
>>> >>>>>>> you
>>> >>>>>>> may
>>> >>>>>>> well encounter problems with duration of just one day. (For
>>> >>>>>>> testing
>>> >>>>>>> purposes, you will still be able to examine many of the aspects
>>> >>>>>>> of
>>> >>>>>>> the
>>> >>>>>>> Assignment + Turnitin workflow (such as creation, return and
>>> >>>>>>> viewing
>>> >>>>>>> of
>>> >>>>>>> originality reports, etc) by setting a duration of 5 - 7 days).
>>> >>>>>>>  5. You must choose At tachments only for the type of student
>>> >>>>>>> submission.
>>> >>>>>>>  6. Turnitin accepts the following file types for submissions -
>>> >>>>>>> MS
>>> >>>>>>> Word
>>> >>>>>>> (*.doc), ?WordPerfect, RTF, PDF, Postscript, HTML and plain
>>> >>>>>>> text.
>>> >>>>>>>  7. Currently, although re-submission can be enabled in
>>> >>>>>>> WebLearn,
>>> >>>>>>> any
>>> >>>>>>> re-submitted assignments will not be sent to Turnitin.
>>> >>>>>>>
>>> >>>>>>> Any help?
>>> >>>>>>>
>>> >>>>>>> adam
>>> >>>>>>> -----Original Message-----
>>> >>>>>>> From: sakai-dev-bounces at collab.sakaiproject.org [mailto:
>>> >>>>>>> sakai-dev-bounces at collab.sakaiproject.org] On Behalf Of Sam Chow
>>> >>>>>>> Sent: 12 January 2011 02:59
>>> >>>>>>> To: sakai-dev at collab.sakaiproject.org
>>> >>>>>>> Subject: [Building Sakai] 2.7.0 with TurnitIn
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>> Dear all,
>>> >>>>>>>
>>> >>>>>>> I get a turnitin account and wanna integrate with the assignment
>>> >>>>>>> tools.
>>> >>>>>>> I
>>> >>>>>>> am
>>> >>>>>>> success to deploy the content-review and the batch job can run.
>>> >>>>>>> Unfortunately, there are always no report return. I check the
>>> >>>>>>> stats
>>> >>>>>>> on
>>> >>>>>>> the
>>> >>>>>>> turnitIn account, dont have any data to view. I think the
>>> >>>>>>> connection
>>> >>>>>>> having
>>> >>>>>>> problem to the server, but there are no log to trace. Any idea
>>> >>>>>>> for me
>>> >>>>>>> to
>>> >>>>>>> trace whats wrong with my integration?
>>> >>>>>>>
>>> >>>>>>> Many Thanks!
>>> >>>>>>>
>>> >>>>>>> Best Regards,
>>> >>>>>>> Sam Chow
>>> >>>>>>>
>>> >>>>>>> -----
>>> >>>>>>> Best Regards,
>>> >>>>>>>
>>> >>>>>>> Sam Chow
>>> >>>>>>> Research Assistant
>>> >>>>>>> Lingnan Unviersity
>>> >>>>>>> Hong Kong
>>> >>>>>>> --
>>> >>>>>>> View this message in context:
>>> >>>>>>> http://old.nabble.com/2.7.0-with-TurnitIn-tp30649999p30649999.html
>>> >>>>>>> Sent from the Sakai - Development mailing list archive at
>>> >>>>>>> Nabble.com.
>>> >>>>>>>
>>> >>>>>>> _______________________________________________
>>> >>>>>>> sakai-dev mailing list
>>> >>>>>>> sakai-dev at collab.sakaiproject.org
>>> >>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >>>>>>>
>>> >>>>>>> TO UNSUBSCRIBE: send email to
>>> >>>>>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> >>>>>>> "unsubscribe"
>>> >>>>>>> _______________________________________________
>>> >>>>>>> sakai-dev mailing list
>>> >>>>>>> sakai-dev at collab.sakaiproject.org
>>> >>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >>>>>>>
>>> >>>>>>> TO UNSUBSCRIBE: send email to
>>> >>>>>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> >>>>>>> "unsubscribe"
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>
>>> >>>>>> --
>>> >>>>>> Best Regards,
>>> >>>>>> *Sam Chow*
>>> >>>>>> Assistant Information Officer (I.T. Support Team)
>>> >>>>>> Community College at Lingnan University
>>> >>>>>> Tel: 2616 7271
>>> >>>>>>
>>> >>>>>> _______________________________________________
>>> >>>>>> sakai-dev mailing list
>>> >>>>>> sakai-dev at collab.sakaiproject.org
>>> >>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >>>>>>
>>> >>>>>> TO UNSUBSCRIBE: send email to
>>> >>>>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> >>>>>> "unsubscribe"
>>> >>>>>>
>>> >>>>>>
>>> >>>>>>
>>> >>>>>>
>>> >>>>>
>>> >>>>> --
>>> >>>>>
>>> >>>>> Best Regards,
>>> >>>>>
>>> >>>>> *Sam Chow*
>>> >>>>>
>>> >>>>> Assistant Information Officer (I.T. Support Team)
>>> >>>>>
>>> >>>>> Community College at Lingnan University
>>> >>>>>
>>> >>>>> Tel: 2616 7271
>>> >>>>>
>>> >>>>>
>>> >>>>> _______________________________________________
>>> >>>>> sakai-dev mailing list
>>> >>>>> sakai-dev at collab.sakaiproject.org
>>> >>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >>>>>
>>> >>>>> TO UNSUBSCRIBE: send email to
>>> >>>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> >>>>> "unsubscribe"
>>> >>>>>
>>> >>>>>
>>> >>>>
>>> >>>>
>>> >>>> --
>>> >>>> Bryan Bakotich
>>> >>>> Open Source Implementation Specialist
>>> >>>> Digital Media Center, Information & Technology Services
>>> >>>> Pacific Lutheran University
>>> >>>> Tacoma, WA 98447-0013
>>> >>>> Phone: 253-536-5021
>>> >>>>
>>> >>>> _______________________________________________
>>> >>>> sakai-dev mailing list
>>> >>>> sakai-dev at collab.sakaiproject.org
>>> >>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >>>>
>>> >>>> TO UNSUBSCRIBE: send email to
>>> >>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> >>>> "unsubscribe"
>>> >>>>
>>> >>>>
>>> >>>
>>> >>> -----
>>> >>> Best Regards,
>>> >>>
>>> >>> Sam Chow
>>> >>> Research Assistant
>>> >>> Lingnan Unviersity
>>> >>> Hong Kong
>>> >>>
>>> >> _______________________________________________
>>> >> sakai-dev mailing list
>>> >> sakai-dev at collab.sakaiproject.org
>>> >> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >>
>>> >> TO UNSUBSCRIBE: send email to
>>> >> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> >> "unsubscribe"
>>> >>
>>> >>
>>> >
>>> >
>>> > -----
>>> > Best Regards,
>>> >
>>> > Sam Chow
>>> > Research Assistant
>>> > Lingnan Unviersity
>>> > Hong Kong
>>> > --
>>> > View this message in context:
>>> > http://old.nabble.com/2.7.0-with-TurnitIn-tp30649999p30715969.html
>>> > Sent from the Sakai - Development mailing list archive at Nabble.com.
>>> >
>>> > _______________________________________________
>>> > sakai-dev mailing list
>>> > sakai-dev at collab.sakaiproject.org
>>> > http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>> >
>>> > TO UNSUBSCRIBE: send email to
>>> > sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> > "unsubscribe"
>>>
>>>
>>>
>>>
>>> --
>>> Best Regards,
>>> Sam Chow
>>> Assistant Information Officer (I.T. Support Team)
>>> Community College at Lingnan University
>>> Tel: 2616 7271
>>>
>>
>>
>>
>>
>> --
>> Best Regards,
>> Sam Chow
>> Assistant Information Officer (I.T. Support Team)
>> Community College at Lingnan University
>> Tel: 2616 7271
>>
>>
>> _______________________________________________
>> sakai-dev mailing list
>> sakai-dev at collab.sakaiproject.org
>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>
>> TO UNSUBSCRIBE: send email to
>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>> "unsubscribe"
>>
>>
>>
>> --
>> Bryan Bakotich
>> Open Source Implementation Specialist
>> Digital Media Center, Information & Technology Services
>> Pacific Lutheran University
>> Tacoma, WA 98447-0013
>> Phone: 253-536-5021
>>
>>
>>
>> --
>> Best Regards,
>> Sam Chow
>> Assistant Information Officer (I.T. Support Team)
>> Community College at Lingnan University
>> Tel: 2616 7271
>>
>
>


More information about the sakai-dev mailing list