Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Pro ENGINEER
  Jlink - Programmausführung nur einmal möglich!?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo
  
BOM Assistant für Stücklistenerstellung , eine App
Autor Thema:  Jlink - Programmausführung nur einmal möglich!? (197 mal gelesen)
magic_halli
Mitglied



Sehen Sie sich das Profil von magic_halli an!   Senden Sie eine Private Message an magic_halli  Schreiben Sie einen Gästebucheintrag für magic_halli

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 19. Sep. 2006 07:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi,

ich habe ein Jlink-Programm, welches in ProE über einen Button im Menü integriert ist. Mein Programm macht dort verschiedene Sachen (u.a. pdf´s erzeugen) mit einer geöffneten Baugruppe. Soweit geht auch alles wunderbar...
Wenn ich mein Programm zum ersten mal starte (über den Menübutton) läuft alles prima. Nur wenn ich direkt im Anschluß, nach der ersten Ausführung, nochmals mein Programm starten will, passiert gar nichts!!! Ich muss erst wieder ProE schließen und neu öffnen und dann gehts wieder für eine Ausführung bzw. ich lade eine völlig neue Baugruppe und lasse darauf mein Programm los - aber 2 mal hintereinander auf die gleich Baugruppe... das geht nicht!
Ich frage mich nur warum??? Ist sowas vielleicht ein Speicherproblem - das da noch irgendwelche Variablen mit Werten im Speicher gehalten werden???
Meine Einstiegsfunktion, die auf den Buttonklick die Abarbeitung startet, ruft eigentl. nur andere Funktionen auf, die dann etwas machen. Am Schluß setze ich meine ArrayListen, die benötigt wurden, alle wieder auf null - somit sind die doch schonmal leer?!

Code:

//Klasse, welche beim Button-klick aufgerufen wird
public class myCommand extends DefaultUICommandActionListener {

    static String dateinamePDF = null;
    static String dateinameDXF = null;
    static ArrayList checkname = new ArrayList();
    static ArrayList matches = new ArrayList();
    static ArrayList matchesPS = new ArrayList();
    static ArrayList matchesPDF = new ArrayList();


//enthält alle Funktionalitäten hinter dem MenueButton
    public void OnCommand() {
       
      try {
          Session curSession = pfcGlobal.GetProESession();
          Model model = curSession.GetCurrentModel();
            //diverse Funktionen aufrufen
            ...
            //am Ende benutzte ArrayListen zurücksetzen
            //ArrayListen nullen
          checkname = null;
          matches = null;
          matchesPS = null;
          matchesPDF = null;
      }
      catch(jxthrowable err){
          ...
      }


 

Muss ich vielleicht irgendwelche ProE-Eigenarten bedenken, wenn ich Programme auf Baugruppen bzw. Bauteile ausführen will (Speicherprobleme etc.)?
Ich bin ratlos, warum die Ausführung auf eine Baugruppe nicht mehrmals geht, sondern erst wieder, nachdem ich ProE neu starte und die Baugruppe neu lade?!?!?!

Hat jemand nen Tip für mich, oder auch schonmal sowas gehabt?

Danke. 


EDIT: Kann der integrierte Button vielleicht das Programm nicht 2 mal hintereinander aufrufen, weil man ihn vielleicht irgendwie nochmal "aktualisieren" muss??? Der Button gleich wird bei ProE-Start eingebunden.

[Diese Nachricht wurde von magic_halli am 19. Sep. 2006 editiert.]

[Diese Nachricht wurde von magic_halli am 19. Sep. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

magic_halli
Mitglied



Sehen Sie sich das Profil von magic_halli an!   Senden Sie eine Private Message an magic_halli  Schreiben Sie einen Gästebucheintrag für magic_halli

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 19. Sep. 2006 10:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Mittlerweile habe ich viel probiert und ich glaube, dass bei erneutem Aufrufen des Programms irgendwie die Session und das Model nicht mehr korrekt gesetzt werden bzw. gar nicht mehr gesetzt werden!

Wenn ich z.B. auf eine Baugruppe mein Prog loslasse, danach diese Baugruppe schließe und alles wegnehme und dann in ein anderes Arbeitsverzeichnis wechsle und eine neue Baugruppe aufmache und bearbeiten lassen möchte... dann werden zwar Funktionen ausgeführt (an diese übergebe ich die 'Session curSession'), allerdings liefern diese noch Ergebnisse der vorhergehenden Programmabarbeitung.
Das sagt mir ja, das die Session (und auch Model) irgendwie nicht auf eine neu geladene Baugruppe gesetzt wird?!?!

Kann ich eine Session und Model auch irgendwie regenerieren bzw. refreshen oder so???

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

GüntherP
Mitglied
CAD Administrator / Konstrukteur


Sehen Sie sich das Profil von GüntherP an!   Senden Sie eine Private Message an GüntherP  Schreiben Sie einen Gästebucheintrag für GüntherP

Beiträge: 82
Registriert: 18.02.2005

HP xw4100
NVIDIA Quadro 980XGL<P>Wildfire 2.0 / 3.0
Intralink 3.4 F000
PDMLink 8.0 M030

erstellt am: 19. Sep. 2006 11:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für magic_halli 10 Unities + Antwort hilfreich

Hallo,

läuft das Programm beim zweiten Aufruf problemlos durch oder wird eine Exception geworfen?
Bei mir kann ich die Funktion so oft aufrufen wie ich möchte und ohne Probleme. Also wenn du es noch nicht machst, solltest du die Exceptions in eine eigene log Datei schreiben.

Gruß,
Günther

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

magic_halli
Mitglied



Sehen Sie sich das Profil von magic_halli an!   Senden Sie eine Private Message an magic_halli  Schreiben Sie einen Gästebucheintrag für magic_halli

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 19. Sep. 2006 13:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Jetzt kann ich´s endlich mehrmals durchlaufen lasse...

Das ganze lag an meiner statischen Variablenvereinbarung! Ich habe jetzt alle statischen Sachen rausgenommen, umgeschrieben und nach Stunden gehts endlich wie ich mir das erhofft habe.
Bei der Fehlersuche deutete alles auf nicht korrekte Session und Model beim nochmaligen ausführen hin - dies hat sich jetzt allerdings als falsche Annahme erwiesen.

Sorry für den doch relativen "Sinnlospost", was den Allgemeinnutzen anbelangt 

Gruß Rico.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Pro_Blem
Ehrenmitglied V.I.P. h.c.
Tschechischer Zeichner



Sehen Sie sich das Profil von Pro_Blem an!   Senden Sie eine Private Message an Pro_Blem  Schreiben Sie einen Gästebucheintrag für Pro_Blem

Beiträge: 2952
Registriert: 24.07.2006

HP Elitebook8740w
Core i7, 8GB
Win7 x64
Pro/E WF4 M180(M220)
Creo1.0 M020
(Adv.XE mit AAX)
StartupTools2012
Pro/I 3.4 M070

erstellt am: 19. Sep. 2006 13:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für magic_halli 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von magic_halli:

Sorry für den doch relativen "Sinnlospost", was den Allgemeinnutzen anbelangt 

Gruß Rico.


Mahlzeit!

... an dem solls wahrlich nciht liegen. Vielleicht ist der Eine oder Andere jetzt besser sensibilisiert und macht den gleichen Fehler nicht.
Außerdem, wenn Du's vorher gewußt hättest, hättest Du nicht gefragt.
Meine Meinung:
Nur rein damit! 

Grüße, Baste

------------------
Wir hatten nie 'ne Schulung in Pro/E
Wir hatten nie 'ne Schulung in Pro/I
Wir haben keinen Wartungsvertrag
Wir haben keinen Admin
Wir haben trotzdem Spaß!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz