EJB3 Web 客户端——NetBeans IDE和Sun应用服务器

第一步:创建Web应用
选择【File】à【New Project】,在弹出的界面中间部分选择【Web】,然后选择右边的【Web Application】。
在接下来的界面中输入工程的名字:helloWeb,选择【Next】进入下一个界面。
在该界面中,选择Web应用使用的框架,如果不选择,直接点击【Finish】。
第二步:导入用到的要访问的EJB的接口
过程与Application客户端中导入接口的过程相同:
选择【Source Packages】,点击右键,选择【New】à【Java Packges】,输入包名:session.hello,点击【Finish】。
把HelloSessionRemote.java拷贝到session.hello包中。
第三步:创建访问EJB的Servlet
创建存放Servlet的包,hello.servlet
在该包上点击右键,选择【New】à【Servlet】
之后弹出下面的界面:
输入类的名字HelloServlet,点击【Finish】,进入下面的配置界面。
可以采用默认设置,注意:Servlet的访问路径是/HelloServlet,之后点击【Finish】。之后会生成HelloServlet的代码,生成的代码如下:
/*
* HelloServlet.java
*
* Created on 2007年4月19日, 下午10:29
*/
package hello.servlet;
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
/**
*
* @author Administrator
* @version
*/
public class HelloServlet extends HttpServlet {
/** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
* @param request servlet request
* @param response servlet response
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
/* TODO output your page here
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet HelloServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet HelloServlet at " + request.getContextPath () + "</h1>");
out.println("</body>");
out.println("</html>");
*/
out.close();
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/** Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/** Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/** Returns a short description of the servlet.
*/
public String getServletInfo() {
return "Short description";
}
// </editor-fold>
}
对生成的代码进行修改
注入EJB,代码如下:
@EJB
private HelloSessionRemote hello;
需要导入EJB和HelloSessionRemote,代码如下:
import javax.ejb.EJB;
import session.hello.*;
编写测试代码,代码如下:
public void test(PrintWriter out){
out.println(hello.hello());
}
把processRequest方法中的代码:
/* TODO output your page here
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet HelloServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet HelloServlet at " + request.getContextPath () + "</h1>");
out.println("</body>");
out.println("</html>");
*/
替换成下面的代码:
test(out);
完整的代码如下:
/*
* HelloServlet.java
*
* Created on 2007年4月19日, 下午10:29
*/
package hello.servlet;
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.ejb.EJB;
import session.hello.*;
/**
*
* @author Administrator
* @version
*/
public class HelloServlet extends HttpServlet {
/** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
* @param request servlet request
* @param response servlet response
*/
@EJB
private HelloSessionRemote hello;
// 注意:只能注入实例变量(不能使用static变量)
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
test(out);
out.close();
}
public void test(PrintWriter out){
out.println(hello.hello());
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/** Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/** Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/** Returns a short description of the servlet.
*/
public String getServletInfo() {
return "Short description";
}
// </editor-fold>
}
部署Web应用
选择工程,点击右键,选择【Deploy Project】。
访问Web应用
地址:http://localhost:8080/helloWeb/HelloServlet
第三步:创建访问EJB的JSP
JSP的创建过程与Servlet的创建过程基本相同。使用向导创建一个JSP文件:hello.jsp。
参考代码如下:
<%@ page contentType="text/html"%>
<%@ page pageEncoding="gb2312"%>
<%@ page import="session.hello.*,javax.naming.*"%>
<%!
private HelloSessionRemote helloSession= null;
public void jspInit() {
try {
InitialContext ic = new InitialContext();
helloSession = (HelloSessionRemote)
ic.lookup(HelloSessionRemote.class.getName());
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
public void jspDestroy() {
helloSession = null;
}
%>
<html>
<head>
<title>Hello</title>
</head>
<body bgcolor="white">
<%
out.println("访问会话Bean得到的结果:"+helloSession.hello());
%>
</body>
</html>
简单EJB3.0实例(glassfish, NetBeans6.0) web的目标jar 博文链接:https://zerxd.iteye.com/blog/250674 立即下载

相关推荐

Android HCE模拟NFC标签:实现跨设备NDEF数据共享

本文详细介绍了Android HCE技术如何模拟NFC标签实现跨设备NDEF数据共享。通过核心代码实现和标准AID配置,使手机能够被第三方NFC应用直接读取,支持文本、网址、Wi-Fi配置等多种数据类型,大幅提升设备间数据交换的便捷性和兼容性。

pytorch8learner的博客 251

用NetBeans IDE 实现远程部署

 NetBeans IDE 5.5.1 目前集成了以下几种服务器 BEA Weblogic Server 9 Jboss Application Server Sun Java System Application Server Tomcat 5.0 或者Tomcat 5

李力的专栏 8116

cesium自定义指南针

项目需要一个指南针,用鼠标按住旋转指针,会让3d地图旋转,点击中心点重置方位。当然可以使用插件cesium-navigation-es6,但是样式不好修改,所以我自定义了一个指南针。

weixin_47017648的博客 750

使用NetBeans

Sun提供的NetBeans中文技术文档(http://gceclub.sun.com.cn/NetBeans/tutorials/)中有不少非常好的练习实例,你跟着做一遍非常有收获,下面给出几篇我觉得比较实用的文档的链接。NetBeans IDE 5.0 快速入门指南以下三篇是介绍开发JavaSE中的GUI界面的:NetBeans IDE 5.0 中的 GUI 构建教程-这个例子只讲

李小俊的专栏 1293

Vue3结合vue-office实现Word文档上传与预览全流程解析

本文详细解析了如何在Vue3项目中集成vue-office插件实现Word文档上传与预览功能。从项目初始化、插件安装到文件上传处理(包括ArrayBuffer转换)、预览优化及常见问题解决方案,提供了一套完整的实现流程,帮助开发者快速实现高效的文档预览功能。

weixin_29001327的博客 464

基础知识学习 -- qnx 系统

qnx os车载系统

求变,从思想开始 3877

Java IDE大比拼

Java是目前最流行的软件开发语言,其IDE环境也备受开发者关注,IDE可以极大的提高开发速度. 一、Intellij IDEA     这是一款非常优秀的商业Java IDE开发工具,非常适合做J2EE开发,当前最新版本为6.02。Idea有官方发布版已经集成了ANT、JS、Tomcat、WebLogic、CVS、SVN客户端、JSP/HTML/xml等插件,支持对JSP/HTML/JS/J...

不积跬步无以至千里 938

反激变压器设计学习笔记

反激变压器匝比感量设计

m0_55419117的博客 5263

JAVA技术知识点汇总——流行Java IDE工具

from ken_li http://blog.sina.com.cn/s/blog_722532880102v2ba.html Java是目前最流行的软件开发语言,其IDE环境也备受开发者关注,IDE可以极大的提高开发速度. 一、Intellij IDEA     这是一款非常优秀的商业Java IDE开发工具,非常适合做J2EE开发,当前最新版本为6.02。Idea有官方发布版已经集成了...

civvy999的专栏 509

uniapp 使用摄像头 live-pusher (APP)

uniapp 中开发 app 时使用live-pusher踩过的坑

随身笔记 1万+

《网络安全自学教程》- 802.1x协议

802.1x协议架构,工作原理/认证流程,认证方式,MAB认证,触发认证的三种方式,EAP报文格式,EAPOL报文格式

wangyuxiang946的博客 2万+

java webpack web项目_webpack能否在由jsp开发的系统中使用

1,JDK(JavaDevelopmentKit)Java开发工具集从初学者的角度来看,使用JDK开发Java程序可以快速理解程序中代码各部分之间的关​​系,这有利于理解Java的面向对象设计思想. JDK的另一个显着功能是通过Java(J2EE,J2SE和J2ME)版本的升级来进行升级. 但是它的缺点也很明显. 从事大型企业级Java应用程序开发非常困难,不能进行复杂的Java软件开发,也不利...

weixin_39957461的博客 255

HDMI接口及其在编程中的应用

在编程中,我们可以使用HDMI接口来控制和管理连接到计算机的HDMI设备。本文将介绍HDMI接口的基本原理以及如何在编程中使用HDMI接口。在编程中,我们可以使用HDMI接口来控制和管理连接到计算机的HDMI设备。本文介绍了HDMI接口的基本原理,并提供了使用Python编程语言和相关库实现HDMI接口应用的示例代码。我们可以使用编程语言提供的音频库来生成和播放音频,并将其通过HDMI接口输出到连接的设备上。我们可以使用编程语言提供的音频库来生成和播放音频,并将其通过HDMI接口输出到连接的设备上。

CodeByte的博客 804

NetBeans 8.0 连接远程服务器

step: ① 新建项目 -- PHP -- 来自远程服务器的 PHP 应用程序 -- 下一步   ② 名称和位置 项目名称:自己取; 源文件夹:通过 “浏览” 选择本地项目文件夹。注意文件夹内不能有 nbproject 文件夹。 下一步。   ③ 远程连接 项目 URL:可以通过该 URL 访问项目 远程连接:连接名称,可以在 ”管理“ 里面设置 上载目录:默认...

weixin_33694172的博客 633

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

如何在 NetBeans 中添加 Apache Tomcat 服务器

在本文中,我们将完成在 NetBeans IDE 10 中设置 Apache Tomcat 的过程。从菜单工具 -> 服务器,然后单击添加服务器按钮,显示以下消息: IDE 中未安装服务器插件 当尝试从工具 -> 插件安装插件时,没有一个插件适合。这是因为 NetBeans,因为版本 9 不正式支持 Java EE 或 Web 应用程序开发。如果没有额外的插件,您将无法通过项目向导创建 Web 项目,或添加 Tomcat(或其他服务器)。 原因是;NetBeans 已..

allway2的博客 4811

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Netbeans构建Web Service客户端和服务端

为什么80%的码农都做不了架构师?>>> ...

weixin_34273046的博客 644

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

JSP调用EJB

本专题我们讨论用JSP,Servlets,和JavaBean来构成一个系统的几种途径。下面有集中不同的结构。每一种都是从上一种发展过来的,下面的图表显示了发展过程的梗概。                  当Sun公司开始推广JSP的时候,很多人认为可以通过Web页面来请求的企业级结构将会取代Servlet。虽然JSP是J2EE规范的关键组成部分,它处理请求和应答机制。我们

WITNESS 3090

NetBeans IDE 之Tomcat服务器安装

前言  小编近期接触到了AJAX的学习项目,知道了它是一种不同于传统web应用模式的异步应用模式,是运用java语言进行编写的项目,所以需要进行一系列的准备工作,下面是第一步IDE环境的选择之NetBeans。NetBeans官网下载1.进入官网:  http://bits.netbeans.org/download/trunk/nightly/latest/2.下载图中所示的软件包安装并使用一、...

冯浩月 1万+

netbeans 项目服务器,在 NetBeans IDE 中使用团队开发服务器

要在 IDE 中利用团队开发服务器服务,您需要安装团队开发服务器插件,然后在 IDE 中注册团队开发服务器。默认情况下,在安装团队开发服务器插件时,将注册 java.net 团队开发服务器实例。要注册新的团队开发服务器实例,请执行以下步骤。选择 "Window"(窗口)> "Plugins"(插件)以打开插件管理器。在插件管理器中选择 "Available Plugins"(可用插件)标签,...

weixin_36459367的博客 561

NetBeans中引入外部服务器Tomcat

<br />其实是个非常简单的问题,我自己一直搞不明白,为什么Tomcat有那么多种,记得看视频的时候,是不安装的,可是自己下了一个是安装的,至于在NetBeans中引入的当然是不安装的,且是归档版的,在这里下:<br />http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.24/bin/下载反正就是个归档版的啦接着就在NetBeans中的服务中,添加服务器,服务器位置:就直接到Tomcat的位置 如:我的是:D:/apache-tomcat-6.0.24

zengshuqin的专栏 3390

一个完整的EJB Web应用(JPA示例)

转载自:http://blog.youkuaiyun.com/starshus/article/details/5892845 1.本文主要技术采用了Servlet + JSP + EJB 3.0 + JPA,开发环境用的是EclipseHelios + JDK 1.6 + JBOSS 5.1 + MySQL 5.1数据库。 2.        2. 示例场景:用户通过Web页面对Employe

zzy7075的专栏 8622
上一篇: EJB3 Application Client——NetBeans和SunJavaSystemApplicationServer
下一篇: Tomcat中连接池的配置和使用
Java_Web_Book
博客等级 码龄18年 8粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值