`
yourenyouyu2008
  • 浏览: 287618 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

seam 属性配置与installed="false"的冲突

    博客分类:
  • seam
阅读更多

问题

在测试和运行环境使用不同的事务配置,默认不需要指定事务(使用jta),测试时需要使用jpa 事务,这时就必须在components.xml中显示配置jpa事务,如果测试和运行时都使用同一components.xml,可以通过maven属性控制

transaction:entity-transaction组件的installed。

<transaction:entity-transaction entity-manager="#{entityManager}" installed="${entity-transaction.installed}"></transaction:entity-transaction>

 

在web-inf\components.xml中配置的组件即使installed="false",它里面的属性也会被使用。

如下配置指定了默认的seam事务(org.jboss.seam.transaction.Transaction类,不是。。EntityTransaction类),当创建Transaction类实例后会把entity-manager属性向实例中反射设置,这样会抛出Transaction类没有entityManager属性的异常。

<transaction:entity-transaction entity-manager="#{entityManager}" installed="false"></transaction:entity-transaction>

 

解决

生成两个不同环境的components.xml文件,一个中定义entity-transaction,一个中不定义,这样就不会把不可用组件的属性使用了。

<transaction:entity-transaction entity-manager="#{entityManager}" ></transaction:entity-transaction>

要解决如何指定使用哪个components.xml文件。

 

在src/main/下建立webapptest文件夹下面只建立WEB-INF/components.xml

 

<plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-war-plugin</artifactId>
                        <configuration>
                            <webResources>
                                <resource>
                                    <!-- this is relative to the pom.xml directory -->
                                    <directory>src/main/webapp</directory>
                                    <filtering>true</filtering>
                                    <includes>
                                        <include>**/web.xml</include>
                                        <include>**/footer.xhtml</include>
                                    </includes>
                                    <excludes>
                                        <exclude>**/*.scc</exclude>
                                    </excludes>
                                </resource>
                                <resource>
                                    <!-- this is relative to the pom.xml directory -->
                                    <directory>src/main/webapptest</directory>
                                    <filtering>true</filtering>
                                    <includes>
                                        <include>**/components.xml</include>
                                    </includes>
                                    <excludes>
                                        <exclude>**/*.scc</exclude>
                                    </excludes>
                                </resource>
                            </webResources>
                        </configuration>
                    </plugin>

 

分享到:
评论

相关推荐

    JSF项目中seam的配置

    在JSF项目中配置Seam,可以充分利用其优势,如组件管理、对话管理、事件处理等。 首先,配置Seam的关键在于以下几个方面: 1. **阶段监听器配置**:在`faces-config.xml`中添加`SeamPhaseListener`。这是Seam启动...

    JBOSS_SEAM配置

    JBOSS_SEAM配置

    seam_in_action

    本书主要讲解了 Seam 框架在 Java EE 3 环境中的应用与开发实践。接下来将根据书名、描述以及部分内容对该书籍涉及的主要知识点进行详细解析。 ### 一、Seam框架简介 #### 1.1 什么是Seam Seam 是一个开源的 Java ...

    Seam框架文档简述

    Seam提供了强大的参数绑定机制,使得表单数据可以直接映射到后端组件的方法或属性。这种方法大大简化了数据处理的过程,减少了手动编码的工作量。 ##### 4. 增强的会话管理 Seam引入了一种声明式的会话管理机制,...

    JBoss Seam 工作原理、seam和hibernate的范例、RESTFul的seam、seam-gen起步、seam组件、配置组件、jsf,jboss、标签、PDF、注解等等

    Seam - 语境相关的组件[满江红20071230]............................................................................................................................ 1 Java EE 框架...........................

    Configuring Seam and packaging Seam applications

    总之,配置Seam和打包Seam应用程序涉及理解Seam与各种技术(如JSF、Facelets、EJB、JPA)的集成,以及在不同Java EE环境中适当地打包和部署。通过详细阅读官方文档,开发者可以更深入地了解这些配置细节,以确保Seam...

    seam+richfaces环境框架配置文件

    seam+richfaces环境框架的配置文件,经过我多次尝试才配置好的环境配置文件,很有用,适合刚接触这些技术的初学者,希望大家支持!

    seam+spring+hibernate+richfaces配置

    2. **配置Seam**:在seam.properties文件中指定Hibernate配置,如数据源、实体扫描路径等。 3. **配置Spring**:创建Spring的bean配置文件,定义需要的bean,如DataSource、SessionFactory、TransactionManager等,...

    seam参考手册中文版

    - **Hibernate预订系统**: 通过结合Seam与Hibernate ORM框架,展示了如何处理持久化操作。 - **Blog示例**: 提供了一个RESTful风格的Seam应用案例,适用于现代Web应用开发。 - **JSF1.2 RI环境下运行Seam**: 介绍...

    jboss seam 学习资料,seam in action和官方手册

    2. **配置与部署**:介绍如何设置Seam项目,包括pom.xml、seam.properties和web.xml的配置。 3. **JSF集成指南**:深入理解Seam与JSF的交互,包括Facelets模板和Seam组件的使用。 4. **EJB和CDI集成**:讲解Seam如何...

    为Seam做好准备

    "为Seam做好准备"这个标题暗示我们即将探讨的是关于Seam框架的入门与准备工作。Seam是一个Java EE集成框架,它将JavaServer Faces(JSF)、Java Persistence API(JPA)、Enterprise JavaBeans(EJB)3.0以及其他...

    Jboss Seam中文版

    1. **通过属性设置配置组件**:说明了如何使用属性来调整组件的默认行为。 2. **后续内容预告**:预览了接下来章节中可能涵盖的更高级的主题和技术。 以上就是从给定的文件中提炼出的主要知识点。通过对这些内容的...

    Seam2.0GA 中文开发指南

    在Tomcat服务器上部署Seam应用的过程与在JBoss AS上类似,但是需要注意的是,由于Tomcat默认不支持EJB技术,因此可能需要额外配置或使用特定版本的Tomcat才能支持Seam应用。 **1.1.3 运行测试** 为了验证Seam应用...

    Seam security

    Seam Security以易于配置和使用为特点,允许开发者快速设置应用程序的安全性,并随着应用的成熟易于管理。 1. 安全原则:Seam Security围绕几个关键的安全原则构建,包括身份认证、身份管理和授权控制。身份认证是...

    JBOSS SEAM组件中文手册

    1. **JSF集成**: Seam与JSF的紧密结合,使得UI层的开发更为简便,通过Seam可以直接在JSF页面上操作后端数据。 2. **JPA集成**: Seam支持JPA,方便地处理数据库操作,包括实体管理和事务控制。 3. **EJB 3集成**: ...

    seam+hibernate注册例子

    - 选择项目属性,勾选"Generate web.xml deployment descriptor",并配置Seam库。在`Libraries`选项卡中,添加Seam和Hibernate的JAR文件,通常包括seam-x.x.x.jar, hibernate-core-x.x.x.jar等。 2. **配置...

    seam2 in tomcat lib

    然而,尽管Seam最初是为JBoss应用服务器设计的,但通过一些额外的配置,它也可以在轻量级的Tomcat服务器上运行,无需依赖完整的EJB容器。在“seam2 in tomcat lib”这个主题中,我们将探讨如何在不使用EJB的情况下,...

Global site tag (gtag.js) - Google Analytics