Ik ben bezig met een Webservice die message style berichten moet verwerken.
nu had ik ergens gelezen dat een webservice dan een van de volgende methodes moet bevatten.
Als ik dan bijvoorbeeld de volgende methode implementeer bij de service op de volgende wijze krijg ik keurig mijn verstuurde soapbericht terug.
Als ik dan vervolgens probeer een andere methode te implementeren krijg ik een foutmelding. (Haal dan de Elements[] methode weg, anders wordt die aangeroepen.)
Vanaf de Client word er gewoon een SOAPEnvelope verstuurd...
Als je meer informatie nodig hebt, zeg het maar. Ik hoop dat iemand me kan helpen,het zal vast wel iets heel simpels zijn...
nu had ik ergens gelezen dat een webservice dan een van de volgende methodes moet bevatten.
code:
1
2
3
4
| public Element [] method(Element [] bodies); public SOAPBodyElement [] method (SOAPBodyElement [] bodies); public Document method(Document body); public void method(SOAPEnvelope req, SOAPEnvelope resp); |
Als ik dan bijvoorbeeld de volgende methode implementeer bij de service op de volgende wijze krijg ik keurig mijn verstuurde soapbericht terug.
code:
1
2
3
4
| public Element[] echoElements(Element [] elems) {
System.out.println("Element[]");
return elems;
} |
Als ik dan vervolgens probeer een andere methode te implementeren krijg ik een foutmelding. (Haal dan de Elements[] methode weg, anders wordt die aangeroepen.)
code:
1
2
3
4
5
| public SOAPBodyElement [] method (SOAPBodyElement [] bodies)
{
System.out.println("SOAPBodyElement");
return bodies;
} |
code:
1
2
3
4
5
6
7
8
| AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: Couldnt find an appropriate operation for XML QName {0}
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:Couldnt find an appropriate operation for XML QName {0} |
Vanaf de Client word er gewoon een SOAPEnvelope verstuurd...
code:
1
2
3
4
5
6
7
| public SOAPEnvelope doCall(Object object, Call call) throws JAXBException, SAXException, ParserConfigurationException, IOException, AxisFault, Exception
{
//type SOAPEnvelope => org.apache.axis.message.SOAPEnvelope;
SOAPEnvelope env = getAsSOAP(object);
SOAPEnvelope returnEnv = call.invoke(env);
return returnEnv;
} |
Als je meer informatie nodig hebt, zeg het maar. Ik hoop dat iemand me kan helpen,het zal vast wel iets heel simpels zijn...
Water is pas echt lekker als het bij de brouwerij is geweest...