繁体   English   中英

创建一个Java Web服务客户端

[英]Creating a Java web service client

最近几天,我在互联网上进行了搜索以解决此问题,但目前还无法解决。 问题是这样的。我有一个在Eclipse Indigo中实现的简单Web服务,如下所示

package com.testvtfour.ws;

public class Customer {

private String name;

public void setName(String name) {
    this.name = name;
}

public String getName() {
    return name;
}
}

Web服务部分是完美的。 我使用Axis2作为Soap引擎,使用Tomcat 7作为服务器。 当我尝试使用此Web服务时出现问题。 我在eclipse和Axis2中创建了Web服务客户端,自动生成了“ CusstomerCallBackHandler”和“ CustomerStub”。 以下是已实施的客户

package com.testvtfour.ws;
import java.rmi.RemoteException;

import com.testvtfour.ws.CustomerStub.SetName;
import com.testvtfour.ws.CustomerStub.GetNameResponse;
public class TestClient {
public static void main(String[] args)throws RemoteException{
    CustomerStub stub = new CustomerStub();
    com.testvtfour.ws.CustomerStub.SetName obj = new 
        com.testvtfour.ws.CustomerStub.SetName();
    obj.setName("Grant");
    stub.setName(obj);

    com.testvtfour.ws.CustomerStub.GetNameResponse res = stub.getName();
    System.out.println(res.get_return());
}
}

但这总是打印“ null”。 这是为什么? 我该如何解决? 我想知道这种客户端的更新值可以在Android应用程序中显示。 因为这是我项目的第二部分。 请帮我。 谢谢。

Axis2 Web服务通常是无状态的。 这意味着在与调用setName()不同的实例上调用getName() ,因此,当您尝试检索它时, name为null。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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