如何从apache servlet调用jboss ejb?

时间:2015-10-23 21:43:53

标签: apache jboss ejb-3.0

我想从一个部署在Apache服务器上的servlet中调用存在于JBoss服务器中的Ejb。我可以这样做,如果可以,我该怎么做?

1 个答案:

答案 0 :(得分:0)

让我们假设您的EJB看起来像这样:

package jboss.as;

import javax.ejb.Stateless;

@Stateless
public class MyEjb {

    public long currentMillis() {
        return System.currentTimeMillis();
    }
}

在JSP中,您现在可以进行JNDI查找并检索对它的引用:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ page import="javax.naming.InitialContext" import="javax.naming.NamingException" import="jboss.as.MyEjb" %>
<html>
<body>
<%
try {
            InitialContext initialContext = new InitialContext();
            MyEjb myEjb = (MyEjb)initialContext.lookup("java:module/MyEjb");
            out.println(myEjb.currentMillis());
        } catch (NamingException e) {
            //TODO
        }
%>
</body>
</html>