Je gère une application Java héritée qui utilise Jacob, ou Java-COM Bridge, pour effectuer des appels via les interfaces COM de MS VBA et MS Word. J'ai regardé com4j de Sun, et il semble prometteur.com4j versus jacob pour appeler les méthodes COM depuis Java
La raison pour laquelle cela me semble bon est qu'il utilise la liaison vtable aux méthodes, au lieu de IDispatch. En supposant que tous les objets COM que nous manipulons présentent des interfaces vtable, il semble plus propre de les utiliser à la place de IDispatch. À l'époque où COM et CORBA utilisaient les technologies d'interface binaire à chaud, il me semble me rappeler que la liaison anticipée via le vtable donnait de meilleures performances que la liaison tardive via IDispatch.
Est-ce que quelqu'un a migré de Jacob vers com4j? Si oui, quels ont été les pièges et les leçons apprises?
Merci. Je ne voulais pas entrer dans la fuite de mémoire de Jacob sans fournir de détails, mais nous l'avons vu aussi. Je pense que je vais faire un projet de démonstration avec com4j, et un avec Jacob, et expérimenter les différences de première main. –
Im regardant aller de com4j à jacob parce que, malheureusement, com4j ne fonctionne qu'avec Java 32 bits pas 64 bits Java, semble donc mort dans l'eau à venir. –
En tant que mise à jour du commentaire de @PaulTaylor, com4j a depuis été [mis à jour avec le support Java 64 bits] (http://kohsuke.org/2012/04/27/com4j-updates/). –