Kurze Antwort: Ja. JDE kann mit einer Reihe von externen Objekten/Diensten/Adaptern kommunizieren.
Lange Rede, kurzer Sinn: Ihre Möglichkeiten hängen davon ab, welche Version von JDE Ihr Kunde verwendet und welche Anforderungen an die Kommunikation gestellt werden.
Da Sie erwähnen, dass sie eine API aufrufen wollen, nehme ich an, dass sie eine ziemlich aktuelle Version haben (sagen wir, ein OneWorld/EnterpriseOne-Produkt, Version XE oder neuer) und dass sie eine "Online-Schnittstelle" benötigen (d. h. sie rufen die API von JDE aus auf und warten, bis die Verarbeitung abgeschlossen ist und etwas zurückgegeben wird, bevor ihr JDE-Programm weiterläuft), anstatt eine "Stapelverarbeitung".
Die beste Option wäre meines Erachtens die GMO. JDE ist konform mit COM. Ihr Kunde muss sich mit der JDE-Interoperabilität auskennen, insbesondere mit dem Aufrufen einer externen API unter Verwendung von COM und GenCOM (so würde die API für die Verwendung in JDE verpackt werden).
Kann es eine Verbindung zu Java herstellen? Ja. Ähnlich wie bei COM müssen Sie den zu konsumierenden Code verpacken/einkapseln.
Kann es XML verwenden? Ja.
Was ist mit Adaptern? Ja. MQ WebSphere, MSMQ.
Webservices? Das mag sein. Das hängt davon ab, welche Version von JDE verwendet wird. Neuere Versionen beherrschen Webservices ziemlich gut. Sie können eine Geschäftsfunktion von JDE aus bereitstellen, die von anderen genutzt werden kann, und Sie können auch Dienste von anderen nutzen. Wenn also Ihre API in einem Webservice verwendet werden kann, könnte JDE sie nutzen (wiederum abhängig von der verwendeten Version).
Für Webservices können Sie wSG (Web Services Gateway), Business Services Server und JMQ Queue/Topic für J2EE Connectivity verwenden.
Andere verfügbare Methoden sind eher für die Stapelverarbeitung geeignet: EDI, OSA, z-Tabellen, Tabellenkonvertierungen.
Oracle hat ziemlich gute Anleitungen zu den JDE-Tools (Sie müssen nach EnterpriseOne Tools Version 8.98 Guides suchen), speziell für WebServices, da diese eine Neuheit sind.