创建web项目
导入EJB的jar包到web项目的WEB-INF\bin目录(接口和bean都需要)
在web项目默认的登录jsp上编写如下代码:
<%@ page language="java" import="java.util.*,javax.naming.*,com.manfred.ejb.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page. <br>
=====================================================<br>
以下是web方式本地访问EJB <br>
<%
final Hashtable jndiProperties = new Hashtable();
jndiProperties.put(Context.URL_PKG_PREFIXES,"org.jboss.ejb.client.naming");
Context context;
try {
context = new InitialContext(jndiProperties);
final String appName = "";
final String moduleName = "EJB_02_webproject";
final String distinctName = "";
final String beanName = "AddBean";
final String viewClassName = Add.class.getName();
String jndi = "java:module/" + beanName + "!" + viewClassName;
out.println(jndi);
out.println("<br>");
out.println("==============================");
Add add = (Add)context.lookup(jndi);
int num = add.addTwoInt(9, 10);
out.println(num);
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>