Intellij IDEA新建一个EJB工程(二)

时间:2022-02-02 20:06:08

从博文:http://www.cnblogs.com/yangyquin/p/5328344.html 中可以知道如何利用Intellij IDEA建立一个EJB Module,还有新建一个测试Module。

但是我发现新建的EJB项目可以优化一下,在EJB Module里面建立一个JSP文件,用来调用EJB项目。
 
1、在Intellij IDEA新建一个EJB工程(一)中新建的EJB项目是包含web应用的,所以先优化一下项目结构,
主要将META-INF统一到web目录下,而lib文件夹放在WEB-INF目录下。
Intellij IDEA新建一个EJB工程(二)
 
2、在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 = 4447
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
remote.connection.default.username=yang
remote.connection.default.password=123456

 

3、修改index.jsp文件:

<%--
  Created by IntelliJ IDEA.
  User: gao
  Date: 16-3-28
  Time: 下午4:22
  To change this template use File | Settings | File Templates.
<%@ page contentType="text/html;charset=UTF-8" language="java" %>--%>
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@page import="javax.naming.InitialContext"%>
<%@page import="com.ejb.HelloWorld"%>
<%@page import="javax.naming.NamingException"%>
<%@ page import="java.util.Hashtable" %>
<%@ page import="javax.naming.Context" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
    <title>测试页</title>
</head>
<body>
         Hello World!!!!!
<%
    final String appName = "";
    final String moduleName = "EJBTest_war_exploded";
    final String distinctName = "";
    final String beanName = "HelloWorldEJB";
    final String viewClassName = HelloWorld.class.getName();
    final String namespace = "ejb:" + appName + "/" + moduleName
            + "/" + distinctName + "/" + beanName + "!" + viewClassName;
    System.out.println(namespace);
    try {
        final Hashtable jndiProperties = new Hashtable();
        jndiProperties.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
        final Context context = new InitialContext(jndiProperties);
        HelloWorld helloWorld = (HelloWorld) context.lookup(namespace);
        System.out.println(helloWorld);
        String s = helloWorld.sayHello("yangyuqin");
        System.out.println(s);
    }catch (NamingException e) {
        e.printStackTrace();
    }
%>
</body>
</html>

 

 

4、使用JBoss运行EJBTest项目即可。

Intellij IDEA新建一个EJB工程(二)

 

5、运行结果:
Intellij IDEA新建一个EJB工程(二)
 
浏览器页面:
Intellij IDEA新建一个EJB工程(二)