jboss,weblogic ejb3笔记

jboss 数据源配置

拷贝%jboss_root%/docs/examples/jca目录下对应的数据库模板文件如mysql-ds.xml到 %jboss_root%server/default/deploy目录下。

修改mysql-ds.xml内容? <jndi-name>poc</jndi-name>

注意jndi名字不能有冒号(:)

在persistence.xml中,需要配置 <jta-data-source>java:/poc </jta-data-source>

如果需要去掉java前缀,以保证不同服务器之间的可移植,在mysql-ds.xml

<use-java-context>false</ use-java-context>

具体参考jboss数据源配置wiki

http://wiki.jboss.org/wiki/ConfigDataSources

查看jndi:

http://localhost:8080/jmx-console/HtmlAdaptor?action=inspectMBean&name=jboss:service%3DJNDIView

invoke相应方法

?

?

weblogic 10.3 数据源配置用控制台向导next就ok,假定数据源jndi名字也是poc

?在persistence.xml中,需要配置, <jta-data-source>poc </jta-data-source>

查看jndi:

http://localhost:7001/console/consolejndi.portal?_nfpb=true&_pageLabel=JNDIHomePage&server=examplesServer

?

WebSphere下查看jndi

执行bin/dumpNameSpace脚本

?

关于TimerService

JBoss的TimerService实现采用数据库来保存timer信息。

默认采用hypersonic的数据库,非xa的datasource

如果应用采用非xa的数据库驱动的话,比如说mysql,这样ts是没有办法把两个非xa的datasource纳入一个事务管理中的。

虽然我们可一通过配置 jbossjta-properties.xml中的 com.arjuna.ats.jta.allowMultipleLastResources 为true来允许加入两个非xa的datasource,但是这样会导致数据不一致。

?

可以修改timer默认使用的datasource和应用的datasource一致。

修改ejb3-timer-service.xml中的<depends optional-attribute-name="DataSource">jboss.jca:service=DataSourceBinding,name=DefaultDS</depends>

<depends optional-attribute-name="DataSource">jboss.jca:service=DataSourceBinding,name=poc</depends>

即可,4.2.3版本的该项配置在ejb3-deployer.xml中。

?

当然也可以采用支持xa的mysql driver。

参考

http://shrubbery.mynetgear.net/wiki/Upgrading_to_JBoss_4.2_from_4.0

?

EJB的jndi名字

在jboss下,ejb单独部署和在一个ear中部署,其默认的jndi是不一样的。

单独的jar : EJB类名/remote(local)

在ear中:ear名字/EJB类名/remote(local)

参考

http://trailblazer.demo.jboss.com/EJB3Trail/serviceobjects/slsb/index.html

?

?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值