1
Phil Windleyのpersonal data manager applicationの仕組みと同様に、イベントを発生させるアプリケーションを作成しています。ただし、イベントドメインを使用しようとすると、explicit
が発生してもイベントは伝播しません。次のルールは、ドメインとしてexplicit
では正常に動作しますが、driverreg
では正しく動作しません。明示的に使用せずにKRLでイベントを呼び出す
rule driver_info_submit {
select when web pageview ".*"
pre {
driver_name = "Joe Driver";
driver_phone = "111-555-1212";
msg = <<
Current driver info: #{ent:driver_name}, #{ent:driver_phone}
>>;
}
notify("Started", msg);
fired {
raise explicit event new_driver_data with driver_name=driver_name and driver_phone=driver_phone;
}
}
// Save driver name
rule save_driver_name {
select when explicit new_driver_data
pre {
driver_name = event:param("driver_name") || ent:driver_name;
driver_phone = event:param("driver_phone") || ent:driver_phone;
}
noop();
always {
set ent:driver_name driver_name;
set ent:driver_phone driver_phone;
raise explicit event driver_data_updated;
}
}
rule driver_info_updated {
select when explicit driver_data_updated
{
notify("Driver name", ent:driver_name);
notify("Driver phone", ent:driver_phone);
}
}
私はそれを両方の方法で試したので、アプリがデプロイされているかどうかは問題ではないようです。私は何が欠けていますか?
はそれを手に入れました。私は 'pds'は恣意的であると仮定していた。ホワイトリストがあることを知らなかった。ありがとう! –