Intellij + EJB搭建指南

综合编程 2018-01-04

最近学习EJB的基本使用,在搭建基本配置上遇下了不少坑。Google/Baidu搜索下的基本都是使用Eclipse + JBoss,使用Intellij的配置的也是使用JBoss7。因此记录下简单的配置过程,以供学习参考使用。

逻辑服务搭建:

back3.png

1. 所需文件

后端构建

1. 创建项目

由于wildfly使用war部署,创建普通的web项目即可。(创建时加上EJB也是可以的,在功能栏会有EJB管理模块)

创建项目

将EJB所需要的支持库加入(ProjectStructure->Library)

添加依赖

2. 编写SessionBean

项目结构

3. 启动配置

我们使用JBoss运行项目,将原有的Tomcat配置删除,选择创建JBoss Server / Local

创建JBossServer

此时我们需要将artifacts放置到JBoss上进行以部署。直接点击Fix即可

添加Artifacts

4. 运行

以下输出标记Bean的路径

java:global/Hello_war_exploded/HelloEJB!daoservice.HelloService
java:app/Hello_war_exploded/HelloEJB!daoservice.HelloService
java:module/HelloEJB!daoservice.HelloService
java:jboss/exported/Hello_war_exploded/HelloEJB!daoservice.HelloService
java:global/Hello_war_exploded/HelloEJB
java:app/Hello_war_exploded/HelloEJB
java:module/HelloEJB

控制台输出

在浏览器中输入 http://localhost:8080/ 可以看到wildfly界面

输入localhost:8080

此时JBoss即运行成功了

前端搭建

项目创建

前端使用Servlet + EJB,创建过程同上

创建

项目配置

JNDI Remote Client 需要 jboss-client.jar , 此jar包在{$WILDFLY_HOME}/bin/client下

jboss-client.jar

将上面的 javax.ejb-api-3.2.jar与jboss-client.jar添加到HelloUI的library中(要使用ProjectStructure加入库中或者右键:Add As Library)

Servlet编写

将Hello工程中的EJB接口拷贝至HelloUI工程。(最好包名不要修改)

jndiPath 编写: 运行JBoss后的输出中含有app:/----

参考 http://share.zhbor.com/article/18176.html

jndiPath = "ejb:" + 
                    appName + "/" + 
                    moduleName + "/" + /*服务器上.war包或.jar包的名字*/
                    distinctName + "/" +  
                    beanName + "!" + viewClassName + "?stateful" /*Bean Name*/

page10.png

EJB配置文件编写

在 src 文件夹下创建 jboss-ejb-client.properties

endpoint.name=client-endpoint
remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
remote.connections=default
remote.connection.default.host=localhost
remote.connection.default.port=8080
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
remote.connection.default.username=JBOSS账号
remote.connection.default.password=JBOSS密码

此处,port 是 8080, 如果是 JBoss7 则为4447

至于Jboss账号密码设置:

使用命令行进入wildfly 安装目录下的 bin 文件夹

执行 ./add-user.sh (Win下是.bat)

运行

注意:tomcat 默认端口也是8080,我将其改成了8888

结果

您可能感兴趣的

Maven Dependency for EJB 3.1 &lbrac... I followed some tutorials on EJB 3.1 and those were using the following dependency for EJB-API. org.jboss.spec.javax.ejb jboss-e...
The Business Value of JBoss Enterprise Application... The latest edition of the white paper titled “The Business Value of JBoss Enterprise Application Platform,” which summarizes the benefits and value th...
What Does the New JBoss EAP CD Release Stream Mean... A new release stream of Red Hat JBoss Enterprise Application Platform is now available: JBoss EAP continuous delivery (JBoss EAP CD). JBoss ...
The boot pot is not called I created a Java Web Application Project in NetBeans, and created a startup bean in it: package malibu.util;import javax.annotation.PostConstru...
jboss规则引擎KIE Drools 6.3.0-集群篇 DROOLS集群的原理 Drools集群是架设在jboss集群之上的 Drools集群其实是WorkBench(WB)间的集群 KIE SERVER是JSON服务,它是架设在WB上的,一个WB可以挂1个、多个KIE SERVER WB除了HTTP间的集群还需要...