`
chourentang
  • 浏览: 57524 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

jbpm中java.lang.NoSuchFieldError: STRING 错误的解决

阅读更多
在使用jbpm3.2整合ssh时遇到了
java.lang.NoSuchFieldError: STRING at org.jbpm.identity.hibernate.PermissionUserType.错误。经过不懈努力,终于解决了。
参考文章:https://community.jboss.org/thread/159874

问题原因:jbpm3.2引用了过期的方法

问题解决:参考文章中给出的解决方法是修改jbpm-identity.jar并重新打包为jar文件替换原有的jbpm-identity.jar.
但是我在打包出现了错误,于是我采用的方法是将重新编译的class文件替换原有的class文件:
1.在北风oa项目中建立一个org.jbpm.identity.hibernate包将jbpm-jpdl-3.2.3\src\identity\org\jbpm\identity\hibernate包中的代码复制到其中
2.修改IdentitySessionFactory.java和PermissionUserType.java类
  1)将org/jbpm/identity/hibernate/IdentitySessionFactory中
javaevictCachedIdentities()方法里面的evict 全改为getCache().evictEntityRegion(有3处)
  public void evictCachedIdentities() {
    sessionFactory.getCache().evictEntityRegion(User.class);
    sessionFactory.getCache().evictEntityRegion(Membership.class);
    sessionFactory.getCache().evictEntityRegion(Group.class);
  }

   2)在org/jbpm/identity/hibernate/PermissionUserType.java中将Hibernate.STRING改为StandardBasicTypes.STRING(有3处)
  private static final Type[] PROPERTY_TYPES = new Type[]{StandardBasicTypes.STRING, 
	  StandardBasicTypes.STRING, StandardBasicTypes.STRING};
  public Type[] getPropertyTypes() {
    return PROPERTY_TYPES;
  }

3.将北风oa项目导出为jar文件,将其中的IdentitySessionFactory.class和PermissionUserType.class替换原jbpm-identity.jar中相同名字的文件
4.将修改后的的jbpm-identity.jar替换项目中的jbpm-identity.jar
重新运行项目便不会在出现错误。
如果需要修改后的jbpm-identity.jar后面我上传了,需要的话请下载。


分享到:
评论

相关推荐

    java.lang.NoSuchFieldError: STRING

    解决 java.lang.NoSuchFieldError: STRING at org.jbpm.identity.hibernate.PermissionUserType. 不用jbpm的jbpm-identity.jar 用这个就好

    jbpm jbpm4.3.jar

    jbpm jbpm4.3.jar DDDDDDDD

    jbpm-4.4.zip part03

    【jbpm-4.4.zip part03】这个压缩文件是关于jbpm 4.4版本的组成部分,jbpm(Java Business Process Management)是一个开源的工作流管理系统,它提供了业务流程建模、部署、执行和监控的功能。jbpm 4.4是该系统的一...

    JBPM4 java源代码分包详解JBPM4

    12. **org.jbpm.pvm.internal.jms**: 与JMS(Java Message Service)集成,用于处理异步消息传递,例如通过`JmsMessageSession`和`JmsMessageUtil`与`org.jbpm.api.job.Message`进行交互。 13. **org.jbpm.pvm....

    jbpm4.3-src.zip

    3. jbpm.wire.bindings.xml:这可能涉及到jbpm中的信号和事件绑定。在jbpm中,信号和事件可以触发流程的某些行为,例如流程的跳转或结束。理解这些绑定有助于了解流程如何响应外部事件。 4. jbpm.task.hbm.xml:...

    JBPM采购申请系统——08_JBPM流程节点.7z

    JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM...

    jbpm4leave.zip_jbpm4leave_jbpm4leave.zip

    4. **配置文件**(如jbpm.cfg.xml):配置jBPM引擎的设置,如数据源、事务管理等。 5. **部署单元**(.ear或.war文件):将所有组件打包成可部署在应用服务器上的应用。 要运行这个实例,你需要: 1. 安装并配置一...

    jbpm-3.1.2.zip_jbpm_jbpm 3.1.2_jbpm-3.1.2.rar_jbpm3.1.2_工作流

    jbpm-3.1.2.zip 文件包含了 jBpm 的一个重要版本——jBpm 3.1.2,这是一个开源的工作流管理系统,专为构建灵活且可扩展的业务流程解决方案而设计。jBpm 提供了一种方式,使得开发者能够用简单而强大的语言来表达业务...

    JBPM4运行时错误异常总结

    1. `org.jbpm.api.JbpmException: database was not clean after test`: 这个异常通常出现在单元测试环境中,原因是测试过程中流程未完成,但尝试删除流程定义。为了解决这个问题,确保在每个测试用例结束后,正确...

    jbpm.mysql.create.sql

    jbpm.mysql.create.sql jbpm mysql建表语句

    jbpm-jpdl.jar

    jbpm-jpdl.jar jbpm-jpdl.jar

    jbpm-identity.jar

    jbpm-identity.jar jbpm-identity.jar

    bsh.jar/ jcr-1.0.jar/ jbpm-identity.jar/ jbpm-jpdl.jar

    在IT行业中,尤其是在Java开发领域,`jar`文件(Java Archive)是不可或缺的一部分。这些文件是Java类库的集合,通常包含编译后的Java类、资源文件以及元数据,用于构建和部署Java应用程序。在本例中,我们讨论的是...

    JBPM数据库表创建\jbpm.jpdl.oracle.sql

    JBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sql

    jbpm-5.4.0.Final

    JBPM,全称为Java Business Process Management,是一款开源的工作流管理系统,专为企业的业务流程自动化而设计。它提供了全面的工作流解决方案,包括流程定义、执行、监控以及管理,从而帮助企业优化业务流程,提高...

    bsh.jar,jcr-1.0.jar,jbpm-identity.jar,jbpm-jpdl.jar

    在Java开发领域,JBPM(Java Business Process Management)是一个开源的工作流和业务流程管理系统,它提供了对企业业务流程的建模、部署、执行和监控的能力。本文将深入探讨JBPM与Spring框架的整合以及相关jar文件...

    jbpm4leave.zip_DEMO_java4leave_jbpm4lea_jbpm4leave_jbpm4leave.zi

    【jbpm4leave.zip_DEMO_java4leave_jbpm4lea_jbpm4leave_jbpm4leave.zi】是一个包含Java实现的Jbpm Demo的压缩包,它主要用于展示如何利用Jbpm来设计和执行一个简单的请假流程。这个Demo是针对开发者和对业务流程...

    JBPM开发指南.pdf

    - **JPA持久化**:JBPM支持JPA(Java Persistence API),可以方便地将流程实例和相关数据存储在关系数据库中。 - **RESTful API**:JBPM提供RESTful接口,方便远程调用和监控。 - **Maven插件**:通过Maven插件...

    jbpm-6.1.0.Final-installer

    9. **集成能力**:jBPM与许多其他技术和平台有良好的集成,如Java EE应用服务器(如JBoss EAP)、Spring框架、Maven构建工具等,使得它可以无缝地融入现有的企业IT架构。 10. **社区支持**:作为开源项目,jBPM拥有...

    jbpm.4.4.jar

    5. **集成能力**:jbpm可以轻松与Java EE、Spring、EJB等环境集成,同时也支持与各种数据存储系统的连接,如JPA、Hibernate等。 6. **持久化支持**:jbpm提供了对流程实例、任务和其他元数据的持久化存储,确保了...

Global site tag (gtag.js) - Google Analytics