J'essaie d'utiliser le fuelsdk dans un environnement osgi dans AEM. Je reçois cette erreur -java.lang.ClassCastException: com.sun.xml.internal.ws.client.sei.SEIStub ne peut pas être converti en org.apache.cxf.frontend.clientproxy AEM OSGi
java.lang.ClassCastException: com.sun.xml.internal.ws.client.sei.SEIStub ne peut pas être jeté à org.apache.cxf.frontend.ClientProxy
C'est car OSGi charge le bundle système avant le bundle dans lequel la dépendance de fuelsdk a été intégrée. Le paquet est résolu. cette erreur est pendant l'exécution.
Comment puis-je forcer le chargeur de classe OSGi à sélectionner org.apache.cxf.frontend.ClientProxy au lieu de com.sun.xml.internal.ws.client.sei.SEIStub lors de l'exécution? Puis-je utiliser la combinaison de la directive 'uses'; et/ou importer/exporter des paquets?
J'ai suggéré de créer le client à l'aide -
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.getInInterceptors().add(new LoggingInInterceptor());
factory.getOutInterceptors().add(new LoggingOutInterceptor());
factory.setServiceClass(HelloWorld.class);
factory.setAddress("http://localhost:9000/helloWorld");
soapClient = (Client) factory.create();
Je voudrais savoir quelle classe dois-je utiliser dans factory.setServiceClass();
et
quelle adresse dois-je utiliser dans factory.setAddress(); est-ce l'adresse du point de terminaison? - https://webservice.s6.exacttarget.com/Service.asmx
aide est très appréciée Merci
Malheureusement; cela n'a aucun effet. L'erreur est sur cette ligne-- soapClient = ClientProxy.getClient (soap); L'erreur est au moment de l'exécution; le bundle se résout correctement. java.lang.ClassCastException: com.sun.xml.internal.ws.client.sei.SEIStub ne peut pas être converti en org.apache.cxf.frontend.ClientProxy Puis-je forcer le classloader du bundle à choisir org.apache.cxf.frontend.ClientProxy au lieu de com.sun.xml.internal.ws.client.sei.SEIStub seulement pour ce paquet? – cqsapientuser
Merci d'avoir suggéré l'approche; même si nous avons maintenant une nouvelle erreur, mais cela a aidé à aller de l'avant. Et a également appris une nouvelle chose liée à OSGi. – cqsapientuser