OSworkflow,spring1.27,hibernate3集成-4.测试

原创 2006年06月03日 10:24:00
新建一个工程,然后将生成的osworkflow-3.0-dev.jar及其它所必需的jar文件、spring配置文件置入构建路径中。
在上面spring中的工作流定义是从数据库中读取,但是编程去构建一个工作流定义是相当麻烦的事情,这里打算首先从designer中生成定义文件然后读取工作流定义持久到数据库中。这里为了从xml文件中读取工作流的定义,需要osworkflow.xml,内容如下:

<osworkflow>
    <persistence class="com.opensymphony.workflow.spi.memory.MemoryWorkflowStore"/>
    <factory class="com.opensymphony.workflow.loader.XMLWorkflowFactory" />
</osworkflow>
 
另外还需要workflows.xml,内容如下:

<workflows>
    <workflow name="example" type="resource" location="example.xml"/>
</workflows>
 
这两个文件并不是一定需要的,因为osworkflow.xml其中的内容已经在spring配置文件中定义了,这里只是为了方便测试,现在考虑是否可以改写designer,直接将工作流的定义导出到数据库中。
 
另外将osworkflow项目下的src/test/sample/example.xml工作流定义文件拷贝到类路径中,这是要测试的工作流定义文件。
 
完成后的测试项目结构如下:

               project

 
新建一个测试用例,代码如下:

protected Session session;
private Transaction tx;
public ApplicationContext ctx;
 
protected void setUp() throws Exception {       
    super.setUp();       
    ctx = new FileSystemXmlApplicationContext("/src/conf/application-context.xml");
    session=((SessionFactory)ctx.getBean("sessionFactory")).openSession();       
    System.out.println("begin..........");       
}
 
public void testOswf() throws
            MalformedURLException,
            InvalidActionException,
            InvalidRoleException,
            InvalidInputException,
            InvalidEntryStateException,
            WorkflowException
{
    //从xml中读取工作流定义
    Workflow wf =new BasicWorkflow("test");
    Workflow wf1 = (Workflow)ctx.getBean("workflow");
    Configuration cf = new DefaultConfiguration();
    wf.setConfiguration(cf);
    //wf.initialize("example",100,null);
   
   
    SpringHibernateWorkflowFactory sf = (SpringHibernateWorkflowFactory)ctx.getBean("workflowFactory");
    //将名称为"example"的工作流持久化到数据库中
    sf.saveWorkflow("example",wf.getWorkflowDescriptor("example"),true);
    //从数据库中取出名称为"example"的工作流定义
    WorkflowDescriptor wfd = wf1.getWorkflowDescriptor("example");
   
    wf1.initialize("example",100,null);
    //更多的测试...     
}
 
protected void tearDown() throws Exception {
    super.tearDown();
    try
    {
        tx.commit();
       
    }
    catch(Exception e)
    {
      
    }
    finally
    {           
        session.close();
        System.out.println("end..............");
    }
}
 
如果没有什么问题的话在数据库中会生成对应得表,并且在其中出入数据。

Spring4 整合 Hibernate3 基本使用(通过注入 SessionFactory)

Spring4 整合 Hibernate3 基本使用(通过注入 SessionFactory)Spring4 整合 Hibernate3 基本使用通过注入 SessionFactory 步骤 1 导入...
  • lw_power
  • lw_power
  • 2016年05月06日 10:14
  • 5131

j2ee常用工作流比较(shart、osworkflow、jbpm)

工作流引擎   Shark(EnhydraShark) Osworkflow opensymphony Jbpm(JBoss JBPM) 工作流描述语言...
  • shadowkiss
  • shadowkiss
  • 2013年05月07日 15:14
  • 2204

单元测试、集成测试、系统测试、验收测试、黑盒测试、白盒测试区别与联系

对于开发人员来说,往往对各种测试方法感到疑惑。特别是在整合代码的时候,我们就能深刻感觉受到测试的重要性。很多开发人员只注重写代码,轻视测试的重要性。总是代码一写完提交然后就交给测试组测试了,没多久测试...
  • S04103037
  • S04103037
  • 2013年09月14日 09:20
  • 4913

spring3.0+struts2+hibernate3整个环境的搭建和基于junit4的spring测试框架,最新技术的ssh框架

spring3.0+struts2+hibernate3整个环境的搭建和基于junit4的spring测试框架 第一步:spring的...
  • u012274624
  • u012274624
  • 2013年12月18日 08:54
  • 995

Struts2+Spring2+Hibernate3 集成示例

  • 2010年12月23日 10:43
  • 1.17MB
  • 下载

Spring2+Struts1_2+Hibernate3_0集成时的配置

  • 2009年02月06日 21:12
  • 334KB
  • 下载

struts2+spring3+hibernate3 集成并实现登录

  • 2014年03月30日 20:08
  • 12.49MB
  • 下载

Spring3集成Hibernate3(Livon)

  • 2013年04月24日 10:57
  • 9.51MB
  • 下载

Spring对ORM的支持之集成Hibernate3

1  集成Hibernate3 Hibernate是全自动的ORM框架,能自动为对象生成相应SQL并透明的持久化对象到数据库。 Spring2.5+ 版本支持Hibernate 3.1+ ...
  • hj7jay
  • hj7jay
  • 2016年05月11日 10:50
  • 4681

spring集成hibernate3

8.2.1  如何集成        Spring通过使用如下Bean进行集成Hibernate: LocalSessionFactoryBean :用于支持XML映射定义读取:          ...
  • Erica_1230
  • Erica_1230
  • 2015年05月03日 18:25
  • 294
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OSworkflow,spring1.27,hibernate3集成-4.测试
举报原因:
原因补充:

(最多只允许输入30个字)