专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » sessionbean:循速渐进学用Session Bean( 5) »正文

sessionbean:循速渐进学用Session Bean( 5)

来源: 发布时间:星期四, 2009年1月8日 浏览:29次 评论:0
  创建个实用Session Bean

  HelloWorldSession例子主要目是帮助你熟悉个session bean整体结构现在你已经熟悉了session bean结构你可以写个更实用bean了特别地你可以写个由数据库中接收数据bean

  以下例子假定你拥有个SQL表格里面包含有产品代码和价格你也可以使用以下SQL命令建立它:

create table price
(product_code varchar(10) not null primary key,
price decimal(10,2) not null)
  Pricing session bean可以列出全部有效产品代码并且可以返回某个产品代码价格该代码由Remote接口指定如6.9列表所示:

Listing 6.9 Source Code for Pricing.java
package usingj2ee.pricing;
import java.rmi.*;
import javax.ejb.*;
/** Defines the methods you can call _disibledevent="get_larger(this)" />

   ***********图6.10*******************

  客户并不知道session bean由数据库中得到数据

  注意

  可以使用以下命令为pricing数据库加入数据

  INSERT INTO price (product_code, price) VALUES ('A1', 1.59);

  问题解答

  配置问题

  Q:为什么配置工具不产生EAR或者JAR文件?

  A:在实现类中实现思路方法有可能违反了EJB限制或者要求许多配置工具都带有个选项可测试兼容性例如在J2EE SDK中这个选项被称为Verier;在WebLogic配置工具中它被称为Check Compliance而且对windows检查也可能包含有信息某些工具并不会直弹出窗口告诉你哪里错了你可以检查各种log文件它们放在J2EE SDK子目录logs中

  Q:为什么工具不产生客户JAR文件?

  A:除了Remote和Home接口类外可以不需要其它东西所以无需要工具创建JAR文件不过在大多数情况下客户端JAR文件是必需这是配置工具会产生些用作客户端开发实用类

  运行时问题

  Q:为什么我客户端不能定位JNDI naming服务?

  A:首先要确认你EJB服务器正在运行接着需要在命令行定义naming context factory 类查看你EJB服务器文档看你是否需要其它命令行选项还有确定bean是被配置了如果使用配置工具来配置bean然后重新启动服务器服务器可能已经忘掉了那个bean这时你可以尝试重新配置还有确认客户请求名字和你为bean配置JNDI名字是必须完全包括大小写



  Q:为什么在访问数据源时出现

  A:可能没有为你EJB服务器设置好数据源也可能是没有正确地设置关联即EJB使用逻辑名和JNDI目录使用真正数据源名



0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: