在生成一个webservice 后,如何对它进行测试,在eclipse的wtp中,提供了一个基于wsdl生产客户端代理,并生成jsp进行测试过程:
1、通过打开file->new->other->web->web service client对话框
2、在service defination 中输入wsdl的url(可以是一个本地文件,也可以是一个http的地址),在例子中输入了一个http的wsdl的位置:
http://localhost:9000/org/apache/cxf/dosgi/samples/springdm/DinnerService?wsdl
3、按照向导完成client的生产过程,会生成以下的工程文件(不包括用红线圈起来的TestCase):
4、这个web工程启动以后,就可以访问TestClient.jsp(http://localhost:8080/TestWebService/sampleDinnerServicePortTypeProxy/TestClient.jsp),对web service进行访问了:
5、通过TestCase对Web Service进行访问,在这个axis生成的客户端中,proxy类是调用web service的入口,在工程中,进行的TestCase测试如下:
package org.apache.cxf.dosgi.samples.springdm;
import java.rmi.RemoteException;
import junit.framework.TestCase;
public class TestService extends TestCase {
public void testService()
{
DinnerServicePortTypeProxy proxy = new DinnerServicePortTypeProxy();
try {
System.out.println("call osgi service :"+proxy.testService());
Restaurant[] list = proxy.findRestaurants("hello");
for(int i=0;i<list.length;i++)
{
System.out.println(list[i].getAddress());
}
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}