简体   繁体   中英

JAVA Web Service with SOAP Client Objective C---Response problem

I have this web service in Java:

@WebService(serviceName = "Catalogo_V1")
public class Catalogo_V1 {

    /** This is a sample web service operation */
    @WebMethod(operationName = "hello")
    public String hello(@WebParam(name = "name") String txt) 
    {
        return "Hello " + txt + " !";
    }
}

and this part in Objective C (after generate code with WSDL2ObjC):

- (IBAction)buttonPressed:(id)sender 
{

    Catalogo_V1PortBinding *binding = [[Catalogo_V1Svc Catalogo_V1PortBinding] initWithAddress:@"http://localhost:8080/WSServer/Catalogo_V1.wsdl"];
    binding.logXMLInOut = YES;  // to get logging to the console.

    Catalogo_V1Svc_hello *r = [[Catalogo_V1Svc_hello alloc] init];

    //NSLog(@"request: %@",r);

    [r setName:i.text];
    //NSLog(@"string: %@ ",i.text);

    Catalogo_V1PortBindingResponse *resp = [binding helloUsingParameters:(Catalogo_V1Svc_hello *)r];

    NSLog(@"response: %@",resp);

    for (id mine in resp.bodyParts)
    {
        if ([mine isKindOfClass:[Catalogo_V1Svc_helloResponse class]])
        {
            //lab.text = [mine Catalogo_V1Svc_helloResponse];
        }
    }
}

and my console show this messages:

2

011-08-30 17:00:11.572 Catalogo-V1[3876:207] OutputHeaders:
{
    "Content-Length" = 451;
    "Content-Type" = "text/xml; charset=utf-8";
    Host = localhost;
    Soapaction = "";
    "User-Agent" = wsdl2objc;
}
2011-08-30 17:00:11.572 Catalogo-V1[3876:207] OutputBody:
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:Catalogo_V1Svc="http://org/" xsl:version="1.0">
  <soap:Body>
    <Catalogo_V1Svc:hello>
      <Catalogo_V1Svc:name>ddddddd</Catalogo_V1Svc:name>
    </Catalogo_V1Svc:hello>
  </soap:Body>
</soap:Envelope>
2011-08-30 17:00:11.593 Catalogo-V1[3876:207] Response HTTP:
<NSHTTPURLResponse: 0x5b1ffd0>
2011-08-30 17:00:11.593 Catalogo-V1[3876:207] ResponseStatus: 404
2011-08-30 17:00:11.593 Catalogo-V1[3876:207] ResponseHeaders:
{
    "Content-Length" = 1067;
    "Content-Type" = "text/html";
    Date = "Tue, 30 Aug 2011 15:00:11 GMT";
    Server = "GlassFish Server Open Source Edition 3.1.1";
    "X-Powered-By" = "Servlet/3.0 JSP/2.2 (GlassFish Server Open Source Edition 3.1.1 Java/Apple Inc./1.6)";
}
2011-08-30 17:00:11.617 Catalogo-V1[3876:207] ResponseError:
Error Domain=Catalogo_V1PortBindingResponseHTTP Code=404 "not found" UserInfo=0x5b2a320 {NSLocalizedDescription=not found}
2011-08-30 17:00:11.618 Catalogo-V1[3876:207] response: <Catalogo_V1PortBindingResponse: 0x5b25bd0>

the output its correct but i dont recieve any response....

Your server responds with HTTP status 404 (File Not Found) , which means that the client is posting its SOAP request to an endpoint (URL) that the server isn't configured to respond to.

For example, your client might be directed at http://localhost:8080/foo but the server is listening at http://localhost/bar .

Check the endpoint URL on your client and the server configuration to ensure it is listening at the same URL.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM