I found a solution
I rewrite the code bellow
Code:
package org.springframework.richclient.application.support;
import java.util.Set;
import javax.swing.JComponent;
import org.springframework.context.event.ApplicationEventMulticaster;
import org.springframework.richclient.application.ApplicationWindow;
import org.springframework.richclient.application.PageComponent;
import org.springframework.richclient.application.PageComponentDescriptor;
import org.springframework.richclient.application.PageComponentListener;
import org.springframework.richclient.application.PageComponentPane;
import org.springframework.richclient.application.PageDescriptor;
import org.springframework.richclient.application.ViewDescriptor;
public class MultiplePageApplicationPage extends AbstractApplicationPage {
private AbstractApplicationPage applicationPage;
public MultiplePageApplicationPage(AbstractApplicationPage applicationPage) {
super();
this.applicationPage = applicationPage;
}
public void addPageComponentListener(PageComponentListener pagecomponentlistener) {
this.applicationPage.addPageComponentListener(pagecomponentlistener);
}
public boolean close() {
return this.applicationPage.close();
}
public boolean close(PageComponent pagecomponent) {
return this.applicationPage.close(pagecomponent);
}
public boolean closeAllEditors() {
// TODO Auto-generated method stub
return this.applicationPage.closeAllEditors();
}
public PageComponent getActiveComponent() {
// TODO Auto-generated method stub
return this.applicationPage.getActiveComponent();
}
public String getId() {
return this.applicationPage.getId();
}
public ApplicationWindow getWindow() {
return this.applicationPage.getWindow();
}
public void openEditor(Object obj) {
this.applicationPage.openEditor(obj);
}
public void removePageComponentListener(PageComponentListener pagecomponentlistener) {
this.applicationPage.removePageComponentListener(pagecomponentlistener);
}
public void setActiveComponent(PageComponent pagecomponent) {
this.applicationPage.setActiveComponent(pagecomponent);
}
public void showView(String s) {
this.applicationPage.showView(s);
}
public void showView(ViewDescriptor viewDescriptor) {
PageComponent component = this.applicationPage.findPageComponent(viewDescriptor.getId());
component = this.applicationPage.createPageComponent(viewDescriptor);
this.applicationPage.addPageComponent(component);
this.applicationPage.setActiveComponent(component);
}
protected void addPageComponent(PageComponent pageComponent) {
this.applicationPage.addPageComponent(pageComponent);
}
protected PageComponent createPageComponent(PageComponentDescriptor descriptor) {
return this.applicationPage.createPageComponent(descriptor);
}
protected PageComponentPane createPageComponentPane(PageComponent pageComponent) {
// TODO Auto-generated method stub
return this.applicationPage.createPageComponentPane(pageComponent);
}
protected void doAddPageComponent(PageComponent pagecomponent) {
this.applicationPage.doAddPageComponent(pagecomponent);
}
protected void doRemovePageComponent(PageComponent pagecomponent) {
this.applicationPage.doRemovePageComponent(pagecomponent);
}
protected PageComponent findPageComponent(String viewDescriptorId) {
// TODO Auto-generated method stub
return this.applicationPage.findPageComponent(viewDescriptorId);
}
protected void fireClosed(PageComponent component) {
// TODO Auto-generated method stub
this.applicationPage.fireClosed(component);
}
protected void fireFocusGained(PageComponent component) {
// TODO Auto-generated method stub
this.applicationPage.fireFocusGained(component);
}
protected void fireFocusLost(PageComponent component) {
// TODO Auto-generated method stub
this.applicationPage.fireFocusLost(component);
}
protected void fireOpened(PageComponent component) {
// TODO Auto-generated method stub
this.applicationPage.fireOpened(component);
}
public ApplicationEventMulticaster getApplicationEventMulticaster() {
// TODO Auto-generated method stub
return this.applicationPage.getApplicationEventMulticaster();
}
public Set getPageComponents() {
// TODO Auto-generated method stub
return this.applicationPage.getPageComponents();
}
protected PageDescriptor getPageDescriptor() {
// TODO Auto-generated method stub
return this.applicationPage.getPageDescriptor();
}
protected ViewDescriptor getViewDescriptor(String viewDescriptorId) {
// TODO Auto-generated method stub
return this.applicationPage.getViewDescriptor(viewDescriptorId);
}
protected boolean giveFocusTo(PageComponent pagecomponent) {
// TODO Auto-generated method stub
return false;
}
protected void setActiveComponent() {
// TODO Auto-generated method stub
this.applicationPage.setActiveComponent();
}
protected void updatePageComponentProperties(PageComponent pagecomponent) {
// TODO Auto-generated method stub
this.applicationPage.updatePageComponentProperties(pagecomponent);
}
protected JComponent createControl() {
return this.applicationPage.getControl();
}
}
Then I use
Code:
MultiplePageApplicationPage newPage = new MultiplePageApplicationPage((AbstractApplicationPage)getApplicationWindow().getPage());
newPage.showView(defaultViewDesc);