最近受栋兄影响接触了webservice并参照他的例子下做了一个练习.在此纪录下来以便日后使用.附件为axis.jar包
webService类中写待测试的几个方法.
package com;
public class WebService {
public boolean login(String name, String password) {
if (name.equals("a") && password.equals("b")) {
return true;
}
return false;
}
private String privateMathod(String content) {
return content;
}
protected String protectedMethod(String content) {
return content;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<deployment
xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<parameter
name="adminPassword"
value="admin" />
<parameter
name="sendXsiTypes"
value="true" />
<parameter
name="sendMultiRefs"
value="true" />
<parameter
name="sendXMLDeclaration"
value="true" />
<parameter
name="axis.sendMinimizedElements"
value="true" />
<requestFlow>
<handler
type="java:org.apache.axis.handlers.JWSHandler">
<parameter
name="scope"
value="session" />
</handler>
<handler
type="java:org.apache.axis.handlers.JWSHandler">
<parameter
name="scope"
value="request" />
<parameter
name="extension"
value=".jwr" />
</handler>
</requestFlow>
</globalConfiguration>
<handler
name="Authenticate"
type="java:org.apache.axis.handlers.SimpleAuthenticationHandler" />
<handler
name="LocalResponder"
type="java:org.apache.axis.transport.local.LocalResponder" />
<handler
name="URLMapper"
type="java:org.apache.axis.handlers.http.URLMapper" />
<service
name="AdminService"
provider="java:MSG">
<parameter
name="allowedMethods"
value="AdminService" />
<parameter
name="enableRemoteAdmin"
value="false" />
<parameter
name="className"
value="org.apache.axis.utils.Admin" />
<namespace>http://xml.apache.org/axis/wsdd/
</namespace>
</service>
<service
name="Version"
provider="java:RPC">
<parameter
name="allowedMethods"
value="getVersion" />
<parameter
name="className"
value="org.apache.axis.Version" />
</service>
<transport
name="http">
<requestFlow>
<handler
type="URLMapper" />
<handler
type="java:org.apache.axis.handlers.http.HTTPAuthHandler" />
</requestFlow>
</transport>
<transport
name="local">
<responseFlow>
<handler
type="LocalResponder" />
</responseFlow>
</transport>
<service
name="WebService"
provider="java:RPC">
<parameter
name="className"
value="com.WebService" />
</service>
</deployment>
这是server-config.wsdd文件内容..些文件上面那一大段是干什么现在还不太清楚.
<service
name="WebService"
provider="java:RPC">
<parameter
name="className"
value="com.WebService" />
</service>
这一段才是重点,把WebService暴露一下WebService中所有public都能被外部访问到.
<servlet>
<servlet-name>Apache Axis Servlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Apache Axis Servlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
这一段是web.xml中内容.
package com;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.junit.Test;
public class WebServiceTest {
private String url = "http://localhost:8080/aaa/services/WebService?wsdl";
@Test
public void testLogin() throws Exception {
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName("login");
Boolean result = (Boolean) call.invoke(new Object[] { "a", "b" });
assertTrue(result);
}
@Test
public void testPrivateMathod() throws Exception {
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName("testPrivateMathod");
String returnContent = (String) call.invoke(new Object[] { "aaaa" });
assertEquals(returnContent, "aaaa");
}
}
分享到:
相关推荐
【WebService练习代码】是关于使用CXF框架与Spring进行集成的实践项目,旨在帮助开发者深入理解和应用WebService技术。WebService是一种基于互联网的、平台独立的、松耦合的、标准的接口,它允许不同系统间的应用...
这个“自己做的一个WebService练习”项目可能是为了帮助初学者理解并实践WebService的基本概念和技术。在这个项目中,你可能会遇到以下几个关键知识点: 1. **SOAP (Simple Object Access Protocol)**:SOAP是用于...
这是本人练习调用webservice接口的实例:通过省份获取城市,在获取天气信息.一切说明都在附件中,直接下载导入到eclipse,开发环境正常,并且能上网,即可运行成功。希望能帮到需要的小伙伴。
流程与该文章相同,只是文章在排版方面有点不习惯,特意自己再写一次,以之练习. 本示例包含2个项目,一个为WebService,另一个是普通ASP.net网站.WebService已经配置好,下载后需要在本机的IIS中建立一虚拟路径,指向...
WebService是网络服务的一种,它是一种部署在Web上的对象,可以使用Internet标准协议如HTTP进行访问。...同时,建议提供一些实战练习,如创建一个简单的待办事项列表Web服务,用以加深学习者的理解和操作能力。
在ASP.NET中,Web服务是通过继承`System.Web.Services.WebService`类并添加自定义方法来创建的。这些方法会被暴露为Web服务操作,可以被任何支持SOAP的客户端调用。 在本例的压缩包文件中提到的"DLL"可能是Delphi...
在【压缩包子文件的文件名称列表】中看到的"webService"可能是课程的资料或源码,包括示例项目的代码、PPT讲义、练习题和解决方案等,这些都是辅助学习的重要资源。通过结合视频教程和这些材料,你将能够全方位地...
在IT行业中,Spring框架和Web服务...此外,由于没有依赖外部库,这也有助于理解基本的组件和机制,对于初学者来说是很好的实践练习。通过实际操作,开发者可以更好地掌握Spring框架和Web服务技术,提升自己的技能水平。
底层Servlet实现WebService,请根据“创建WebService的几种方式简介(EndPoint、JAX-WS、CXF、axis2、自定义Servlet+Document解析)”文章配套练习
4. 练习创建和调用WebService,理解服务的生命周期和调用过程。 5. 使用SOAP UI等工具进行测试,确保服务的正确性和性能。 总的来说,WebService实例是学习和实践Web服务开发的重要资源,通过深入研究这些实例,你...
RESTful Web Service是...通过阅读这本书并结合实际项目练习,你可以掌握创建高效、可维护的RESTful Web服务的技能。RESTful风格不仅简化了服务设计,还提高了服务的互操作性和可发现性,是现代Web开发的重要组成部分。
在IT行业中,Web服务是一种基于网络的通信协议,允许不同应用程序之间进行数据交换。...通过实际的项目练习,如“WebServiceTest1_Client”和“WebServiceTest1”,可以加深对这些知识的理解和应用。
### WebService之Axis2教程知识点总结 ...通过以上内容的学习,开发者不仅可以掌握Axis2的基本原理和技术要点,还能通过实际项目练习加深理解,最终达到熟练应用Axis2构建高效稳定的Web服务系统的目的。
同时,"www.pudn.com.txt"可能是一个链接或资源列表,指向更多的学习资源,例如示例代码、练习或者相关讨论论坛,以辅助读者更全面地掌握Web服务的相关知识。 总的来说,学习Web服务、XML、WSDL和SOAP对于任何希望...
在.NET开发环境中,Listbox控件是常用的UI组件,它用于显示一列可选择的项。在实际项目中,我们经常需要将从Web服务获取的数据动态绑定到...通过不断的练习和项目实践,你将更加熟练地掌握Listbox与Web服务结合的技巧。
Web服务(WebService)是一种基于网络的、分布式的模块化组件,允许不同系统之间的应用程序通过互联网...通过这个练习,开发者可以提升对Web服务标准和相关技术的理解,从而在实际项目中更有效地实现系统间的互操作性。
ps:项目中用到的webservice接口来自于学校老师,大家可以使用此webservice网站(WebXml | WEB服务 | WEB服务解决方案和技术支持 | 网站设计 | 域名交易)的接口来练习。 项目背景图均来自于网络图片,如有侵权,请...
在提供的"SchemaLearn"文件中,你将找到一系列示例代码和练习,涵盖基本到高级的Schema使用场景。通过这些例子,你可以逐步学会如何创建和应用Schema,从而提升在WebService开发中的能力。 总的来说,WebService...
在本文中,我们将深入探讨如何使用C#语言调用Web服务来查询实时天气。这个话题对于初学者来说是一个很好的起点,因为它是实际项目中常见的一种...对于新手来说,这是一个很好的实战练习,能够提升编程和问题解决能力。