Ich weiß nicht genau Grund, warum es nicht die richtige Klasse finden kann, aber ich denke, es ist ein Problem mit (oder Funktion) Java-Klassenlader in Oracle-Datenbank, wenn es nach Ressourcen sucht.
Ich habe JAX-WS Referenzimplementierung von java.net mit all seinen Abhängigkeiten mit dem Benutzer SYS (mit den öffentlichen Zugriffsberechtigungen und öffentlichen Synonymen) geladen. Aber die Klassen von Service WSDL generiert ich in Benutzer SCOTT Schema geladen. Und aus irgendeinem Grund, wenn SCOTT Prozeduren ausführt, die Dienst verwenden, sucht javax.xml.ws.spi.FactoryFinder
nach Implementierungsname in META-INF/services/javax.xml.ws.spi.Provider
Ressource (die den richtigen Wert com.sun.xml.ws.spi.ProviderImpl
haben) aber kann diese Ressource nicht finden, also versucht, Anbieter von hart codierten Klassenname (com.sun.xml.internal.ws.spi.ProviderImpl
) und zu laden schlägt fehl.
Lösung für mich war, alle META-INF/services/*
Dateien aus allen JAX-WS RI und Abhängigkeiten JAR SCOTT Schema zu laden. Alternativer Weg könnte sein, alle JAX-WS RI, Abhängigkeiten und final Programm auf das gleiche Schema zu laden.
Bitte geben Sie weitere Details an: welche Art von Webservice-Client. Vielleicht würde ein Code-Beitrag helfen. –
der Web-Service-Client ist für das Senden von SMS (Textnachrichten) und seine nach dem Laden der Klassen nach Oracle verwendet werden soll und aus diesem Grund bin ich gezwungen, JDK 1.5 – user2079954
zu verwenden Alle Vorschläge werden in der Tat geschätzt – user2079954