luminis 4 support CPD (channel publishing doc)?

Anyone know if it's possible to publish channels in luminis using uPortal's channel publishing doc?  we seem to be bringing up test systems quite often and if we can at least publish channels using CPD, this would at least save some time.

thanks!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

It is possible

Unfortunately things have changed, so a Luminis 3 CPD will not work in Luminis 4

We came up with a procedure to migrate our channels, but it was complex - and we found out something new for each channel.

I will see if I can find the notes on the CPD part.

Derek

University of Leeds, UK

any luck!

Hi Derek,

any luck in finding those notes that you had?  i know it's been a while now.  but if you have time, and could locate them, would really appreciate it.

thanks.

- Sammy

New channel types OR auto-publish channels

@Sammy,  are you trying to publish new distinct channel types or just want to autopublish channels? (meaning upon restart Luminis will look for new CARs and publish the channel without you having to go through the wizard)

summary of notes

Here are some notes on how to do this, if you want to I can email a more detailed pdf

Starting from Luminis 3 (ok III.3.3) source code

1) update bbAnns.cpd
1a) introduce a reference to a DTD (for validating this file)
1b) introduce a typeName field
1c) move the description field to after the class field (otherwise the validation against the DTD will fail)
1d) also make sure that the defaultValue field and example field occur after the type field (in params)
 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE channelDef SYSTEM "dtd/channelPublishingDocument-1.0.dtd">
<channelDef>
  <typeName>Blackboard Announcements</typeName>
  <class>uk.ac.leeds.portal.channels.channel123blackboardAnnouncements.BlackboardB2AnnouncementsWSReader</class>
  <description>Reads announcements from a Blackboard system via the webservice
 and presents these to the user in a Portal channel.
  </description>
  
  <params>
    <step>
      <ID>1</ID>
      <name>Blackboard Webservice parameters</name>
      <description>Enter the base URL for the Web Service. The
 other 3 parameters should keep their default values.
      </description>
      <parameter modify="publish-only">
        <name>bbWSbaseURL</name>
        <label>bbWSbaseURL</label>
        <type base="string" input="text" display="text">
          <length>80</length>
          <maxlength>140</maxlength>
        </type>
        <example>https://aUrlRemoved/webapps/example/AnnouncementWebService/</example>
      </parameter>
      <parameter modify="publish-only">
        <name>bbWSp1dismiss</name>
        <label>bbWSp1dismiss</label>
        <type base="string" input="text" display="text">
          <length>80</length>
          <maxlength>100</maxlength>
        </type>
        <defaultValue>dismiss</defaultValue>
      </parameter>

2) create a new file alongside the bbAnns.cpd called bbAnns.properties
2a) bbAnns.properties must have two entries replicated from the bbAnns.cpd file

uk.ac.leeds.portal.channels.channel123blackboardAnnouncements.BlackboardB2AnnouncementsWSReader.channelDef.name=Blackboard Announcements
uk.ac.leeds.portal.channels.channel123blackboardAnnouncements.BlackboardB2AnnouncementsWSReader.channelDef.description=Reads announcements from a Blackboard system via the webservice and presents these to the user in a Portal channel.

3) for this example no changes were needed for META-INF/comp.xml, but this may not be true generally.

4) It is likely that the source code will also need updating for Luminis 4
NB use eclipse to get lots of error markers, go through and resolve these
4a) change over to use log4j (what you did that already in anticipation while on LP 3;-)
4b) change the references to libraries to use the Luminis 4 jars (not called the same name as LP3)
4c) cannot throw exceptions of type PortalException, as ChainedRuntimeException has moved package and .jar (sct-rt-2.0.0.0.jar instead of security-1_0_0_315.jar for com.sct.lang.ChainedRtE)
4d) change in method to get someone's login username

Anyway, that is probably sufficient to give any hints as to why this can be time consuming

Derek
University of Leeds, UK

Syndicate content