J'ai créé une référence de service WCF à partir d'un fichier WSDL fourni. en C# i ai créé une instance du client proxy avec une liaison de base et appelé la méthode requise:Erreur d'appel de service Web
public static bool main()
{
Debugger.Launch();
var binding = new BasicHttpsBinding();
binding.Security.Mode = BasicHttpsSecurityMode.Transport;
binding.TextEncoding = System.Text.Encoding.UTF8;
var remoteAddress = new System.ServiceModel.EndpointAddress("https://tester.mysite.de:8443/webservice/OrderNumber");
using (var orderNumberClient = new orderNumberClient(new System.ServiceModel.BasicHttpBinding(BasicHttpSecurityMode.Transport), remoteAddress))
{
string IDSystem = "123";
string IDOSystem = "abc";
//set timeout
orderNumberClient.Endpoint.Binding.SendTimeout = new TimeSpan(0, 0, 0, 10000);
orderNumberClient.ClientCredentials.UserName.UserName = "test";
orderNumberClient.ClientCredentials.UserName.Password = "test";
//call web service method
string productResponse = orderNumberClient.getNewOrderNumber(IDSystem, "01", IDOSystem); ;
MessageBox.Show(productResponse);
}
return true;
}
Malheureusement, je reçois une erreur assez inutile quand j'appelle la méthode « getNewOrderNumber »:
System.Reflection.TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht. ---> System.ServiceModel.FaultException: traitement WebService Exception
trace de pile du serveur:
bei System.ServiceModel.Channels.ServiceChannel.HandleReply (opération ProxyOperationRuntime , ProxyRpc & RPC)
bei System.ServiceModel.Channels.ServiceChannel.Call (Action de chaîne, Boolean oneway, opération ProxyOperationRuntime, Object [] ins, Object [] outs, TimeSpan timeout)
bei System.ServiceModel.Channels.ServiceChannelProxy.InvokeService (IMethodCallMessage methodCall, opération ProxyOperationRuntime)
...
Ce n'est pas une erreur sur le côté service Web qui fonctionne très bien comme dans SoapUI, suis-je peut-être manquer quelque chose dans la liaison?
Espérons que quelqu'un de mieux informé sur les services Web peut mettre en lumière la cause première.
Je suis d'accord que c'est une exception assez vague. Je crois que celui-ci devrait avoir une exception intérieure qui sera plus utile. Note: Il peut être imbriqué à quelques couches de profondeur. Continuez à vérifier vos exceptions internes jusqu'à ce que vous n'en ayez plus. – Vahlkron
Il n'y avait rien à voir de substance dans l'exception intérieure non plus :(Heureusement, j'ai découvert par le client que je manquais un en-tête obligatoire! Je posterai une réponse. –