创建一个CMP的实体Bean出错

feifeirao 2005-01-14 02:11:42
public java.lang.String ejbCreate(java.lang.String identity) throws CreateException {
setIdentity(identity);
return null;
}
用Jboss创建一个CMP的实体Bean,配置没错,创建其他实体可以成功,就是这个出现下面错误:
ERROR [LogInterceptor] EJBException, causedBy:
javax.ejb.CreateException: Error checking if entity exists:java.sql.SQLException
: Syntax error or access violation, message from server: "You have an error in
your SQL syntax. Check the manual that corresponds to your MySQL server version
for the right syntax to use near 'order WHERE identity='kkkkkkkkkk'' at line 1"

语法出错???我并没有使用EJB QL,就只有简单ejbCreate函数
...全文
76 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
feifeirao 2005-01-14
  • 打赏
  • 举报
回复
public interface OrderHome extends javax.ejb.EJBLocalHome{
public Order create(String identity) throws CreateException;
public Order findByPrimaryKey(String identity) throws FinderException;
}

Home接口的代码。
findByPrimaryKey方法是是JB自动生成的,并没有写其他find方法.这样应该没错啊.
charlie0895 2005-01-14
  • 打赏
  • 举报
回复
在你的ejb里的ejb.find方法写错了吧,然后生成的代码也有错,就像你报错里for the right syntax to use near 'order WHERE identity='kkkkkkkkkk'' 说的!


* @ejb.finder
* query="SELECT OBJECT(a) FROM UserSchema a"
* signature="java.util.Collection findAll()"
*
feifeirao 2005-01-14
  • 打赏
  • 举报
回复
to:redex(cc)
如果是这样问题,那其他实体也不能能创建成功,是不是?我是刚学EJB,没有头绪。
redex 2005-01-14
  • 打赏
  • 举报
回复
Check the manual that corresponds to your MySQL server version,
是不是jdbc驱动的版本和mysql的版本不配套?
目录 序: 1 面向Internet的编程 1 Mary的加盟 2 The J2EE Tutorial 2 目录 3 第一部分 介绍 13 准备工作 13 谁应该使用这指南 13 关于例子 13 理解例子的准备工作 13 例子下载 13 如何编译并运行例子 13 相关信息 14 第1章 总 括 14 一.分布式得多层应用程序 14 J2EE组件 15 J2EE客户端 15 网络浏览器 15 小程序 15 应用客户端 15 JavaBean组件结构 15 网络组件 15 业务逻辑组件 16 二.J2EE容器 16 容器服务 16 三.打包J2EE组件 18 四.开发者角色 18 J2EE产品提供商 18 工具提供商 19 应用程序组件开发者 19 企业Bean开发者 19 Web组件开发者 19 J2EE应用程序客户端开发者 19 应用程序组装者 19 应用程序部署者和系统管理员 19 五.本书所用的软件 20 数据库访问 20 J2EE API 20 简化系统集成 20 工具 20 第2章 动手做一个EJB 22 一.准备工作 23 二.创建J2EE应用程序 24 三.创建企业Bean 24 编写企业Bean代码 24 编写Remote接口 24 编写Home接口 24 编写企业Bean类 25 编译源文件 26 打包企业Bean 26 四.创建J2EE应用程序客户端 27 编写J2EE应用程序客户端代码 27 查找Home接口 27 创建一个企业Bean实例 28 调用商业方法 28 打包J2EE应用程序客户端 29 指定应用程序客户端的企业Bean引用 30 五.创建Web客户端 30 编写Web客户端代码 30 编译Web客户端 32 打包Web客户端 32 指定Web客户端的企业Bean引用 32 六.设置企业Bean的JNDI名 32 七.部署J2EE应用程序 33 八.运行J2EE应用程序客户端 34 九.运行Web客户端 34 十.修改J2EE应用程序 35 修改类文件 35 添加文件 36 修改部署设置 36 十一 常见问题和解决方法 36 无法启动J2EE服务器 36 编译出错 37 部署出错 37 J2EE应用程序客户端运行时错误 38 Web客户端运行时错误 39 用检验工具检查问题 39 比较你的EAR文件和样本EAR文件 39 其它异常 39 第二部分 EJB技术 40 第3章 企业Bean 40 1,企业Bean概述 41 企业Bean的优点 41 何时需要使用企业Bean 41 企业Bean的分类 41 2,会话Bean 42 状态管理模式 42 何时需要会话Bean 42 3,EntityBean 43 EntityBean和会话Bean的不同之处 43 容器管理的持久性(CMP) 44 何时需要EntityBean 45 4,Message-Driven Bean 46 Message-DrivenBean的构造 46 与会话Bean、EntityBean的不同之处 46 何时需要Message-DrivenBean 47 5.定义客户端访问接口 47 远程访问 47 本地接口 48 Local接口和CMR(Container-Managed RelationShips) 49 两种访问方式的抉择 49 性能和访问方式 50 方法参数和访问方式 50 数据访问粒度 50 6,企业Bean的“内容” 51 7,企业Bean的命名约定 51 8,企业Bean的生存周期 52 有状态会话Bean的生命周期: 52 无状态会话Bean的生命周期 54 EntityBean的生命周期 54 Message-DrivenBean的生命周期 56 第4章 有状态会话Bean示例 57 1.购物车会话Bean CartEJB 57 会话Bean类 58 SessionBean接口 60 Home接口 62 Remote接口 63 辅助类 63 运行本例 63 二 其他的企业Bean特性 64 访问环境变量 65 企业Bean的比较 66 访问企业Bean的远程对象引用 67 第5章 BMP的例子 68 一.SavingsAccountEJB 68 实体Bean类(SavingsAccountBean) 69 EntityBean接口 69 ejbCreate方法 70 EjbPostCreate方法 71 ejbRemove方法 72 ejbLoad和ejbStore方法 72 查找方法(Finder) 73 商业方法 74 Home方法 76 数据库访问 77 Home接口 77 定义create方法 78 定义查找方法 78 定义Home方法 79 运行本例子 80 二.用deploytool部署BMP实现的实体Bean 80 三.为BMP映射表间关系 81 一对一关系 81 运行StorageBinApp应用程序 83 一对多关系 84 将子表实现为辅助类 84 运行OrderEJB应用程序 87 将子表实现为实体Bean 87 运行SalesRepEJB的例子 90 多对多关系 90 运行EnrollerEJB的例子 91 四.BMP的主键 92 主键类 92 实体Bean类中的主键 93 获取主键 94 五.异常处理 94 第6章 CMP的例子 96 一 RosterApp应用概述 97 二 layerEJB代码分析 97 实体Bean类 98 CMP和BMP实现实体Bean的代码比较 98 访问(get和set)方法 98 持久性字段的访问方法 99 关系字段的访问方法 99 select方法 99 商业方法 100 实体Bean方法 100 Local Home接口 101 Local接口 102 三.RosterApp配置说明 102 RosterApp应用程序配置 103 RosterClient客户端配置 104 RosterJAR的设置 104 TeamJAR配置 104 PlayerEJB 107 四 RosterApp中的方法调用 110 “新建”一个运动员 110 将运动员加入组 111 “删除”一个运动员 112 从组中开除运动员 112 获得一个组里的所有运动员 113 获取组成员的副本 114 根据位置查询运动员 116 查询运动员的运动项目 116 五 运行RosterApp应用程序 118 启动用到的软件 118 部署该应用程序 118 运行客户端 118 六 用deploytool工具部署CMP实现的实体Bean 118 指定企业Bean类型 118 选择持久性字段和抽象模式名 119 为查找方法和Select方法定义EJB QL查询 119 七 CMP的主键 119 主键类 119 实体Bean类中的主键 120 产生主键值 121 第7章 一个消息驱动Bean的例子 122 一.例子应用程序介绍 122 二.J2EE应用程序客户端 123 三.消息驱动Bean类 124 OnMessage方法 124 ejbCreate和ejbRemove方法 125 四.运行本例子 125 启动J2EE服务器 125 创建消息队列 125 部署该程序 125 运行客户端 125 五.用deploytool部署消息驱动Bean 126 指定Bean类型和事务管理机制 126 设置消息驱动Bean的特有属性 126 六.用deploytool配置JMS客户端 127 配置资源引用 127 配置资源环境引用 128 设置JNDI名 128 第8章 EJB查询语言 129 一.术语 129 二.简单语法 130 三.查询例子 130 简单查找方法的查询 130 跨越实体Bean关系查找方法的查询(关联查询) 131 其它条件查找方法的查询 132 Select方法的查询 133 四.全部语法 133 EJB QL语法的BNF定义 134 FROM子句 137 路径表达式 139 WHERE子句 141 BETWEEN表达式 143 IN表达式 143 LIKE表达式 143 SELECT子句 146 五.EJB QL的限制 147 第三部分 Web技术 148 第9章 网络客户端及组件 148 网络客户端的生命周期 148 网络应用结构 149 创建WAR文件 150 将WAR文件加入到EAR文件中 150 增加一个Web组件到WAR文件中 150 配置Web客户 151 应用级配置 151 WAR级的配置 151 组件及配置 151 部署网络客户 152 运行网络客户 152 更新网络客户 152 国际化网络客户 152 第10章 Java Servlet技术 153 什么是Servlet? 153 有关Servlets的例子 153 处理错误 155 处理servlet生命周期事件 156 指定事件监听类 157 处理错误 157 共享信息 157 使用域对象 157 控制共享资源的并发入口 158 访问数据库 159 初始化Servlet 160 编写Service方法 160 通过request取得信息 161 构造Responses 162 过滤请求及响应 163 编写Filter 163 编写自定义的请求与响应 165 指定filter映射 166 调用其它网络资源 167 响应中包含其它资源 167 转移控制到其它网络组件 168 访问Web Context 168 维持客户端状态 169 访问一个会话 169 将属性与会话绑定 169 与会话相关联的通知对象 170 会话管理 170 会话跟踪 170 结束servlet 171 跟踪服务请求 171 通知方法Shut Down 172 创建长时间运行的方法 173 第11章 JSP技术 175 什么是JSP页面 175 JSP页面的例子 176 JSP页面的生命周期 179 转换与编译 179 异常 179 初始化及结束一个JSP页面 180 生成静态内容 181 生成动态内容 181 在JSP中使用对象 181 隐式对象 181 特定应用程序对象 181 共享对象 182 JSP scripting 元素 182 声明 182 脚本(scriptlets) 183 表达式 184 在JSP页面中包含内容 185 转换控制到另一网络组件 185 参数元素 185 包含Java小程序(applet) 185 扩展JSP语言 187 第12章 JSP页面中的JavaBean组件 189 JavaBean组件设计约定 189 为什么要使用JavaBean组件 190 创建并使用JavaBean组件 190 设置JavaBean组件属性 190 返回JavaBean组件属性 191 第13章 在JSP页面中自定义标签 193 什么是自定义标签? 193 JSP页面的例子 193 使用标签 196 声明标签 196 标签种类 196 简单标签 196 带有属性的标签 196 带体的标签 197 在传递信息时选择属性还是体 197 定义脚本变量的标签 197 标签的相互协作 197 定义标签 198 标签处理器 198 标签库描述符 198 简单标签 200 标签属性 200 标签体 202 定义脚本变量的标签 203 与标签协作 205 例子 207 迭代标签 207 标签处理器 208 模板标签库 208 JSP页面 208 标签处理器是如何被调用的? 211 第14章 事务 213 一.什么是事务 213 二.容器管理事务 214 事务的属性 214 容器管理事务的回滚 217 同步会话Bean的实例变量 218 容器管理事务中不允许使用的方法 219 三.Bean管理事务 219 JDBC 事务 220 JTA 事务 221 非提交返回事务 222 在Bean管理事务中不允许使用的方法 222 四.企业Bean事务摘要 222 五.事务超时 222 六.隔离级别 223 七.更新多个数据库 223 八.Web 组件事务 225 第15章 安全 226 一.纵览 226 二.安全角色 227 声明和连接角色引用 227 映射角色到J2EE用户和组 228 三.Web层安全 228 保护Web资源 228 控制Web资源访问 229 Web资源访问的用户验证 229 使用编程安全机制 230 不受保护的Web资源 230 四.EJB层安全 230 声明方法许可 230 使用编程安全机制 231 不受保护的EJB层资源 231 五.应用程序客户端层安全 231 确定应用程序客户端的回调处理机制 232 六.EIS(Enterprise Information System)层安全 232 配置契约 232 容器管理的契约 232 组件管理的契约 233 配置资源适配器安全 233 七.传递安全身份 234 配置组件使用的传递安全身份 234 配置客户端验证机制 235 容器间的信任机制 235 八.J2EE用户、域和组 235 管理J2EE用户和组 236 九.安装服务器证书 236 第16章 资源连接 238 一.JNDI名和资源引用 238 在deploytool中配置资源引用 239 二.数据库连接 241 获得连接 241 用deploytool指定数据库用户名和密码 242 连接池 243 三.邮件服务连接 243 运行ConfirmerEJB例子 244 四.URL资源连接 245 运行HTMLReaderEJB例子 246 第17章 DUKE的银行应用程序 247 EJB 248 会话BEAN 248 实体BEAN 250 帮助类 251 数据库表 251 保护EJB 252 应用程序客户端 253 账号管理 254 类和他们之间的关系 254 Web客户端的生命循环 261 国际化 265 编译,打包,部署,运行应用程序: 266 启动j2ee 服务器,部署工具和数据库 268 给企业归档(archive)文件打包 269 打开企业归档文件 269
超级有影响力的Java面试题大全文档 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承:  继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装:  封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性:  多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗?  基本数据类型包括byte、int、char、long、float、double、boolean和short。  java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和 Integer 有什么区别  Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型 封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double  引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。 7、String 和StringBuffer的区别  JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用 StringBuffers来动态构造字符数据。 8、运行时异常与一般异常有何异同?  异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。 9、说出Servlet的生命周期,并说出Servlet和CGI的区别。  Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。 与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。 10、说出ArrayList,Vector, LinkedList的存储性能和特性  ArrayList 和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。 11、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。 EJB包括Ses

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧