在去年一个项目 因为用户客户端需要计算很长的逻辑取数 使用了webservice 调用后台逻辑层
以下代码是我简单配置能运行成功的;
tomcat6 jdk1.5
例子 java调用java中的webservice
下次发布文章
.net调用java webservice ,
java调用.net webservice
web.xml 配置axis
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
服务端代码
package com.servers;
import java.sql.ResultSet;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.jdbc.BaseDAO;
/**
* @author zhoualine
*
*/
public class Demo {
private static Log log = LogFactory.getLog(Demo.class);
public String isflag(int i) {
BaseDAO bs=new BaseDAO();
try{
// bs.setConType("oracle");
// bs.setUrl("jdbc:oracle:thin:username/password@127.0.0.1:1521:sid");
// ResultSet res=bs.exeQuery("select * from pb_test ts where ts.sbid="+i);
// if(res.next()){
// return res.getString(2);
// }else{
// return null;
// }
if(i==123)
return "my si webservice";
return "hello";
}catch(Exception ce){
log.error(""+ce.getMessage());
return "error";
// throw new Exception(""+ce.getMessage());
}
}
// public static void main(String[] args) {
// Demo dm=new Demo();
// try {
// System.out.print(dm.isflag(1));
// } catch (Exception e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
// }
}
客户端调用代码
package com.client;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class test {
public static void main(String[] args) {
try {
// 指出service所在URL 自己测试看有没有
String endpoint = "http://127.0.0.1:8082/mywebservice/services/Demo.jws";
// 创建一个服务(service)调用(call)
Service service = new Service();
Call call = (Call) service.createCall();// 通过service创建call对象
// 设置service所在URL
call.setTargetEndpointAddress(new java.net.URL(endpoint));
// 方法名(processService)与MyService.java方法名保持一致
call.setOperationName("isflag");
// Object 数组封装了参数,参数为"This is Test!",调用processService(String arg)
String ret = (String) call.invoke(new Object[] { 123 });
System.out.print(ret);
} catch (Exception ce) {
ce.printStackTrace();
}
}
}
webserivce 描述文件server-config.wsdd
<?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="sendMultiRefs" value="true" />
<parameter name="disablePrettyXML" value="true" />
<parameter name="dotNetSoapEncFix" value="true" />
<parameter name="enableNamespacePrefixOptimization"
value="false" />
<parameter name="sendXMLDeclaration" value="true" />
<parameter name="sendXsiTypes" value="true" />
<parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl" />
</globalConfiguration>
<handler type="java:org.apache.axis.handlers.http.URLMapper"
name="URLMapper" />
<service name="Demo.jws" provider="java:RPC">
<!-- 这里是你要修改 的类结构 -->
<parameter name="className" value="com.servers.Demo" />
<parameter name="scope" value="request" />
<!-- * 代表所有方法可调用 -->
<parameter name="allowedMethods" value="*" />
<messageReceiver
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver" />
</service>
<transport name="http">
<requestFlow>
<handler type="URLMapper" />
</requestFlow>
</transport>
</deployment>
服务 客户端 所有环境配置已经写完 其实也不难 其他都是你自己在里面加逻辑了
分享到:
相关推荐
webService—Axis实例webService—Axis实例webService—Axis实例webService—Axis实例webService—Axis实例webService—Axis实例webService—Axis实例
axis实现webservice,服务端客户端代码齐全,jar包齐全,客户端代码自动生成
webservice的框架有很多种axis1 axis2 cfx......。 其中axis1.4是比较稳定和成熟的一种。。。 axis的下载 http://ws.apache.org/axis/
利用空闲时间整理出的使用Axis实现的webservice,该实例为Axis实现的服务端和客户端的完整实例代码(测试已通过),希望能帮助跟我一样初次接触webservice的新手
axis发布webservice教程axis发布webservice教程axis发布webservice教程axis发布webservice教程
使用axis开发webservice使用的jar包
使用axis发布webservice服务,客户端 服务端均有 本地测试通过。
应用axis实现WebService.pdf应用axis实现WebService.pdf
一个基于axis的webservice接口例子
axis2实现webservice功能,详细的myeclipse配置及xml配置
借鉴网上的资源,弄了一个SpringBoot开发WebService之Axis示例。
Axis2WebService源码。本地测试通过。
Android 利用axis2 调用webservice 包含j2ee服务端代码和Android客户端代码 代码实现包含 List,map ,对象传递
spring+axis集成webservice
本案例实现使用Axis2生成.arr包发布WebService服务,并使用Axis2生成客户端代码方式调用WebService
axis调用第三方webservice接口所需的jar包,包括axis-1.4.jar,axis-jaxrpc-1.3.jar,axis-jaxrpc-1.4.jar,commons-discovery-0.5.jar,commons-logging-1.2.jar,cxf-rt-databinding-jaxb-3.3.1.jar,javax.mail-...
使用Axis2搭建_WebService
压缩包中包含详细代码以及所用到的jar,是完整可运行的project。当然,需要正确的路径支持才可以运行,本人没有把我所用到的路径贴出,改为本机地址。
Axis实现WebService步骤,操作简单易学。