[Building Sakai] Clog tool version for Sakai 2.9.1
JUAN JOSé MEROñO SáNCHEZ
jjmerono at um.es
Thu Jul 4 02:33:37 PDT 2013
Hi,
There are no duplicates deployed, only 0.9.4 version present. I'm
not upgrading any version is a new installation. These are clog tables
in Oracle:
CREATE TABLE CLOG_POST
(
POST_ID CHAR (36) NOT NULL,
SITE_ID VARCHAR2 (255),
TITLE VARCHAR2 (255) NOT NULL,
CONTENT CLOB NOT NULL,
CREATED_DATE TIMESTAMP NOT NULL,
MODIFIED_DATE TIMESTAMP,
CREATOR_ID VARCHAR2 (255) NOT NULL,
KEYWORDS VARCHAR2 (255),
ALLOW_COMMENTS NUMBER (10, 0),
VISIBILITY VARCHAR2 (16) NOT NULL,
PRIMARY KEY (POST_ID)
);
CREATE TABLE CLOG_AUTOSAVED_POST
(
POST_ID CHAR (36) NOT NULL,
SITE_ID VARCHAR2 (255),
TITLE VARCHAR2 (255) NOT NULL,
CONTENT CLOB NOT NULL,
CREATED_DATE TIMESTAMP NOT NULL,
MODIFIED_DATE TIMESTAMP,
CREATOR_ID VARCHAR2 (255) NOT NULL,
KEYWORDS VARCHAR2 (255),
ALLOW_COMMENTS NUMBER (10, 0),
VISIBILITY VARCHAR2 (16) NOT NULL,
PRIMARY KEY (POST_ID)
);
CREATE TABLE CLOG_COMMENT
(
COMMENT_ID CHAR (36) NOT NULL,
POST_ID CHAR (36) NOT NULL,
SITE_ID VARCHAR2 (255) NOT NULL,
CREATOR_ID CHAR (36) NOT NULL,
CREATED_DATE TIMESTAMP NOT NULL,
MODIFIED_DATE TIMESTAMP NOT NULL,
CONTENT CLOB NOT NULL,
PRIMARY KEY (COMMENT_ID)
);
CREATE TABLE CLOG_AUTHOR
(
USER_ID CHAR (36) NOT NULL,
SITE_ID VARCHAR2 (255) NOT NULL,
TOTAL_POSTS NUMBER (10, 0) NOT NULL,
LAST_POST_DATE TIMESTAMP,
TOTAL_COMMENTS NUMBER (10, 0) NOT NULL,
PRIMARY KEY (USER_ID, SITE_ID)
)
After adding a new post, it appears in the database, but keywords
column is empty (null) and fails when try to display posts. If I add
something manually in keywords column then the post appears and
everything works.
I've added this line in Post.java to avoid NPE, I don't know if mysql
returns "" instead of null so this only affects Oracle installations,
but with this line everything works.
public void setKeywordsText(String keywordsText) {
/*if (keywordsText==null) return;*/
String[] keywordsArray = keywordsText.split(",");
setKeywords(Arrays.asList(keywordsArray));
}
Another better way to fix the problem? Thanks !!
El 04/07/2013 9:38, Steve Swinsburg escribió:
> Hi,
>
> This may be an oracle only bug. Though can you first check you have no
> duplicates deployed:
>
> [steve:~/dev/sakai/tomcat/2.9.x]$ find . -name clog*
> ./components/clog-pack
> ./components/clog-pack/META-INF/maven/org.sakaiproject.clog/clog-pack
> ./components/clog-pack/WEB-INF/lib/clog-impl-0.9.4.jar
> ./shared/lib/clog-api-0.9.4.jar
> ./shared/lib/clog-help-0.9.4.jar
> ./webapps/clog-tool
> ./webapps/clog-tool/clog-translations-en_DEBUG.js
> ./webapps/clog-tool/clog-translations-en_GB.js
> ./webapps/clog-tool/clog-translations-es_ES.js
> ./webapps/clog-tool/clog-translations-pt_PT.js
> ./webapps/clog-tool/clog-translations-sv_SE.js
> ./webapps/clog-tool/clog-translations-tr_TR.js
> ./webapps/clog-tool/css/clog.css
> ./webapps/clog-tool/js/clog.js
> ./webapps/clog-tool/js/clog_permissions.js
> ./webapps/clog-tool/js/clog_utils.js
> ./webapps/clog-tool/META-INF/maven/org.sakaiproject.clog/clog-tool
> ./webapps/clog-tool/tools/clog.xml
> ./webapps/clog-tool/tools/clogadmin.xml
> ./webapps/clog-tool/WEB-INF/classes/clog-rss.properties
> ./webapps/clog-tool/WEB-INF/classes/clog.properties
> ./webapps/clog-tool/WEB-INF/classes/org/sakaiproject/clog
> ./webapps/clog-tool/WEB-INF/classes/org/sakaiproject/clogadmin
> ./webapps/clog-tool.war
> ./work/Catalina/localhost/clog-tool
>
> Also, from what version clog are you upgrading? Can you post the
> structure of the clog_post table? Are the contents of the entry in
> that table for the particular post correct? I wonder if there was an
> issue with it saving the data.
>
> cheers,
> Steve
>
>
> On Wed, Jul 3, 2013 at 11:02 PM, JUAN JOSé MEROñO SáNCHEZ
> <jjmerono at um.es <mailto:jjmerono at um.es>> wrote:
>
>
> We are trying to deploy Clog 0.9.4 in Sakai 2.9.2 using Oracle,
> but we've got this error when we try to add a new entry.
>
> INFO
> org.sakaiproject.clog.tool.entityprovider.ClogPostEntityProvider -
> Failed to get post with id 'a99b812b-5344-467c-ab36-a78e40fedb8a'.
> This could happen if this is the first time a post has been saved
> or published.
> java.lang.Exception: getPost: Unable to find post with
> id:a99b812b-5344-467c-ab36-a78e40fedb8a
> at
> org.sakaiproject.clog.impl.PersistenceManager.getPost(PersistenceManager.java:514)
> at
> org.sakaiproject.clog.impl.ClogManagerImpl.getPostHeader(ClogManagerImpl.java:101)
> at
> org.sakaiproject.clog.tool.entityprovider.ClogPostEntityProvider.createEntity(ClogPostEntityProvider.java:132)
> at
> org.sakaiproject.entitybroker.rest.EntityHandlerImpl.handleEntityAccess(EntityHandlerImpl.java:667)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.dispatch(DirectServlet.java:183)
> at
> org.sakaiproject.entitybroker.servlet.SakaiDirectServlet.dispatch(SakaiDirectServlet.java:146)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.handleRequest(DirectServlet.java:154)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.service(DirectServlet.java:132)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:695)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
> at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> DEBUG umu.sakai.login.event.UmuLoginEvent - Evento:
> clog.post.created::/clog/e2968dfa-2579-4afb-b87d-d6aacb502846/posts/a99b812b-5344-467c-ab36-a78e40fedb8a
> DEBUG
> org.sakaiproject.search.component.service.impl.SearchNotificationAction
> - Notify clog.post.created
> DEBUG
> org.sakaiproject.search.component.service.impl.SearchIndexBuilderImpl
> - Add resource
> org.sakaiproject.event.impl.BaseNotificationService$BaseNotification
> Edit at 1d62945::0:clog.post.created@/clog/e2968dfa-2579-4afb-b87d-d6aacb502846/posts/a99b812b-5344-467c-ab36-a78e40fedb8a
> <mailto:Edit at 1d62945::0:clog.post.created@/clog/e2968dfa-2579-4afb-b87d-d6aacb502846/posts/a99b812b-5344-467c-ab36-a78e40fedb8a>[m,
> 2]
> DEBUG
> org.sakaiproject.search.component.service.impl.SearchIndexBuilderImpl
> - new entitycontent producer
> DEBUG
> org.sakaiproject.search.component.service.impl.SearchIndexBuilderImpl
> - Matched Entity Content Producer for event
> 0:clog.post.created@/clog/e2968dfa-2579-4afb-b87d-d6aacb502846/posts/a99b812b-5344-467c-ab36-a78e40fedb8a[m,
> 2] with org.sakaiproject.clog.impl.ClogContentProducer at de6bc2
> DEBUG
> org.sakaiproject.search.component.service.impl.SearchIndexBuilderImpl
> - SEARCHBUILDER: Added Resource 1
> /clog/e2968dfa-2579-4afb-b87d-d6aacb502846/posts/a99b812b-5344-467c-ab36-a78e40fedb8a
> WARN org.sakaiproject.clog.impl.ClogManagerImpl - getEntity():
> java.lang.NullPointerException
> WARN org.sakaiproject.event.impl.ClusterEventTracking -
> postEvent, notifyObservers(), event:
> 0:clog.post.created@/clog/e2968dfa-2579-4afb-b87d-d6aacb502846/posts/a99b812b-5344-467c-ab36-a78e40fedb8a[m,
> 2]
> java.lang.NullPointerException
> at
> org.sakaiproject.clog.impl.NewPostNotification.getSubject(NewPostNotification.java:91)
> at
> org.sakaiproject.clog.impl.NewPostNotification.getHeaders(NewPostNotification.java:105)
> at
> org.sakaiproject.util.EmailNotification.reNotify(EmailNotification.java:221)
> at
> org.sakaiproject.util.EmailNotification.notify(EmailNotification.java:161)
> at
> org.sakaiproject.event.impl.BaseNotificationService$BaseNotification.notify(BaseNotificationService.java:1111)
> at
> org.sakaiproject.event.impl.BaseNotificationService.update(BaseNotificationService.java:613)
> at java.util.Observable.notifyObservers(Observable.java:159)
> at
> org.sakaiproject.event.impl.BaseEventTrackingService.notifyObservers(BaseEventTrackingService.java:126)
> at
> org.sakaiproject.event.impl.ClusterEventTracking.postEvent(ClusterEventTracking.java:305)
> at
> org.sakaiproject.event.impl.BaseEventTrackingService.post(BaseEventTrackingService.java:276)
> at
> org.sakaiproject.clog.impl.SakaiProxyImpl.postEvent(SakaiProxyImpl.java:451)
> at
> org.sakaiproject.clog.tool.entityprovider.ClogPostEntityProvider.createEntity(ClogPostEntityProvider.java:145)
> at
> org.sakaiproject.entitybroker.rest.EntityHandlerImpl.handleEntityAccess(EntityHandlerImpl.java:667)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.dispatch(DirectServlet.java:183)
> at
> org.sakaiproject.entitybroker.servlet.SakaiDirectServlet.dispatch(SakaiDirectServlet.java:146)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.handleRequest(DirectServlet.java:154)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.service(DirectServlet.java:132)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:695)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
> at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> ERROR
> org.sakaiproject.clog.tool.entityprovider.ClogPostEntityProvider -
> Caught exception whilst getting posts.
> java.lang.NullPointerException
> at
> org.sakaiproject.clog.api.datamodel.Post.setKeywordsText(Post.java:102)
> at
> org.sakaiproject.clog.impl.PersistenceManager.transformResultSetInPostCollection(PersistenceManager.java:625)
> at
> org.sakaiproject.clog.impl.PersistenceManager.getPosts(PersistenceManager.java:476)
> at
> org.sakaiproject.clog.impl.ClogManagerImpl.getPosts(ClogManagerImpl.java:119)
> at
> org.sakaiproject.clog.tool.entityprovider.ClogPostEntityProvider.getEntities(ClogPostEntityProvider.java:223)
> at
> org.sakaiproject.entitybroker.impl.EntityBrokerManagerImpl.internalGetEntities(EntityBrokerManagerImpl.java:590)
> at
> org.sakaiproject.entitybroker.impl.EntityBrokerManagerImpl.getEntitiesData(EntityBrokerManagerImpl.java:442)
> at
> org.sakaiproject.entitybroker.rest.EntityHandlerImpl.handleEntityAccess(EntityHandlerImpl.java:561)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.dispatch(DirectServlet.java:183)
> at
> org.sakaiproject.entitybroker.servlet.SakaiDirectServlet.dispatch(SakaiDirectServlet.java:146)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.handleRequest(DirectServlet.java:154)
> at
> org.sakaiproject.entitybroker.util.servlet.DirectServlet.service(DirectServlet.java:132)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:695)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
> at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> INFO: EntityEncodingManager: No entities to format (json) and
> output for ref (/clog-post)
>
> Any idea?
>
> El 03/07/2013 9:25, Steve Swinsburg escribió:
>> Yep 0.9.4 is in the wild.
>>
>> Cheers
>> Steve
>>
>> Sent from my iPhone
>>
>> On 03/07/2013, at 17:02, Adrian Fish <adrian.r.fish at gmail.com
>> <mailto:adrian.r.fish at gmail.com>> wrote:
>>
>>> Steve, you've just tagged 0.9.4, right?
>>>
>>> Marco, sorry for not getting back earlier. My day job at the
>>> moment does not involve a lot of Sakai so I have to wait 'til
>>> I'm at home to do Sakai stuff. Steve's done the business with a
>>> 0.9.4 tag so I'd just do some testing on that. As he says, make
>>> sure you clear out all the old jars so you don't get dll hell.
>>>
>>> Cheers,
>>> Adrian.
>>>
>>>
>>>
>>>
>>> On 3 July 2013 00:26, Steve Swinsburg <steve.swinsburg at gmail.com
>>> <mailto:steve.swinsburg at gmail.com>> wrote:
>>>
>>> Clog 0.9.4 should be released today so just hold out for
>>> that. And that works well with 2.9. Make sure you remove old
>>> versions from tomcat, that is probably the cause of the
>>> problem you are getting.
>>>
>>> Cheers
>>> Steve
>>>
>>> Sent from my iPhone
>>>
>>> On 03/07/2013, at 0:54, Marco Antonio Bernal Cataño
>>> <bernalmarcoa at gmail.com <mailto:bernalmarcoa at gmail.com>> wrote:
>>>
>>>> Adrian , I was this error in the import to clog, whit clog
>>>> 0.9.3 in sakai-2.9.2 :
>>>>
>>>> org.springframework.beans.factory.BeanCreationException:
>>>> Error creating bean with name
>>>> 'org.sakaiproject.clog.api.ClogManager' defined in file
>>>> [/opt/sakai92cindi/components/clog-pack/WEB-INF/components.xml]:
>>>> Error setting property values; nested exception is
>>>> org.springframework.beans.NotWritablePropertyException:
>>>> Invalid property 'importBlog1Data' of bean class
>>>> [org.sakaiproject.clog.impl.ClogManagerImpl]: Bean property
>>>> 'importBlog1Data' is not writable or has an invalid setter
>>>> method. Does the parameter type of the setter match the
>>>> return type of the getter?
>>>>
>>>> And if I use the clogAdmin to import only populate the
>>>> post tlables and no the clog_author table.
>>>>
>>>> Are you recommend work whith clog trunk with sakai 2.9.2 ?
>>>>
>>>>
>>>> 2013/7/1 Adrian Fish <adrian.r.fish at gmail.com
>>>> <mailto:adrian.r.fish at gmail.com>>
>>>>
>>>> Trunk and 0.9.3 are a lot different. Trunk should be
>>>> cool on 2.9.1 though. What problems have you encountered?
>>>>
>>>> Cheers,
>>>> Adrian.
>>>>
>>>>
>>>> On 1 July 2013 16:28, Jaco Gillman
>>>> <jaco at opencollab.co.za <mailto:jaco at opencollab.co.za>>
>>>> wrote:
>>>>
>>>> Hi All
>>>>
>>>> I am trying to install Clog on a Sakai 2.9.1
>>>> release. Which Clog tag version must I use or must
>>>> trunk be used? I checked out both Clog-trunk and
>>>> Clog-0.9.3, compared them with each other which
>>>> shows a lot of differences. Trunk does not seem to
>>>> cater for Sakai 2.9.1 or am I wrong? Online
>>>> documentation also seems to be a outdated...
>>>>
>>>> Any help/advice would be much appreciated.
>>>>
>>>> Regards,
>>>>
>>>> *Jaco Gillman*
>>>>
>>>> Java Developer
>>>>
>>>> opencollab
>>>>
>>>> *Tel*: +27 21 970 4017 | *Fax*:**+27 21 914 3098
>>>>
>>>> *Email*: jaco at opencollab.co.za
>>>> <mailto:jaco at opencollab.co.za> | *Skype*: gillmanjc
>>>>
>>>> *Web*: www.opencollab.co.za
>>>> <http://www.opencollab.co.za/>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>> See OpenCollab email disclaimer at
>>>> http://www.opencollab.co.za/email-disclaimer
>>>> _______________________________________________
>>>> sakai-dev mailing list
>>>> sakai-dev at collab.sakaiproject.org
>>>> <mailto: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
>>>> <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org>
>>>> with a subject of "unsubscribe"
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> sakai-dev mailing list
>>>> sakai-dev at collab.sakaiproject.org
>>>> <mailto: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
>>>> <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org>
>>>> with a subject of "unsubscribe"
>>>>
>>>>
>>>> _______________________________________________
>>>> sakai-dev mailing list
>>>> sakai-dev at collab.sakaiproject.org
>>>> <mailto: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
>>>> <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org> with
>>>> a subject of "unsubscribe"
>>>
>>>
>>
>>
>> _______________________________________________
>> sakai-dev mailing list
>> sakai-dev at collab.sakaiproject.org <mailto:sakai-dev at collab.sakaiproject.org>
>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>
>> TO UNSUBSCRIBE: send email tosakai-dev-unsubscribe at collab.sakaiproject.org <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org> with a subject of "unsubscribe"
>
>
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> <mailto: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
> <mailto: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"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20130704/f58c0ebb/attachment.html
More information about the sakai-dev
mailing list