在Eclipse中使用XWorker的插件编辑事物模型,模型必须在XWorker的项目目录下,有两种方法设置XWorker的项目。
在Eclipse中的一个目录下创建一个名dml.prj的文件,就可以使这个目录成为XWorker的项目目录,事物模型可以创建到该目录和子目录下。
在Eclipse中的一个目录下创建一个名为xworker.properties的文件,就可以使这个目录成为XWorker的项目目录,但事物模型必须创建到该目录的things子目录或things的子子目录中。
在dml.prj和xworker.properties文件中都可以设置projectName属性,如projectName=Test表示项目名为Test。
项目名可以为空,此时使用目录名为项目名。由于项目名不能重复,所以建议为空使用目录作为项目名。
由于动态模型引擎设计为全局单态的,因此即使在Eclipse的不同项目中,事物路径仍然不能重复,每个事物的路径必须是唯一的,否则事物编辑器只会编辑第一个符合路径的事物。
进入新建事物向导。

创建一个事物。

也可以直接在目录下创建后缀名dml的文件,创建后双击即可打开编辑,只是此时这个模型没有描述者。
在目录下双击打开事物,如果是文本编辑器打开的,那么请选择打开方式为ThingEditor,或者在Window->Preferences->General->Editors->File Associations里*.dml、*.xer、*.xer.txt、*.xer.xml的默认编辑器设置为ThingEditor。

由于在Eclipse中XWorker只有一个实例,它和具体的Eclipse项目无关,所以在编辑器中运行模型不能使用Eclipse的项目配置等,因此如果模型不依赖项目的其它配置那么可以直接运行,否则请在Java代码中运行模型。
如:
import org.xmeta.ActionContext;
import org.xmeta.Thing;
import org.xmeta.World;
public class RunEditor {
public static void main(String args[]){
try{
//X-Meta引擎是单实例的
World world = World.getInstance();
//初始化引擎,参数是模型库的目录,如果为null那么通过XMETA_HOME或XWORKER_HOME环境变量获取模型库的位置
world.init(null);
//获取简单事物编辑器,简单事物编辑器
Thing thingEditor = world.getThing("xworker.swt.xwidgets.prototypes.SimpleThingEditor");
ActionContext actionContext = new ActionContext();
//执行简单事物编辑器
thingEditor.doAction("run", actionContext);
}catch(Exception e){
e.printStackTrace();
}
}
}
Copyright © 2007-2014 XWorker.org 版权所有