JAVA UND XBASE++
Moderator: Moderatoren
JAVA UND XBASE++
Hallo an alle
ich komme aus der Java Welt und seit kurzem beschäftige ich mich (neuen Arbeitgeber) mit Xbase++. Mittlerweile habe ich feststellen müssen das beide Sprachen ihre Vorteile und Nachteile haben.
Um Xbase++ komme ich nun nicht mehr vorbei und ich muss auch sagen, wenn man seine Vorurteile ausblendet (sorry bin einfach ehrlich) eigentlich eine Interessante Sprache. Ich habe doch Ähnlichkeiten mit Java entdeckt aber auch die Erfahrung machen dürfen das mir einiges leichter fällt weil klar Plattform näher. Was ich aber klar vermisse sind Technologie Ansätze wie bei Java EE
Somit möchte ich hier einfach mal eine vielleicht waghalsige Idee in den Raum werfen und hoffe auf rege Diskussion.
Bitte gleich vorweg. Ich möchte hier nicht die Vorteile oder Nachteile der beiden Sprachen besprechen sondern lieber Brainstorming betreiben um eventuell Java und XBase++ mit einander zu verbinden.
Es gibt ja schon einige Projekte wo Java mit Nativen Sprachen verschmelzen (JNU, JNA, JRuby, SWT) usw.. ach Android nicht zu vergessen
Ich strebe schon länger an Java Windows näher zu bringen. Klar nichts neues. Nur finde ich das die bisherigen Weg noch sehr holprig sind . Nun da ich bereits gesagt habe komme ich an Xbase++ nicht mehr vorbei, muss aber auch sagen möchte ich auch nicht mehr missen. Jedoch vermisse ich die Technologie Breite wie bei Java (Java ME/SE/EE) etc. Also wieso nicht Xbase++ mit Java verbinden...
Klar im ersten Moment hört sich das so leicht an. Mir ist schon bewusst das gerade im Details die Probleme / Schwierigkeiten auftauchen. Nur wer nicht spinnt und wagt der kann nicht gewinnen....
Und mal ehrlich und ganz unparteiisch betrachtet können beide Seiten profitieren. Xbase++ Entwickler könnten Java Technologie nützen und Java könnte besser mit Windows arbeiten.
Hier mal ein paar Stichpunkte um die Diskussion anzutreiben
was haltet ihr von der Idee.....
was für Probleme müssten gelöst werden...
in welcher Form / Architektur könnte man es realisieren..
wäre es sinnvoll / möglich einen gemeinsamen Virtuell Maschine zu realisieren...
glaubt ihr das es überhaupt realisierbar ist...
könnte ihr euch Vorstellen bzw teilt ihr die Meinung das beide davon profitieren können oder seit ihr eher der Meinung alles Quatsch und dann wieso?
So ab sofort ist die Diskussion Runde eröffnet....
Gruss Patrick
ich komme aus der Java Welt und seit kurzem beschäftige ich mich (neuen Arbeitgeber) mit Xbase++. Mittlerweile habe ich feststellen müssen das beide Sprachen ihre Vorteile und Nachteile haben.
Um Xbase++ komme ich nun nicht mehr vorbei und ich muss auch sagen, wenn man seine Vorurteile ausblendet (sorry bin einfach ehrlich) eigentlich eine Interessante Sprache. Ich habe doch Ähnlichkeiten mit Java entdeckt aber auch die Erfahrung machen dürfen das mir einiges leichter fällt weil klar Plattform näher. Was ich aber klar vermisse sind Technologie Ansätze wie bei Java EE
Somit möchte ich hier einfach mal eine vielleicht waghalsige Idee in den Raum werfen und hoffe auf rege Diskussion.
Bitte gleich vorweg. Ich möchte hier nicht die Vorteile oder Nachteile der beiden Sprachen besprechen sondern lieber Brainstorming betreiben um eventuell Java und XBase++ mit einander zu verbinden.
Es gibt ja schon einige Projekte wo Java mit Nativen Sprachen verschmelzen (JNU, JNA, JRuby, SWT) usw.. ach Android nicht zu vergessen
Ich strebe schon länger an Java Windows näher zu bringen. Klar nichts neues. Nur finde ich das die bisherigen Weg noch sehr holprig sind . Nun da ich bereits gesagt habe komme ich an Xbase++ nicht mehr vorbei, muss aber auch sagen möchte ich auch nicht mehr missen. Jedoch vermisse ich die Technologie Breite wie bei Java (Java ME/SE/EE) etc. Also wieso nicht Xbase++ mit Java verbinden...
Klar im ersten Moment hört sich das so leicht an. Mir ist schon bewusst das gerade im Details die Probleme / Schwierigkeiten auftauchen. Nur wer nicht spinnt und wagt der kann nicht gewinnen....
Und mal ehrlich und ganz unparteiisch betrachtet können beide Seiten profitieren. Xbase++ Entwickler könnten Java Technologie nützen und Java könnte besser mit Windows arbeiten.
Hier mal ein paar Stichpunkte um die Diskussion anzutreiben
was haltet ihr von der Idee.....
was für Probleme müssten gelöst werden...
in welcher Form / Architektur könnte man es realisieren..
wäre es sinnvoll / möglich einen gemeinsamen Virtuell Maschine zu realisieren...
glaubt ihr das es überhaupt realisierbar ist...
könnte ihr euch Vorstellen bzw teilt ihr die Meinung das beide davon profitieren können oder seit ihr eher der Meinung alles Quatsch und dann wieso?
So ab sofort ist die Diskussion Runde eröffnet....
Gruss Patrick
- AUGE_OHR
- Marvin
- Beiträge: 12913
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: JAVA UND XBASE++
hi,
soll Java, Flash und Co nicht durch HTML5 abgelöst werden ?
Xbase++ basiert ja auf der dBase ][ was schon unter CP/M lief und eine "Datenbank" im DBF Format darstellt.
statt Windows API wurde aber eine "Sprache" eingeführt um im "Interpreter" Modus ein PRG "Script" auszuführen.
über dBase III++ und den Cl*pper Compiler kommt man dann zu Xbase++ was 32bit GUI Programme erstellen kann.
GUI Programme sind nun für den Windows Desktop gedacht, für die Internet Seite gibt es CXP (s.h. Alaska Website).
soll Java, Flash und Co nicht durch HTML5 abgelöst werden ?
Xbase++ basiert ja auf der dBase ][ was schon unter CP/M lief und eine "Datenbank" im DBF Format darstellt.
statt Windows API wurde aber eine "Sprache" eingeführt um im "Interpreter" Modus ein PRG "Script" auszuführen.
über dBase III++ und den Cl*pper Compiler kommt man dann zu Xbase++ was 32bit GUI Programme erstellen kann.
GUI Programme sind nun für den Windows Desktop gedacht, für die Internet Seite gibt es CXP (s.h. Alaska Website).
gruss by OHR
Jimmy
Jimmy
- brandelh
- Foren-Moderator
- Beiträge: 15707
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 71 Mal
- Danksagung erhalten: 38 Mal
- Kontaktdaten:
Re: JAVA UND XBASE++
Flash und Co, vielleicht auch Java Sript, aber nicht JAVAAUGE_OHR hat geschrieben:hi,
soll Java, Flash und Co nicht durch HTML5 abgelöst werden ?
Was ich bei der Frage oben vermisse ist die Erläuterung, was "Java ME/SE/EE" bedeuten.
Grundsätzlich kann man mit Xbase++ DLL Dateien aufrufen, die sich an die Standards halten (System-DLL oder mit C/C++, Delphi etc. und auch .NET).
Bei einigen Datentypen braucht man dann zusätzlich noch Hilfsbibliotheken (DOUBLE etc.)
Man kann auch über run bzw. runshell() ausführbare Programme zusätzlich starten.
Was grundsätzlich nicht geht ist GUI für andere Betriebssysteme.
Ein Consolenprogramm soll aber auf Linux oder Mac mit Emulatoren lauffähig sein (damit habe ich keine Erfahrung).
Was also genau meinst du ?
Gruß
Hubert
Hubert
- Martin Altmann
- Foren-Administrator
- Beiträge: 16555
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 116 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: JAVA UND XBASE++
Moin,
Mobile Edition/Standard Edition/Enterprise Edition
Viele Grüße,
Martin
ganz einfach:brandelh hat geschrieben:Was ich bei der Frage oben vermisse ist die Erläuterung, was "Java ME/SE/EE" bedeuten.
Mobile Edition/Standard Edition/Enterprise Edition
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15707
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 71 Mal
- Danksagung erhalten: 38 Mal
- Kontaktdaten:
Re: JAVA UND XBASE++
Aha, also Xbase++ mobile Edition gibt es nicht (ich schätze mal NIE),
Xbase++ als Paket ist immer gleich, die Unterscheidung kommt dann beim Wartungsvertrag (kein, Standard Sub, Professional Sub) ...
Es gibt aber einen anderen xBase/dbase/clipper Ableger, der dies unterstützen soll http://www.harbour-project.org/ das ist aber dann nicht Xbase++
Xbase++ als Paket ist immer gleich, die Unterscheidung kommt dann beim Wartungsvertrag (kein, Standard Sub, Professional Sub) ...
Es gibt aber einen anderen xBase/dbase/clipper Ableger, der dies unterstützen soll http://www.harbour-project.org/ das ist aber dann nicht Xbase++
Gruß
Hubert
Hubert
Re: JAVA UND XBASE++
Hey
Flash nachfolger soll/bzw ist ja Adobe Air.
Java hast sicherlich mit JavaScript verwechselt. Mach dir aber nichts draus, das tun sicherlich noch 1000 andere
Was nicht von der Hand abzuweisen ist, das HTML 5 und CSS 2.0 die Zukunft im Internet werden soll.... Wobei der Weg an JavaScript nicht vorbei geht...
Aber der Umbruch steht ja erst noch bevor. Silverlight und JavaFX sind auch noch da.. Hierbei geht es aber klar um die Darstellung von Webseiten...
Für Geschäftsprozesse / Datenhandling etc. werden immer mehr auf Applicationsserver ausgelagert. Ob als WebContainer oder für das Gesamtsystem.
Ist sicherlich nicht mehr nur den Grossen Firmen vorbehalten......
Was ich schon feststellen konnte, ist das immer mehr auch kleinere Anwendungsprogramme bereits in solchen Appl. Server eingebunden sind. Dadurch ergibt sich natürlich eine leichtere Verknüpfungen einzelner von einander getrennten Anwendungen....
Somit sind die Technologien Java ME Mobile / SE Standard / EE Enterprise Edition die Mittel um genau den Trend zu erfüllen.
Vom Prinzip ist .net der gleiche Ansatz bzw. die Lösung seitens Microsoft die ich mit Java / Xbase++ anstrebe...
Auch mir ist nicht entgangen das Microsoft wieder erfolgreich sehr aktiv geworden ist und mit SharePoint das Gegenstück zu Java EE ist.
Als Argument für die Verschmelzung mit Java würde ich folgende Punkte noch in den Raum werfen
1. Aus der Vergangenheit kennt man Microsoft nur (freundlich ausgedrückt) als ein geschlossenes System. Java hingegen wird vertreten durch JCP Executive Committee vertreten.(25 Parteien)
2. Java ist und wird es immer bleiben (plattformunabhängig). Somit kann man Java als oberste Schicht ansehen. Was ich ganz klar vermiese sind die Säulen in die Plattformspezifischen Bereiche. (ansätze sind vorhanden, aber nur ansätze). Somit würde sich eine ideale Ergänzung mit Xbase++ ergeben...
3. Für xbase++ wäre der Ansatz somit eine Erweiterung
Wo meint ihr könnte der richtige Ansatz sein.
Schnittstellen erstellen oder besser gemeinsame Laufzeitumgebung erschaffen?
Das stimmt nicht ganz...AUGE_OHR hat geschrieben:soll Java, Flash und Co nicht durch HTML5 abgelöst werden ?
Flash nachfolger soll/bzw ist ja Adobe Air.
Java hast sicherlich mit JavaScript verwechselt. Mach dir aber nichts draus, das tun sicherlich noch 1000 andere
Was nicht von der Hand abzuweisen ist, das HTML 5 und CSS 2.0 die Zukunft im Internet werden soll.... Wobei der Weg an JavaScript nicht vorbei geht...
Aber der Umbruch steht ja erst noch bevor. Silverlight und JavaFX sind auch noch da.. Hierbei geht es aber klar um die Darstellung von Webseiten...
Für Geschäftsprozesse / Datenhandling etc. werden immer mehr auf Applicationsserver ausgelagert. Ob als WebContainer oder für das Gesamtsystem.
Ist sicherlich nicht mehr nur den Grossen Firmen vorbehalten......
Was ich schon feststellen konnte, ist das immer mehr auch kleinere Anwendungsprogramme bereits in solchen Appl. Server eingebunden sind. Dadurch ergibt sich natürlich eine leichtere Verknüpfungen einzelner von einander getrennten Anwendungen....
Somit sind die Technologien Java ME Mobile / SE Standard / EE Enterprise Edition die Mittel um genau den Trend zu erfüllen.
Vom Prinzip ist .net der gleiche Ansatz bzw. die Lösung seitens Microsoft die ich mit Java / Xbase++ anstrebe...
Auch mir ist nicht entgangen das Microsoft wieder erfolgreich sehr aktiv geworden ist und mit SharePoint das Gegenstück zu Java EE ist.
Dadurch könnte man Xbase++ mit .Net und SharePoint verbinden und fast die gleichen Ansätze haben.brandelh hat geschrieben:die sich an die Standards halten (System-DLL oder mit C/C++, Delphi etc. und auch .NET).
Als Argument für die Verschmelzung mit Java würde ich folgende Punkte noch in den Raum werfen
1. Aus der Vergangenheit kennt man Microsoft nur (freundlich ausgedrückt) als ein geschlossenes System. Java hingegen wird vertreten durch JCP Executive Committee vertreten.(25 Parteien)
2. Java ist und wird es immer bleiben (plattformunabhängig). Somit kann man Java als oberste Schicht ansehen. Was ich ganz klar vermiese sind die Säulen in die Plattformspezifischen Bereiche. (ansätze sind vorhanden, aber nur ansätze). Somit würde sich eine ideale Ergänzung mit Xbase++ ergeben...
3. Für xbase++ wäre der Ansatz somit eine Erweiterung
Wo meint ihr könnte der richtige Ansatz sein.
Schnittstellen erstellen oder besser gemeinsame Laufzeitumgebung erschaffen?
Re: JAVA UND XBASE++
Ich möchte das Thema noch einmal hoch holen.
Für die Verschlüsselung rufe ich auds dem Programm ein Java Programm auf, das ich derzeit mit
RunShell ( idReceipt+".txt" , D:\WAWI\DATEN\RKSV\CONFIG\start.bat ) aufrufe.
In dieser Batch Datei steht folgender Befehl:
java -jar D:\WAWI\DATEN\RKSV\CONFIG\rksv.jar %1
Das Programm verrichtet hier seine Dienste anstandslos - ich möchte aber die "Krücke" mit der BAT Datei los werden.
Rufe ich RunShell ( direkt auf, so bekomme immer die Fehlermeldung:
Operation: RunShell
Betriebssystem Fehler:2
Das System kann die angegebene Datei nicht finden
Könnte mir bitte jemand einen Rat geben, wie ich die Parameter übergeben muss, damit der Aufruf ohne der .BAT
Datei funktioniert.
Herzlichen Dank
Für die Verschlüsselung rufe ich auds dem Programm ein Java Programm auf, das ich derzeit mit
RunShell ( idReceipt+".txt" , D:\WAWI\DATEN\RKSV\CONFIG\start.bat ) aufrufe.
In dieser Batch Datei steht folgender Befehl:
java -jar D:\WAWI\DATEN\RKSV\CONFIG\rksv.jar %1
Das Programm verrichtet hier seine Dienste anstandslos - ich möchte aber die "Krücke" mit der BAT Datei los werden.
Rufe ich RunShell ( direkt auf, so bekomme immer die Fehlermeldung:
Operation: RunShell
Betriebssystem Fehler:2
Das System kann die angegebene Datei nicht finden
Könnte mir bitte jemand einen Rat geben, wie ich die Parameter übergeben muss, damit der Aufruf ohne der .BAT
Datei funktioniert.
Herzlichen Dank
- brandelh
- Foren-Moderator
- Beiträge: 15707
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 71 Mal
- Danksagung erhalten: 38 Mal
- Kontaktdaten:
Re: JAVA UND XBASE++
Hi, sicher hast du oben die Anführungszeichen in Runshell vergessen, aber aus dem was du da zeigst würde ich das so vermuten:
wenn ich Acrobat mit einer PDF zum Anzeigen starte (nichts anderes als den Javainterpreter mit Javacode)
ermittle ich zuerst den Pfad und die EXE die sich um PDF kümmern und übergebe EXE und Dokument mit Pfad, funktioniert einwandfrei:
Code: Alles auswählen
idReceipt // wichtig, hier muss der komplette Pfad angegeben werden !
cJavaCmd := [java -jar "D:\WAWI\DATEN\RKSV\CONFIG\rksv.jar" "]+idReceipt+[.txt"] // die [] entsprechen ' ' oder auch " " in Xbase.
// Da Pfade auch Blanks enthalten können, gebe ich das jetzt so ein " " wird dann auf der CMD Ebene als Dateinamen begrenzer benutzt
// für die Xbase++ Sprachebene nutze ich gern [ ] da dies besser lesbar ist als ' '
*** Eventuell muss man bei JAVA auch den kompletten Pfad angeben ...
runshell(, cJavaCmd ) // sollte funktionieren, ansonsten ...
ermittle ich zuerst den Pfad und die EXE die sich um PDF kümmern und übergebe EXE und Dokument mit Pfad, funktioniert einwandfrei:
Code: Alles auswählen
if file(cPfad+cPDF)
if ! file(cAcrobat)
cAcrobat := GetStandardProgramm(cPDF, cPfad)
endif
runshell(cPfad+cPDF,cAcrobat,.t.)
endif
return
*--------------------------------------------------------------------------
#include "ot4xb.ch"
function GetStandardProgramm(cFile, cPath) // cPath force to EXE
local cExe := ChrR(0,260) // MAX_PATH is 260
if empty(cPath)
cPath := cAppDir()
endif
if @shell32:FindExecutableA(cFile, cPath, @cExe) < 32
cExe := ""
else
cExe := TrimZ(cExe)
end
return cExe
Gruß
Hubert
Hubert
Re: JAVA UND XBASE++
Danke Hubert!
ZU Allererst herzlichen Dank für deine Hilfe !!
Ich hab das heute Nachmittag einfach nicht zum laufen gebracht. Und wie es so oft im Leben ist, und man etwas Abstand gewonnen hat, kommen andere Ideen.
ich habe das jetzt folgendermaßen gelöst:
ShellExecuteA( AppDesktop():GetHWND(), "open" , "D:\WAWI\DATEN\RKSV\CONFIG\rksv.jar" , idReceipt+".txt" , "java -jar" , SW_NORMAL )
Läuft einwandfrei
EDIT:
Gibt es eine Einstellung um ShellExecuteA synchron oder asynchron laufen zu lassen?
Deine Variante werde ich morgen mal versuchen - Das lässt das Ego schon nicht zu , dass das bei mir nicht klappte!
Gruß, Bernhard
ZU Allererst herzlichen Dank für deine Hilfe !!
Ich hab das heute Nachmittag einfach nicht zum laufen gebracht. Und wie es so oft im Leben ist, und man etwas Abstand gewonnen hat, kommen andere Ideen.
ich habe das jetzt folgendermaßen gelöst:
ShellExecuteA( AppDesktop():GetHWND(), "open" , "D:\WAWI\DATEN\RKSV\CONFIG\rksv.jar" , idReceipt+".txt" , "java -jar" , SW_NORMAL )
Läuft einwandfrei
EDIT:
Gibt es eine Einstellung um ShellExecuteA synchron oder asynchron laufen zu lassen?
Deine Variante werde ich morgen mal versuchen - Das lässt das Ego schon nicht zu , dass das bei mir nicht klappte!
Gruß, Bernhard