Domino 9 und frühere Versionen > ND8: Entwicklung

Composite Application: aus Notes Application 8.5 SWT-GUI aufrufen

<< < (3/4) > >>

Ralf_M_Petter:
Nein nur mit WSDL alleine geht noch gar nichts. Die Komponenten müssen auch dann die Aktionen implementieren. Du musst dazu den Erweiterungpunkt
com.ibm.rcp.propertybroker.PropertyBrokerDefinitions erweitern. Ist auch im Tutorial beschreiben.

--- Code: ---<extension
         point="com.ibm.rcp.propertybroker.PropertyBrokerDefinitions">
      <handler
            class="HandleAktionen"
            file="WSDL/wsdl.wsdl"
            owner="HandleAktionen"
            type="SWT_ACTION">
      </handler>
</extension>

--- Ende Code ---

public class HandleAktionen implements IHandler {

   public void addHandlerListener(IHandlerListener arg0) {
      // TODO Auto-generated method stub

   }

   public void dispose() {
      // TODO Auto-generated method stub

   }
Dann muss es natürlich die Klasse HandleAktionen geben. Die ca. so aussehen soll. Kann jetzt nicht sagen, ob die Klasse ganz richtig ist, da ich sie aus einem meiner Projekte rauskopiert habe und anonymisiert, bzw vereinfacht habe. Der ViewPart AktionenView muss natürlich dann die Methode showAktionen haben. In meinem Fall.


--- Code: --- public Object execute(ExecutionEvent arg0) throws ExecutionException {
final PropertyChangeEvent pce = (PropertyChangeEvent) arg0.getTrigger();
Display.getDefault().asyncExec(new Runnable() {
public void run(){
String targetViewId = pce.getWireDefinition().getTargetEntityId();
IViewPart part=SWTHelper.locateView(targetViewId);
if (part instanceof AktionenView){
if(pce.getPropertyValue().getProperty().getName().equals("Name1")){
((AktionenView)part).showAktionen((String)pce.getPropertyValue().getValue());
}
}


}
});
return null;
}

public boolean isEnabled() {
// TODO Auto-generated method stub
return true;
}

public boolean isHandled() {
// TODO Auto-generated method stub
return true;
}

public void removeHandlerListener(IHandlerListener arg0) {
// TODO Auto-generated method stub

}

}

--- Ende Code ---

Wenn du Noteskomponenten hast, dann musst du eine Notesaktion hinzufügen die mit dem WSDL verknüpft ist. Siehe Screenshot

Ahuga:
Vielen Dank für Deine Infos.


--- Zitat --- Wenn du Noteskomponenten hast, dann musst du eine Notesaktion hinzufügen die mit dem WSDL verknüpft ist.
--- Ende Zitat ---

Ich habe noch ein Durcheinander mit dem WSDL:

- Ist oben die WSDL des Plug-in’s mit der ViewPart gemeint?
- Was gebe ich bei „Action Input Parameter“ im WSDL des Plug-in’s an? Da müsste es sich genau um die obige Notesaktion handeln, oder?
- Diese „TestAction“ bei Deinem Screenshot, ist das die Action aus dem WSDL des Plug-in’s?

Ahuga:
Noch eine Frage ist aufgetaucht:

Das Action-Fenster bei Deinem Screenshot, stammt das von einem Actionbutton in der NotesView?
Wenn ja, kann ich dann direkt die rot markierte "TestAction" aufrufen und muss das nicht über LotuScript lösen?

Um was für eine Action handelt es sich bei dieser "TestAction"? Der Noteskomponente oder Action defiert in der wsdl-Datei meines ViewPart Plugins?

Ralf_M_Petter:
Ah ich denke wir reden aneinander vorbei. Die Aktion in der View musst du definieren wenn die View das Ziel einer Aktion ist. Sprich irgendein Teil in deiner Comp App möchte, dass sich etwas in der View ändert. Wenn du auf Selektionsereignisse in der View reagieren willst brauchst du die Viewaktion gar nicht. Dann musst du bei den Spalteneinstellungen der View irgendwie das Property auswählen. Habe aber jetzt gerade keinen Designer bei der Hand um nachzusehen wie das heisst.

Grüße

Ralf

Ralf_M_Petter:
Eine Frage ist das was du machst eigentlich ein Projekt zu lernen, oder ein echtes Projekt. Kannst du eventuell mal die Datenbank hier reinstellen. Ich denke man könnte viel besser helfen, wenn man mal echt sieht das du machst.

Grüße

Ralf

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln