在EOS项目中禁用BPS服务

在安装EOS Platform的时候,会有选择插件的界面,包括bps、cap、mobile(7.3提供)、sso。当选择的bps之后,在EOS的default包(应该称为基础包)中,将包含BPS的内容。EOS导出EAR包的原理是,将新建的EOS项目中的内容添加到default包中,然后将default整体导出为EAR包。在某些使用EOS项目中没有用到BPS,并且不需要BPS引擎启动,需要通过修改配置,禁用BPS服务。

1 直捣黄龙 – 修改EAR包

导出的EAR包中,包含了所有的内容,所以想要禁用BPS服务,可以直接修改EAR包。

设项目名称为project,导出的EAR包为project.ear。

在project.ear/project.war/WEB-INF/_srv/work/system/com.primeton.workflow.core/META-INF中,handler-contribution.xml文件中配置了BPS服务启动的功能:

==”com.primeton.workflow.message.startup.WFStartUpListenerMessage”/></handlers>

删除或注销所有的handler配配置,下面的内容即可:

<handlers></handlers>

这样在启动部署EAR的时候,不会启动BPS服务了。

2 釜底抽薪 – 修改default包

每次修改EAR包实在太麻烦,干脆直接把default包中关于BPS服务的内容删除得了。

设EOS Platform的安装目录为EOS_HOME,需要修改的文件在:%EOS_HOME%\ide\eclipse\dropins\PLATFORM_7.2.0.0\plugins\com.primeton.studio.ear.core_7.1.0.0\template\ear\default\war\WEB-INF_srv\work\system\com.primeton.workflow.core\META-INF。

与第一步中相同,修改handler-contribution.xml,将所有的handler删除或注销。因为这里是default包,建议采用注销:

<handlers><!–<handler handle-class=”com.primeton.workflow.api.listener.WFStartUpListener”/><handler handle-class=”com.primeton.workflow.message.startup.WFStartUpListenerMessage”/>–></handlers>3 斩草除根 – 清理

通过上面两种方式后,可以在EOS项目部署的过程中禁用BPS服务,但是EOS项目中还是包含了BPS的其他内容,并且导出的EAR包中存在其他内容,虽然现在硬盘不值钱,但是作为有洁癖的程序员,绝对不希望这样。那就手动清理EOS项目及EAR包。

3.1 清理构建库

在EOS项目上右键,点击属性,选择Java 构建路径,选择选项卡库,删除BPS Libraries、CAP程序全量库。

3.2 清理配置文件

在EOS项目的系统配置文件夹中,保存了系统级的配置文件,需要清理一些BPS相关的配置文件,包括:log4j-wf.xml、wfengine-config.xml、wfsys-config.xml三个配置文件。

3.3 清理BPS配置内容

在第2步中已经删除了BPS相关配置文件,但是在公共的配置文件中,还存在BPS相关的内容需要清理。

3.3.1 log4j-trace.xml

在log4j-trace.xml中存在bps日志打印配置,全部删除:

============”CONSOLE”/></logger>3.3.2 user-config.xml3.3.2.1 登录过滤

在user-config.xml中需要修改(修改也算是清理的一种吧)的是关于登录过滤器的内容:

<group name=”Login-Filter”><!– pages that can be accessed by any one including those not login –><configValue key=,**/org,**/org,**/org</configValue><configValue key=”Include”>*.flow,*.flowx,*.jsp,*.html,*.ajax,*.ext,*.action,*.beanx</configValue><!– the page to display when user not login –><configValue key=”LoginPage”>/coframe/auth/login/login.jsp</configValue></group>

修改为:

===”LoginPage”>/index.jsp</configValue></group>3.3.2.2 SSO及CAP

需要删除关于SSO和CAP所需数据源的相关配置:

=====”passwordEncoder”>com.primeton.cap.sso.encrypt.MD5PasswordEncoder>=></module>3.3.2.3 门户(Portal)模式

因为上面删除了SSO登录,在登录过滤中设置*.jsp的文件需要登录,所以这里暂时将项目修改为门户(Portal)模式:

=”Portal”>false</configValue></group>

修改为:

=”Portal”>true</configValue></group>3.4 删除工作流相关文件

生成的EOS项目中,默认生成工作流相关的web内容和bps配置文件夹,直接删除。

3.5 清理EAR包 – 慎用

最后就是清理EAR包中的内容了,因为我这里是一个空项目,可以很清楚的看到那些是默认的内容,如果是在正式项目中,可能就不是很明显了,所以需要不要轻易走这步。

除了自己创建的文件夹、common、css、WEB-INF之外,其他的全部可以删除,因为删除内容过多,所以需要谨慎。

4 总结

通过上面几步,可以禁用BPS服务,并一定程度的清理EAR包中的内容,但是不负责任的说,并不能完全清理,就像Windows系统,即使再高级的垃圾清理软件,也不能把所有垃圾清理干净。

所以需要在创建项目前,规划好是否真的不需要BPS服务,如果是,那就废点功夫,重新安装一个干净的EOS Platform,这样导出的EAR包绝对是干净的。

5 补充我只愿,在你的理想和希望里能为你增加一点鼓励,

在EOS项目中禁用BPS服务

相关文章:

你感兴趣的文章:

标签云: