有一段时间没有弄 EJB 了,最近回过头来重新看,竟然遇到了一些以前没有遇到的问题,现记录下来以备不时只需。
问题是:在 JBoss 5.0 中部署 Entity Bean 时产生的,摘录了其中几处异常信息如下:
java.lang.reflect.InvocationTargetException
org.jboss.serial.exception.SerializationException
java.lang.InstantiationException
问题的出现与 persistence.xml 配置文件有关,这个问题是由 JBoss 的不同版本引起的。在 JBoss 4.3 或更低版本中,persistence.xml 可以这样写:
<?xml version="1.0" encoding="UTF-8"?>
<persistence>
<persistence-unit name="test">
<jta-data-source>java:/MySqlDS</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
</persistence>
但是在 JBoss 5.0 中,还需要配置 persistence 的属性信息,样例如下:
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="test">
<jta-data-source>java:/MySqlDS</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
</persistence>
-----------------------------------------------------
Stay Hungry, Stay Foolish!
Afa
July 29th, 2010
-----------------------------------------------------
分享到:
相关推荐
这些文件是关于企业JavaBean(EJB)3.0规范的法文版详细文档,包括“ejbcore”、“persistence”和“simplified”三个方面的内容。EJB是Java平台上的一个关键组件,用于构建可扩展且可靠的分布式企业级应用。让我们...
- **容器管理的实体Bean**:EJB 3.0支持无状态会话Bean、有状态会话Bean和消息驱动Bean,其中,实体Bean被重命名为“实体”(Entity),并引入了“管理实体”(Managed Entity)的概念,这使得EJB可以更好地处理...
这使得部署描述符文件(如ejb-jar.xml)的编写量大大减少,提高了开发效率。 **2. 容器管理的持久性(CMP)与实体Bean** EJB 3.0引入了新的实体bean模式,即CMP(Container-Managed Persistence)。通过使用`@Entity`...
1. 注解驱动:EJB3.0引入了诸如@Entity、@Table、@Id等注解,使得开发者可以在实体类上直接标注,声明数据模型和数据库表的关系,无需编写XML配置文件。 2. 自动化持久化:通过@PersistenceContext和@Persistence...
标题中的“ejb3-entitybean-maven-archetype”是一个基于Maven的EJB 3实体Bean项目模板,用于快速构建Java企业级应用程序。EJB(Enterprise JavaBeans)是Java EE平台的一部分,它提供了一种标准的方式来开发可复用...
6.1 实体 BEAN的组成文件PERSISTENCE.XML配置.36 6.2 JBOSS数据源的配置......36 6.2.1 MySql数据源的配置...........37 6.2.2 Ms Sql Server2000数据源的配置..37 6.3 实体 BEAN发布前的准备工作...38 6.4 单表映射...
JPA允许开发者通过注解或XML配置将Java对象映射到数据库表。 - **实体管理器(EntityManager)**:JPA的核心组件,负责处理对象的持久化操作,如查询、保存、删除等。 - **实体生命周期**:包括瞬时态、持久态、脱...
EJB 3.0引入了注解,大大减少了XML配置,使得开发更加简洁。同时,CMP的映射机制得到了改进,更加接近ORM(对象关系映射)框架,如Hibernate。 ### 学习资源 提供的"www.pudn.com.txt"可能包含了更多关于EJB 2.0的...
1. **注解驱动的开发**:与EJB 2.x相比,EJB 3.1大量使用了Java注解,使得开发者无需编写大量的XML配置文件即可声明组件的生命周期和行为。例如,`@Stateless`、`@Stateful`、`@Singleton`、`@MessageDriven`等注解...
其中,最重要的变化之一是对注解的支持,这使得开发者无需编写大量的XML配置文件,就能声明bean的行为和依赖关系。例如,`@Stateless`、`@Stateful`、`@Singleton`、`@MessageDriven`等注解用于定义不同类型的EJB...
1. **注解驱动**:EJB 3.0引入了注解,如`@Entity`, `@Stateless`, `@Stateful`, `@MessageDriven`, 以及`@PersistenceContext`等,使得开发者无需编写XML配置文件即可声明组件和持久化实体。 2. **POJO(Plain Old...
|-- META-INF |--persistence.xml EJB3的持久化配置文件 <br> |--DBScript |--employee.sql 数据库脚本及测试数据 |--mysql-connector-java-5.1.5-bin.jar MySql的驱动程序包 |--mysql-ds....
6.1 实体 BEAN的组成文件PERSISTENCE.XML配置.36 6.2 JBOSS数据源的配置......36 6.2.1 MySql数据源的配置...........37 6.2.2 Ms Sql Server2000数据源的配置..37 6.3 实体 BEAN发布前的准备工作...38 6.4 单表映射...
1. **持久化(Persistence)**: ejb-3_0-pfd-spec-persistence.pdf文件可能详细介绍了EJB 3.0中的JPA(Java Persistence API),这是对ORM(对象关系映射)的支持。JPA允许开发者用面向对象的方式处理数据库操作,...
EJB 3引入了JPA(Java Persistence API),使得实体Bean的定义和管理更加简单,不再需要编写大量的XML配置文件。通过使用@Entity注解,开发者可以直接将Java类声明为数据库中的实体,并使用@NamedQuery或@Query来...
- EJB 3.0引入了Java Persistence API(JPA),用注解替代XML配置,简化了实体bean的管理。 4. **消息驱动bean**: - 消息驱动bean是响应JMS(Java Message Service)消息的bean,通常用于异步处理任务,提高系统...
- 配置`web.xml`和`ejb-jar.xml`以确保正确部署。 6. **恢复开发环境** - 恢复JBoss、数据库和IDE的初始状态。 - 清理部署目录,重置数据库表结构。 7. **EJB3调试** - 设置断点进行调试。 - 使用日志记录关键...