サンプルを使用する場合、axis2Server サービスは非常に優れています。しかし、javax を使用して独自の Web サービスを作成したときに、問題が発生しました。
wso2 esb 4.60のデフォルト構成を使用しました
ウェブサービス:
import javax.jws.WebParam;
import javax.jws.WebService;
@WebService
public class Lpu {
public boolean scheduleAnAppointment(@WebParam(name = "time") Integer time) {
return true;
}
}
Web サービスの開始:
import javax.xml.ws.Endpoint;
public class Server {
public static void main(String[] args)
{
Endpoint.publish("http://localhost:8090/WebServices/lpu", new Lpu());
}
}
構成 esb:
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://ws.apache.org/ns/synapse">
<sequence name="main">
<in>
<log level="full"/>
<send>
<endpoint>
<address uri="http://localhost:8090/WebServices/lpu"/>
</endpoint>
</send>
</in>
<out>
<log level="full"/>
<send/>
</out>
</sequence>
</definitions>
応答:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<axis2ns1:binary xmlns:axis2ns1="http://ws.apache.org/commons/ns/payload">PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxTOkVudmVsb3BlIHhtbG5zOlM9Imh0dHA6Ly9zY2hlbWFzLnhtbHNvYXAub3JnL3NvYXAvZW52ZWxvcGUvIj48UzpCb2R5PjxuczI6c2NoZWR1bGVBbkFwcG9pbnRtZW50UmVzcG9uc2UgeG1sbnM6bnMyPSJodHRwOi8vZmVyLndlYnNlcnZpY2UvIj48cmV0dXJuPmZhbHNlPC9yZXR1cm4+PC9uczI6c2NoZWR1bGVBbkFwcG9pbnRtZW50UmVzcG9uc2U+PC9TOkJvZHk+PC9TOkVudmVsb3BlPg==</axis2ns1:binary>
</soapenv:Body>
</soapenv:Envelope>
私は取得したい:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:scheduleAnAppointmentResponse xmlns:ns2="http://lpu.webservice/">
<return>true</return>
</ns2:scheduleAnAppointmentResponse>
</S:Body>
</S:Envelope>
私のお願い
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:fer="http://lpu.webservice/">
<soapenv:Header/>
<soapenv:Body>
<lpu:scheduleAnAppointment>
<time>12</time>
</lpu:scheduleAnAppointment>
</soapenv:Body>
</soapenv:Envelope>