我已经应用M2Doc编程使用指南 (也与这种帮助一起)通过API成功地生成了一个文档,这是以前通过使用M2Doc GUI (配置的.docx加上一个.genconf文件)准备的。它似乎也适用于配置好的.docx,但没有.genconf文件。
现在,我想更进一步,在我们的应用程序中简化用户界面。用户应该附带一个.docx,其中包括{m:.}字段,特别是变量定义字段,然后在我们的Eclipse应用程序中,只需将模型元素分配给变量列表。最后按下“生成”键。其余的我想通过M2Doc API来处理:
projectmodel::PJDiagram.allInstances() )我试图对M2Doc源代码进行分析,但为了达到目标,我有一些问题:
任何帮助都是非常感谢的!
到目前为止,为了给您留下我的代码的印象,请注意,它实际上是Javascript而不是Java,因为我们的应用程序有一个内置的Java接口。
//=================== PARSING OF THE DOCUMENT ==============================
var templateURIString = "file:///.../templateReqs.docx";
var templateURI = URI.createURI(templateURIString);
// canNOT be empty, as we get nullpointer exceptions otherwise
var options = {"TemplateURI":templateURIString};
var exceptions = new java.util.ArrayList();
var resourceSetForModels = ...; //here our application's resource set for the whole model is used, instead of M2Doc "createResourceSetForModels" - works for the moment, but not sure if some services linking is not working
var queryEnvironment = m2doc.M2DocUtils.getQueryEnvironment(resourceSetForModels, templateURI, options);
var classProvider = m2doc.M2DocPlugin.getClassProvider();
// empty Monitor for the moment
var monitor = new BasicMonitor();
var template = m2doc.M2DocUtils.parse(resourceSetForModels.getURIConverter(), templateURI, queryEnvironment, classProvider, monitor);
// =================== GENERATION OF THE DOCUMENT ==============================
var outputURIString = "file:///.../templateReqs.autogenerated.docx";
var outputURI = URI.createURI(outputURIString);
variables["myVar1"] = ...; // assigment of objects...
m2doc.M2DocUtils.generate(template, queryEnvironment, variables, resourceSetForModels, outputURI, monitor);
谢谢!
发布于 2021-08-23 13:01:29
您还可以找到已使用的元模型(EPackage,nsURI)和导入的服务类的le列表。
这将帮助您找到AQL环境配置中缺少的部分。您的代码看起来很好,在添加配置部分时应该可以工作。
https://stackoverflow.com/questions/68891842
复制相似问题