# bb-mainfest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns="http://www.blackboard.com/bb-manifest-plugin"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.blackboard.com/bb-manifest-plugin http://fibbba.medu.com/xsd/bb-manifest-plugin.xsd">
<plugin>
<!-- 插件名 -->
<name value="plugin.name"/>
<!-- 插件ID -->
<handle value="starting-block"/>
<!-- 插件描述 -->
<description value="plugin.description"/>
<!-- 插件语言 -->
<default-locale value="en_US"/>
<!-- 插件版本 -->
<version value= "3300.0.1-rel.37+c07f12a"/>
<!-- 插件要求 -->
<requires>
<!-- Blackboard最低必须是3300.0.1 -->
<bbversion value="3300.0.1"/>
</requires>
<!-- 供应商/开发商 -->
<vendor>
<id value="bb"/>
<name value="Blackboard Inc."/>
<url value="http://www.blackboard.com/"/>
<description value="Blackboard Learn"/>
</vendor>
<!-- application-defs指的是应用出现位置,非必须项 -->
<application-defs>
<application handle="starting-block" is-course-tool="true" is-sys-tool="true" use-ssl="false" can-allow-guest="false" name="starting-block">
<links>
<!-- 课程工具 -->
<link>
<type value="course_tool"/>
<name value="课程工具"/>
<!-- 你自己项目里的URL,从哪里触发 -->
<url value="course_tool/init" />
<description value="课程工具Des" />
</link>
<link>
<type value="tool"/>
<name value="工具"/>
<!-- 你自己项目里的URL,从哪里触发 -->
<url value="tool/init" />
<description value="工具Des" />
</link>
<link>
<type value="user_tool" />
<name value="用户工具" />
<!-- 你自己项目里的URL,从哪里触发 -->
<url value="user_tool/init" />
<description value="用户工具Desc" />
<icons>
<listitem value="images/icon.gif" />
</icons>
</link>
</links>
</application>
</application-defs>
<!-- module-defs指的是是否启用模块,非必须项 -->
<module-defs>
<module-type ext-ref="starting-block-module" title="starting-block模块" uicreatable="true">
<!-- Blackboard会根据用户权限来调度用户看的页面 -->
<jsp-dir>views</jsp-dir>
<jsp>
<view>module1.jsp</view>
<admin>module2.jsp</admin>
<edit>module3.jsp</edit>
</jsp>
</module-type>
<module type="starting-block-module" isadmin="true" useraddable="true" isdeletable="true" title="starting-block模块">
<description>starting-block模块</description>
<ExtraInfo>
<property key="body.text" type="String">starting-block模块</property>
</ExtraInfo>
</module>
</module-defs>
<!-- extension-defs指的是是否启用扩展类,非必须项 -->
<extension-defs>
<!-- Blackboard提供了很多扩展接口point,这个就是一个自定义登录的实现方案 -->
<definition namespace="blackboard.platform">
<extension id="customAuthProvider"
point="blackboard.platform.authProviderHandler"
class="cn.com.blackboard.CustomAuthProvider"
singleton="true" />
</definition>
</extension-defs>
<!-- 插件所需要的权限,Blackboard在你部署时会检测出哪些权限需要单独申请 -->
<permissions>
<permission type="runtime" name="db.connection.*" actions=""/>
<permission type="java.io.FilePermission" name="&lt;&lt;ALL FILES&gt;&gt;" actions="read,write,delete"/>
<permission type="java.io.FilePermission" name="BB_CONTENT/-" actions="read,write,delete"/>
<permission type="runtime" name="plugin.install" actions=""/>
<permission type="runtime" name="report.install" actions=""/>
<permission type="runtime" name="setContextClassLoader" actions=""/>
<permission type="runtime" name="accessClassInPackage.*"/>
<permission type="runtime" name="accessDeclaredMembers"/>
<permission type="runtime" name="modifyThreadGroup"/>
<permission type="runtime" name="createClassLoader"/>
<permission type="persist" name="Plugin" actions="modify"/>
<permission type="persist" name="contenthandler" actions="modify"/>
<permission type="javax.management.MBeanPermission" name="*" actions="*"/>
<permission type="java.lang.reflect.ReflectPermission" name="suppressAccessChecks"/>
<permission type="java.net.SocketPermission" name="*" actions="connect,accept,resolve,listen"/>
<permission type="java.util.logging.LoggingPermission" name="control"/>
<permission type="java.util.PropertyPermission" name="*" actions="read,write"/>
<permission type="javax.security.auth.AuthPermission" name="doAsPrivileged"/>
<permission type="runtime" name="getProtectionDomain"/>
<permission type="runtime" name="*"/>
<permission type="persist" name="*" actions="*"/>
</permissions>
</plugin>
</manifest>
← 项目结构 BbServiceManager →