首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新BPS中的实例变量

更新BPS中的实例变量
EN

Stack Overflow用户
提问于 2016-11-20 17:18:38
回答 1查看 72关注 0票数 1

使用WSO2 BPS3.6.0-有没有一种(标准)方法来更新已经运行的实例中的实例变量?

背后的原因是-客户端在流程初始化时传递了不正确的数据,客户端可能会修复其数据,但流程实例会记住错误的值。

我相信我仍然可以更新数据库中的数据,但我不希望看到进程管理员扰乱数据库

编辑:我正在使用BPEL引擎,我的想法是更新一个变量,而不是来自流程设计的变量,而是一种纠正操作(管理控制台?api?)

谢谢你所有的想法。

EN

回答 1

Stack Overflow用户

发布于 2016-11-22 02:29:52

您正在根据客户端的请求在进程初始化过程中设置实例变量。

对于您的需求,其中需要为请求检索变量。为此,您可以使用执行实体读取数据,而不是使用在进程初始化期间设置的实例变量。

请参考下面的示例:

代码语言:javascript
复制
 public class SampleTask implements JavaDelegate {

     public void execute(DelegateExecution execution) throws Exception {
          String userId = execution.getVariable("userId");
         //perform your logic here
     }
 }

如果您想继续使用实例变量,我建议您在流程执行期间更改实例变量。

代码语言:javascript
复制
 public class SampleTask implements JavaDelegate {

     private String userId;

     public void execute(DelegateExecution execution) throws Exception {
          String newUserId = execution.getVariable("userId");
          setUserId(newUserId);
         //perform your logic here
     }

     public void setUserId(String userId) {
          this.userId = userId;
     }

     public String getUserId() {
          return userId;
     }
 }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40702417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档