Próbuję uzyskać wartość zwracaną przez funkcję JavaScript, którą napisałem. Mogę to zrobić za pomocą bardzo skomplikowanej metody z udziałem słuchaczy, ale chcę użyć metody Eclipse'a o nazwie Browser.evaluate.Czy istnieje prosty sposób uzyskania wyników JavaScript w Javie (przy użyciu Eclipse)?
jako problem zabawkami, mam następujący kod w pliku Java:
Object result = this.browser.evaluate("new String(\"Hello World\")");
gdzie this.browser jest tworzony w klasie rozciągającej org.eclipse.ui.part.EditorPart
w zastąpionej funkcji createPartControl
:
public void createPartControl(Composite parent) {
// Create the browser instance and have it
this.browser = new Browser(parent, SWT.NONE);
this.browser.addFocusListener(new FocusAdapter() {
@Override
public void focusGained(FocusEvent e) {
SomeEditor.this.getSite().getPage().activate(SomeEditor.this);
}
});
new ErrorReporter(this.browser);
this.browser.setUrl(Activator.getResourceURL("html/java-shim.html").toString());
...more stuff snipped...
}
Jednak zamiast result
będącego ciągiem Java z zawartością "Hello World", jest to null
. Czy używam tej metody nieprawidłowo, czy jest ona uszkodzona?