Я создал приложение RCP с представлением в качестве шаблона. Первоначально после создания проекта мой класс перспективы выглядит следующим образом
import org.eclipse.ui.IPageLayout;
public class Perspective implements IPerspectiveFactory {
public void createInitialLayout(IPageLayout layout) {
layout.setEditorAreaVisible(false);
layout.setFixed(true);
}
}
Я создал новое представление и добавил его в org.eclipse.uiРасширение .views с именем ErrorView и сгенерировало соответствующий класс этого представления.Я внес небольшое изменение в класс перспективы
public class Perspective implements IPerspectiveFactory {
private URL u;
private HttpURLConnection huc;
public void createInitialLayout(IPageLayout layout) {
try{
u= new URL("https://google.com/");
huc = ( HttpURLConnection )u.openConnection ();
huc.setRequestMethod("GET");
huc.connect();
if(huc.getResponseCode()==200){
layout.setEditorAreaVisible(false);
layout.setFixed(true);
}
else{
layout.addStandaloneView(View1.ID, true, IPageLayout.LEFT, 1.0f, layout.getEditorArea());
layout.getViewLayout(View1.ID).setCloseable(false);
layout.setEditorAreaVisible(false);
}
}
catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
layout.addStandaloneView(View1.ID, true, IPageLayout.LEFT, 1.0f, layout.getEditorArea());
layout.getViewLayout(View1.ID).setCloseable(false);
layout.setEditorAreaVisible(false);
}
}
}
Определенно выполняется блок else / catch
Как заставить ErrorView занимать всю перспективу, не показываяБазовый вид или просто скрыть базу (вид по умолчанию) Полностью.