Le point de terminaison de référence (EPR) pour l'Opération n'est pas trouvé à l'aide de glassfish n wso2esb
Je suis nouveau sur wso2 esb.
Je suis en train d'essayer un service web simple programme.
package testmart;
import javax.jws.WebService;
@WebService
public class testone {
public String testMethod()
{
return "success";
}
}
Je suis en utilisant serveur glassfish, créé un proxy sur wso2 esb en donnant des détails suivants:
url du service web: http://localhost:8080/testmart/testoneService
url wsdl :http://localhost:8080/testmart/testoneService?wsdl
Après la création de son affiche "succès" message. Mais quand je l'ai tester, l'erreur suivante apparaît:
<soapenv:Fault xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:axis2ns7="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Code>
<soapenv:Value>axis2ns7:Client</soapenv:Value>
</soapenv:Code>
<soapenv:Reason>
<soapenv:Text xml:lang="en-US" xmlns:xml="http://www.w3.org/XML/1998/namespace">
The endpoint reference (EPR) for the Operation not found is /services/testmart1.testmart1HttpSoap12Endpoint and the WSA Action = null. If this EPR was previously reachable, please contact the server administrator.
</soapenv:Text>
</soapenv:Reason>
<soapenv:Detail/>
</soapenv:Fault>
Ci-dessous est ma gde vue de source de code:
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://ws.apache.org/ns/synapse">
<registry provider="org.wso2.carbon.mediation.registry.WSO2Registry">
<parameter name="cachableDuration">15000</parameter>
</registry>
<proxy name="testmart1"
transports="https http local"
startOnLoad="true"
trace="disable">
<description/>
<target>
<endpoint>
<address uri="http://localhost:8080/testmart/testoneService"/>
</endpoint>
<outSequence>
<send/>
</outSequence>
</target>
<publishWSDL uri="http://localhost:8080/testmart/testoneService?wsdl"/>
</proxy>
<sequence name="fault">
<log level="full">
<property name="MESSAGE" value="Executing default 'fault' sequence"/>
<property name="ERROR_CODE" expression="get-property('ERROR_CODE')"/>
<property name="ERROR_MESSAGE" expression="get-property('ERROR_MESSAGE')"/>
</log>
<drop/>
</sequence>
<sequence name="main">
<in>
<log level="full"/>
<filter source="get-property('To')" regex="http://localhost:9000.*">
<send/>
</filter>
</in>
<out>
<send/>
</out>
<description>The main sequence for the message mediation</description>
</sequence>
</definitions>
J'ai lu tous les post à propos de cette erreur, mais n'a pas pu résoudre ce problème.
Toute sorte d'aide serait très apprécié car c'était la première fois que j'ai essayé et collé d'heures.
Merci à l'avance.
Vous devez vous connecter pour publier un commentaire.
Lorsque vous envoyez la demande de vérifier si le SOAPAction est réglé. Si pas, vous pouvez le préciser dans deux façons:
Ensemble de la propriété avant de l'envoyer médiateur
Vous pouvez spécifier le SOAPAction dans le code côté client. Spécifier dans les options comme indiqué ci-dessous.
dans l'interface web de WSO2 ESB cliquez sur "voir la Source" pour votre proxy et de mettre ces lignes:
avant la balise:
<description/>
Sur Websphere Application Server, dans la même situation, elle a permis de supprimer les dossiers temporaires, tandis que le serveur a été arrêté.
Vous utilisez Wso2ESB, de sorte que vous devez avoir besoin de spécifier comme ceci:
@WebMethod(action = "testMethod", operationName = "testMethod")
public String testMethod()
Ci-dessus annotation doit être utilisé dans le service Web de mise en œuvre de la classe.