Transcript Portal Modules and Module Types
Blackboard Building Blocks
Portal Modules and Module Types
Tom Joyce, Product Manager, Product Development Friday, April 24, 2020
Road Map What are Portals?
Module Types Creating Modules API
What are Portals?
Portal = Entry point Customizable for the user Can unite several sources of information and present them in one central place Sites can customize the Portal for a specific type of user or market Good portals are “sticky”
Example of a “sticky” Portal
Blackboard Portal Components Tab Layout Contents Module Module Edit Minimize Delete
Module Types Code for the Module Every Module has an associated Type One or more JSP pages
Pre Built Module Types Include HTML Include URL RSS Channel
Module Type JSP Pages View – What gets displayed when the module is rendered Admin – Edit Global properties Edit – User customizable properties
View Rendered Inline No HTML Header or Body Tags
Edit Calls the edit page
Edit
Admin Admin Page for Global Configuration
Admin
Creating Module Types JSP is easiest Tags Provided for Edit and Admin Pages – modulePersonalizationPage – modulePersonalizationReceipt – moduleAdminPage – ModuleAdminReceipt
Portal API Java Class: CustomData In package blackboard.portal.external
Javadoc available in SDK
Portal API To get the CustomData for a module, use getModuleData(context) CustomData data = CustomData.getModuleData(pageContext); String text = data.getValue(“body.lunchMenu”); String text = data.getValue(“body.type”);
Portal API Can also save module global properties CustomData data = CustomData.getModuleData(pageContext); String text = data.setValue(“body.lunchMenu”, “Roast Turkey”); String text = data.setValue(“body.type”,”Entrée”); data.save();
Portal API Similar Methods exist to set user specific data CustomData data = CustomData.getModulePersonalizationData(pageContext ); String text = data.setValue(“userpref.display”, “ALL”); data.save();
Packaging the Module Type Put it in a System Extension Package JSPs in /module directory
Creating a Module Can specify a module type already in the system or in the same installation package Many modules can be created using the Bb supplied types Could leverage types that become available in the community Entries in bb-manifest.xml file: – module – channel
Creating a Module Module is packaged a standard Integration Agent Package bb-manifest.xml
– module – channel
Specifying a Module Module Manifest Entry:
Specifying a Module Channel Manifest Entry (Module Def):
Specifying a Module Channel Manifest Entry (Channel Def):
Specifying a Module Can also optionally specify Portal Roles
Demonstration!
Thank You