准备工作
到官网下载wildfy,解压缩即可。
创建EJB端模块
-
在已有的项目中新建模块(直接新建工程也可以),选择web application
和ejb(当时我只选择ejb,发现一直报错找不到war包,部署不上去,勾选了web application就可以部署了,还不知道啥原因) -
在src中新建包,我这里是xyz.wyy.order.service,里面新建接口和实现类。(暂时忽略其他包)
-
接口添加
@remote
注解,实现类添加@stateless
注解
-
选择
edit configrations
配置运行,部署到wildfly。在deployment
选项卡中,添加生成的war包。
-
如果要链接数据库,还需要添加mysql-connector.jar的依赖。
创建客户端模块
-
在已有的项目中新建模块 web application。
-
从解压缩的wildfly的
bin/client
中拷贝出jboss-client.jar
文件,复制到项目lib文件里(在src同级目录中新建lib文件夹),并右击jar包,点击add to classpath
。 -
点击
file
->Project Structure
,在artifacts中,client端的war包新建WEB-INF新建lib文件夹,将ejb的jar包添加进去(刚刚的ejb端已经下载好了,在右侧找ejb,双击就可以),如果jboss-client没有出现在lib里,也将jboss-client添加进去。 -
新建包xyz.wyy.order.service 将接口拷贝过来,注意这里包的名字必须一样才可以。只需要拷贝接口。
-
新建xyz.wyy.order.factory包,新建
EJBFactory.java
public class EJBFactory { private static Object getEJB(String path){ try{ Properties jndiProps = new Properties(); jndiProps.put(Context.URL_PKG_PREFIXES,"org.jboss.ejb.client.naming"); jndiProps.