Это возможно начиная с версии 2.2 (см. в этой теме ).Этот код работал для меня:
IEditedResourceProvider resourceProvider = new IEditedResourceProvider() {
@Override
public XtextResource createResource() {
try {
MyDslQueryStandaloneSetup.doSetup();
ResourceSet resourceSet = new ResourceSetImpl();
Resource resource = resourceSet.createResource(URI.createURI("somefile.MyDsl"));
return (XtextResource) resource;
} catch (Exception e) {
return null;
}
}
};
MyDslActivator activator = MyDslActivator.getInstance();
Injector injector = activator
.getInjector(MyDslActivator.QUERYNAME);
EmbeddedEditorFactory factory = injector.getInstance(EmbeddedEditorFactory.class);
handle = factory.newEditor(resourceProvider).withParent(
parent);
// keep the partialEditor as instance var to read / write the edited text
partialEditor = handle.createPartialEditor(true);