Salve,
sono un novellino di WCF, e da alcuni giorni non riesco a trovare nessun esempio per risolvere il mio problema, spero che qualcuno di voi possa aiutarmi.
Vi espongo la situazione.
Devo creare una libreria con WCF che deve essere richiamata da una web application.
Questa libreria a sua volta deve invocare i metodi di un web service java, elaborare i risultati ottenuti e passarli alla web application chiamante.
La situazione è piu' o meno questa:
WEB APPLICATION --------> WCF ---------> WEB SERVICE JAVA
ho aggiunto una Service Reference che punta al servizio Java e in effetti vedo i metodi del web service java come se fosse una classe scritta da me.
Ora però in fase di esecuzione ottengo il seguente errore:
"Errore durante la ricezione della risposta HTTP a http://localhost/Service.svc. È possibile che il binding dell'endpoint del servizio non utilizzi il protocollo HTTP o che un contesto di richiesta HTTP sia stato interrotto dal server (probabilmente a causa dell'arresto del server). Per ulteriori informazioni, vedere i registri del server."
suppongo ci sia qualche errore di configurazione, infatti il web service java a cui faccio riferimento lavora su https mentre la web application locale su http.
Vi posto anche la parte del web.config, magari mi sapete dire dove sbaglio.
<system.serviceModel>
<services>
<service behaviorConfiguration="WCF.ServiceBehavior" name="WCF.Service">
<endpoint address="http://localhost/Service.svc" binding="wsHttpBinding" contract="WCF.IService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<bindings>
<wsHttpBinding>
<binding name="wsHttpEndpointBinding">
<security mode="Transport">
<message clientCredentialType="None"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="WCF.Service1Behavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
<serviceCredentials>
<clientCertificate>
<authentication certificateValidationMode="PeerOrChainTrust" revocationMode="NoCheck"/>
</clientCertificate>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="ServiceReference1.ServizioJ avaCertClientBehavior" name="ServiceReference1.ServizioJavaCertClient">
<endpoint address="https://xxxx" binding="wsHttpBinding"
contract="ServiceReference1.ServizioJavaCertClient ">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<bindings>
<wsHttpBinding>
<binding name="wsHttpEndpointBinding">
<security mode="Transport">
<message clientCredentialType="None"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceReference1.ServizioJavaCertClientBeha vior">
<serviceMetadata httpsGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
<serviceCredentials>
<clientCertificate>
<authentication certificateValidationMode="PeerOrChainTrust" revocationMode="NoCheck"/>
</clientCertificate>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<client>
<endpoint address="https://xxxxx" binding="wsHttpBinding"
contract="ServiceReference1.ServizioJavaCertClient " >
<identity>
<dns value="" />
</identity>
</endpoint>
</client>
</system.serviceModel>