It is stored in the DB and from 3.2 on there is a foreign key constraint from the channel type table to the channel definition table. So what would need to happen is on portal startup iterate over all of the deployed portlet apps (this list is available from the Pluto SPI) and check each for a known directory (say META-INF/cpd/) and then call the channel definition import code for each type.

-Eric

On 3/2/11 8:58 PM, Steve Swinsburg wrote:
So is the registration done at startup, or is it imported and persisted 
somewhere? On the face of it, it sounds like it should be straightforward 
enough to get the CPDs from each webapp as you say. That would indeed be neat.

cheers,
Steve


On 03/03/2011, at 1:02 PM, Eric Dalquist wrote:

It has to be inside of uPortal. I'm not that familiar with the CPD registration 
code but it would be neat to extend uPortal to do something like check in the 
META-INF directory of every portlet webapp for .cpd files and auto-register 
them. I really don't know what would be involved with that on the uPortal side 
but you can get access to files in another context via:

servletContext.getContext("/PortletAppId").getResource("/META-INF/foo.cpd")

-Eric

On 3/2/11 4:51 PM, Steve Swinsburg wrote:
Hi,

I have a CPD for a portlet and up until now have been placing it into 
uportal-war/src/main/resources/org/jasig/portal/channels/ and then rebuilding 
the uPortal war. I then run a crn-import on a .channel-type I have that 
references the CPD. It is fine for the channel-type to be external to uportal 
as I have access to the crn-import Ant task.

For more details, see Step 1 here:
https://wiki.jasig.org/display/PLT/Basic+LTI+Portlet+-+Configuration+and+Installation

My question is do I need to have the CPD inside uPortal for it to be registered 
or is there a similar task I can run to get it registered? I'd like to keep it 
in my portlet if at all possible.

cheers,
Steve




Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to