您的位置:程序门 -> java -> 架构、设计



spring的simpleremotestatelesssessionproxyfactorybean是不是不支持ejb3.0?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


spring的simpleremotestatelesssessionproxyfactorybean是不是不支持ejb3.0?[已结贴,结贴人:myth_2002]
发表于:2008-01-11 13:26:21 楼主
spring   配置文件
xml code
<?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="propertyconfigurer" class="org.springframework.beans.factory.config.propertyplaceholderconfigurer"> <property name="location"> <value>web-inf/classes/jndi.properties</value> </property> </bean> <bean id="jnditemplate" class="org.springframework.jndi.jnditemplate"> <property name="environment"> <props> <prop key="java.naming.provider.url"> ${java.naming.provider.url} </prop> <prop key="java.naming.factory.initial"> ${java.naming.factory.initial} </prop> <prop key="java.naming.factory.url.pkgs"> ${java.naming.factory.url.pkgs} </prop> </props> </property> </bean> <bean id="remotedao" class="org.springframework.ejb.access.simpleremotestatelesssessionproxyfactorybean"> <property name="jnditemplate"> <ref local="jnditemplate"/> </property> <property name="jndiname" value="commondaoimpl/remote" /> <property name="businessinterface" value="com.book.business.commondao" /> </bean> </beans>

出现的错误是:ejb   home   [jboss.j2ee:jar=bookstore.jar,name=commondaoimpl,service=ejb3]   has   no   no-arg   create()   method
google上搜索的结果是,simpleremotestatelesssessionproxyfactorybean要加入一个“expectedtype”的属性。
xml code
<bean id="direccionesservice" class="org.springframework.ejb.access.simpleremote statelesssessionproxyfactorybean"> <property name="jndiname" value="cl.sii.sdi.ejemplo.service.direccionesservi ce" /> <property name="businessinterface" value="cl.sii.sdi.ejemplo.service.direccionesservi ce" /> <property name="expectedtype" value="cl.sii.sdi.ejemplo.ejb.rf.direccionesrfhome " /> <property name="jnditemplate"> <ref bean="jnditemplate" /> </property> </bean>

这个属性看起来是ejb   slsb的home接口,但是在ejb3.0里,已经没有了home接口了。不知道那位大哥对这个比较了解,如何解决呢?
发表于:2008-01-11 16:55:141楼 得分:0
不是吧,挂一下午都没理,好惨啊。。
发表于:2008-01-14 11:11:452楼 得分:50
spring2.*提供了一个访问ejb的方法,即

“org.springframework.ejb.access.localstatelesssessionproxyfactorybean”和

“org.springframework.ejb.access.simpleremotestatelesssessionproxyfactorybean”

两个factorybean,一个用来访问本地的,一个用来访问远程的无状态sessionbean。但是这两个factorybean

只能针对ejb2.0的无状态sessionbean,所以在配置是必须提供sessionbean的home接口。而在ejb3.0中已经没有了home接口(或者说被隐藏起来了)。为了访问ejb3.0的无状态session   bean就只好自己写一个了
发表于:2008-01-14 11:14:193楼 得分:0
原来是这样啊,那要怎么写呢?
发表于:2008-01-14 11:15:274楼 得分:0
可以参考   http://jamsa.javaeye.com/blog/31100
发表于:2008-01-14 11:16:235楼 得分:0
多谢楼上,给分给分


快速检索

最新资讯
热门点击