servicemix部署到websphere中,需注意的问题

servicemix部署到websphere中,需注意的问题

1:derby.jar包可能冲突,需删除项目中的该包

2MBean调用问题

   Websphere的MBean注册路径包括cell,nodeName和processName,具体可以铜鼓jconsole连接来查看MBean注册的全路径。这三个值可以通过Websphere的com.ibm.websphere.management.AdminServiceFactory这个对象来获取,spring中的配置如下:
<!-- 用于获取websphereMBean名称的cell,node,process -->

<bean id="adminService" class="com.ibm.websphere.management.AdminServiceFactory" factory-method="getAdminService"/>

<bean id="adminService.cellName" class="org.springframework.beans.factory.config.PropertyPathFactoryBean"/>

<bean id="adminService.nodeName" class="org.springframework.beans.factory.config.PropertyPathFactoryBean"/>

<bean id="adminService.processName" class="org.springframework.beans.factory.config.PropertyPathFactoryBean"/>

<bean id="websphereNamingStrategy" class="com.des.engine.mbean.WebsphereNamingStrategy">

<property name="cellName" ref="adminService.cellName"/>

<property name="nodeName" ref="adminService.nodeName"/>

<property name="processName" ref="adminService.processName"/>

</bean>

WebsphereNamingStrategy为自己创建的对象就包括那三个属性

3:安全问题

出现如下错误,Caused by: javax.management.JMRuntimeException: ADMN0022E: 由于凭证不足或凭证为空,无法对 org.apache.servicemix:Name=ServiceMgtImpl,cell=dvpbNode02Cell,Type=SystemService,ContainerName=ServiceMix,node=dvpbNode02,process=server1 MBean  retrieveServiceList 操作进行访问。

    该问题是因为设置了安全控制,把控制台的【安全性->安全管理、应用程序和基础结构】里面的所以安全配置都去掉,然后重新启动服务器主机(注意是重启主机,不然安全设置不起作用),再启动websphere服务应该就可以了,还有就是servicemix的应用要跟websphere一起启动,不要等websphere启动后再到控制台启动

你可能感兴趣的:(servicemix部署到websphere中,需注意的问题)