Integration mit TERYT – Webdienst der polnischen RegierungJava

Java-Forum
Anonymous
 Integration mit TERYT – Webdienst der polnischen Regierung

Post by Anonymous »

Ich versuche (ohne Erfolg), mit Java eine Verbindung zum folgenden WS herzustellen:
Ich habe erfolglos versucht, Soapui zu verwenden. Ich habe die Basis- und NTLM-Authentifizierung ausprobiert und erhalte immer die folgende Fehlermeldung:

Code: Select all


http://www.w3.org/2005/08/addressing/soap/fault



a:InvalidSecurity
An error occurred when verifying security for the message.



Die offiziellen Anweisungen für diesen Webdienst zeigen das folgende Beispiel für die Verbindung mit C#. Ich habe das nicht getestet, gehe aber davon aus, dass es korrekt funktioniert.

Code: Select all

try {
var proxy = new ChannelFactory("custom");
proxy.Credentials.UserName.UserName = login;
proxy.Credentials.UserName.Password = haslo;
var result = proxy.CreateChannel();
var test = result.CzyZalogowany(); // should return true if connected correctly
} catch (Exception ex) { }
Und folgende Einstellung:

Code: Select all

   














Also habe ich versucht, eine Verbindung mit Java wie folgt herzustellen:

Code: Select all

public static void main(String[] args) {
try {
final String wsdlResourcePath = "wsdl/jaxb/teryt/terytws1.wsdl";
final String url = "https://uslugaterytws1test.stat.gov.pl/TerytWs1.svc";
ITerytWs1 teryt = createSoapEndpoint((wsdlLocation) -> new TerytWs1(wsdlLocation).getCustom(), wsdlResourcePath, url);
System.out.println(teryt.czyZalogowany());
} catch (Exception e) { }
}

private static  SOAP createSoapEndpoint(SoapCreator soapCreator, String wsdlResourcePath, String url) {
ClassLoader cl = Thread.currentThread().getContextClassLoader();
URL wsdlLocation = cl.getResource(wsdlResourcePath);
SOAP soap = soapCreator.create(wsdlLocation);

BindingProvider provider = (BindingProvider) soap;

Map context = provider.getRequestContext();
context.put(BindingProvider.USERNAME_PROPERTY, "TestPubliczny");
context.put(BindingProvider.PASSWORD_PROPERTY, "1234abcd");
context.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url);
return soap;
}
Leider friert der Code während des Aufrufs „teryt.czyZalogowany()“ ein. Gibt keine Zeitüberschreitung – irgendetwas, nur die Verarbeitung dieser Zeile für immer oder sie wird daran blockiert.

Mein Java-Code erzeugt folgende Warnmeldungen:


WARNUNG: WSP0075: Richtlinienzusicherung
„{http://schemas.xmlsoap.org/ws/2005/07/s ... tingTokens
wurde als „UNBEKANNT“ bewertet. lip 27, 2017 11:58:35
[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector]
selectAlternatives WARNUNG: WSP0075: Richtlinienzusicherung
"{http:// schemas.xmlsoap.org/ws/2005/07/securitypolicy}TransportBinding“
wurde ausgewertet als „UNBEKANNT“. lip 27, 2017 11:58:35
[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector]
selectAlternatives WARNUNG: WSP0075: Richtlinienzusicherung
"{http:// schemas.xmlsoap.org/ws/2005/07/securitypolicy}Trust10“ war
als „UNBEKANNT“ bewertet. lip 27, 2017 11:58:35
[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector]
selectAlternatives WARNUNG: WSP0075: Richtlinienzusicherung
"{http:// schemas.xmlsoap.org/ws/2005/07/securitypolicy}Wss11“ war
als „UNBEKANNT“ bewertet. lip 27, 2017 11:58:35
[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector]
selectAlternatives WARNUNG: WSP0075: Richtlinienzusicherung
"{http:// www.w3.org/2006/05/addressing/wsdl}UsingAddressing“ war
als „UNBEKANNT“ bewertet. lip 27, 2017 11:58:35
[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector]
selectAlternatives WARNUNG: WSP0019: Suboptimale Richtlinienalternative
auf der Clientseite ausgewählt mit Fitness „UNBEKANNT“.


Vielleicht weiß jemand mehr über ein solches Problem informieren oder sich mit seiner eigenen Konfiguration sofort mit diesem WS verbinden können - im Moment habe ich keine Ahnung, was das Problem sein könnte, und ich sehe darin eine "zeitverschwendende" Perspektive vor mir... also bitte helfen Sie.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post