作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发 e4 应用程序。我想在 Part 和 Handler 之外注入(inject) EPartService
当我注入(inject) EPartService 时,我会得到空指针错误
public class DisplayRuntimePart {
@Inject EPartService partService;
private void displayPart(){
MPart part=partService.findPart("com.rcpe4.myproject.part.datapart");
mpart.setVisible(true);
partService.showPart(mpart, PartState.CREATE);
}
}
Class Mypart{
@Inject EPartService prtservice;
@Inject
public MyPart() {
}
@PostConstruct
public void postConstruct(Composite parent) {
parent.setLayout(new FillLayout(SWT.HORIZONTAL));
htmlBrowser = new Browser(parent, SWT.NONE);
}
@PreDestroy
public void preDestroy() {
}
@Focus
public void onFocus() {
}
@Persist
public void save() {
}
public dispalyPart(){
MPart mpart=partService.findPart("com.abc.test.part.datapart"); **Here Getting Null Pointer Exception**
mpart.setVisible(true);
partService.showPart(mpart, PartState.CREATE);
}
}
最佳答案
Eclipse 只对它“知道”的对象进行直接注入(inject) - 基本上是在应用程序模型 (e4xmi) 文件中提到的对象或使用类似 EPartService.showPart
的东西创建的对象。 .
如果你想对你创建的对象进行直接注入(inject),那么你需要使用 ContextInjectionFactory
创建它们。 .例如:
@Inject IEclipseContext context;
...
MyClass myClass = ContextInjectionFactory.make(MyClass.class, context);
ContextInjectionFactory.inject(myClass, context);
关于eclipse-rcp - 如何注入(inject) EPartService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25759291/
我正在开发 e4 应用程序。我想在 Part 和 Handler 之外注入(inject) EPartService 当我注入(inject) EPartService 时,我会得到空指针错误 p
Eclipse RCP (e4) 新手,我正在尝试获取处理程序来更新部件内的 UI 小部件。 我尝试注入(inject) EPartService 以首先按 ID 访问部件,如下所示: public
我是一名优秀的程序员,十分优秀!