- 浏览: 1506219 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (516)
- Java (49)
- Java/Struts 2.0 (25)
- Java/Spring、Spring MVC (11)
- Java/Quartz (3)
- Java/Lucene (6)
- Java/Hibernate (19)
- Java/openJPA (7)
- Java/DWR (7)
- Java/Security、Spring Security/OAuth2 (6)
- Java/Threading (9)
- Java/XML (22)
- java/design pattern (4)
- Android (2)
- JavaScript (46)
- jquery (3)
- DB/MySQL (23)
- DB/Oracle (16)
- PHP (25)
- CSS (20)
- Linux (38)
- C/C++、DLL、Makefile、VC++ (31)
- 正则 (9)
- Eclipse (4)
- 安全、网络等概念 (25)
- 集群 (7)
- 网页 (5)
- 视频\音频 (1)
- HTML (6)
- 计算机数学/算法 (3)
- Virtualbox (1)
- LDAP (2)
- 数据挖掘 (6)
- 工具破解 (1)
- 其他 (13)
- Mail (1)
- 药材 (3)
- 游戏 (2)
- hadoop (13)
- 压力测试 (3)
- 设计模式 (3)
- java/Swing (2)
- 缓存/Memcache (0)
- 缓存/Redis (1)
- OSGI (2)
- OSGI/Gemini (0)
- 文档写作 (0)
- java/Servlet (3)
- MQ/RabbitMQ (2)
- MQ/RocketMQ (0)
- MQ/Kafka (1)
- maven (0)
- SYS/linux (1)
- cache/redis (1)
- DB/Mongodb (2)
- nginx (1)
- postman (1)
- 操作系统/ubuntu (1)
- golang (1)
- dubbo (1)
- 技术管理岗位 (0)
- mybatis-plus (0)
最新评论
-
pgx89112:
大神,请赐我一份这个示例的项目代码吧,万分感谢,1530259 ...
spring的rabbitmq配置 -
string2020:
不使用增强器 怎么弄?
OpenJPA的增强器 -
孟江波:
学习了,楼主,能否提供一份源代码啊,学习一下,十分感谢!!!4 ...
spring的rabbitmq配置 -
eachgray:
...
spring-data-redis配置事务 -
qljoeli:
学习了,楼主,能否提供一份源代码啊,学习一下,十分感谢!!!1 ...
spring的rabbitmq配置
本文参考自:J2EE Web服务开发系列之十二: 实现安全的AXIS Web服务,第1部分
package com.hellking.study.webservice; public class PersonalTaxService { final double base = 3500;// 所得税上缴基数。 public double getTax(double salary) { double tax_salary = salary - base; double tax = 0.0d;// 计算后的所得税。 if (0 > tax_salary) tax = 0; else if (0 < tax_salary && tax_salary <= 1500) tax = tax_salary * 0.03 - 0; else if (1500 < tax_salary && tax_salary <= 4500) tax = tax_salary * 0.10 - 25; return tax; } }
布署web 服务
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <service name="PersonalTaxService" provider="java:RPC"> <parameter name="allowedMethods" value="*"/> <parameter name="className" value="com.hellking.study.webservice.PersonalTaxService"/> </service> </deployment>
执行命令:
java -classpath %CLASSPATH% org.apache.axis.client.AdminClient -l http://localhost:8080/axis/services/PersonalTaxService D:/workspace-java/axis1/web/WEB-INF/deploy_auth_basic.wsdd
编辑%TOMCAT_HOME%/conf/tomcat-users.xml ,添加用户角色和用户:
<role rolename="department-manager"/> <user username="hellking" password="simplewebservices" roles="department-manager"/>
编辑/axis1/web/WEB-INF/web.xml,在最后添加上:
<security-constraint> <web-resource-collection> <web-resource-name>Tax Web service</web-resource-name> <url-pattern>/services/PersonalTaxService</url-pattern> </web-resource-collection> <auth-constraint> <role-name>department-manager</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>Axis Basic Authentication Area</realm-name> </login-config> <security-role> <role-name>department-manager</role-name> </security-role>
最后编写客户端代码:
package com.hellking.study.webservice; import javax.xml.namespace.QName; import javax.xml.rpc.ParameterMode; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.encoding.XMLType; /** * 调用需要验证的Web服务 */ public class AuthClient { static final double salary = 50000; public static void main(String[] args) { try { // 服务端的url,需要根据情况更改。 String endpointURL = "http://localhost:8080/axis/services/PersonalTaxService";// Web服务端点地址 Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new java.net.URL(endpointURL)); call.setOperationName(new QName("PersonalTaxService", "getTax"));// 设置操作的名称。 // 由于需要认证,故需要设置调用的用户名和密码。 call.getMessageContext().setUsername("hellking");// 设置用户名。 call.getMessageContext().setPassword("simplewebservices");// 设置密码 call.addParameter("op1", XMLType.XSD_DOUBLE, ParameterMode.IN);// 参数的类型 call.setReturnType(XMLType.XSD_DOUBLE);// 返回的数据类型 Double ret = (Double) call.invoke(new Object[] { new Double(salary) });// 执行调用 System.out.println("使用HTTP协议来作为Web服务的传输协议!"); System.out.println("已经成功调用。请参看服务端的输出!"); System.out.println("输入工资" + salary + "元,应交个人所得税:" + ret); } catch (Exception e) { e.printStackTrace(); } } }
测试:
1、访问:http://localhost:8080/axis/services,将列出web服务列表
点击PersonalTaxService 的wsdl链接地址,验证一下会不会提示要输入用户名和密码。
发表评论
-
xStream开发HTTP的XML内容
2013-07-03 09:58 10201、编写自定义XPPDriver代码: package ... -
AXIS2 开发示例
2013-06-28 17:10 1009实体类: package com.mport.entity ... -
HttpURLConnection or URLConnection post xml content to web server
2013-05-31 01:56 2019客户端示例1: package client; ... -
Axis2 体系结构
2012-06-19 12:34 966前言 结构都是它本身所能产生效率的结果。任何一个成功 ... -
Axis 1.4 基于wss4j UsernameToken 的安全验证
2011-12-30 17:24 2426利用以下的wsdl文件生成客户端及服务端代码: < ... -
wss4j和axis2实现WS-Security(2)
2011-12-29 12:13 1053转自:http://hi.baidu.com/zhaopeng ... -
wss4j和axis2实现WS-Security(1)
2011-12-29 11:31 1151转自:http://hi.baidu.com/zhaopeng ... -
Using WS-Security with Axis (Java) v2006
2011-12-23 11:24 1517转自:http://www.arcwebservices.co ... -
[Java] Testing SOAP Headers with a Simple Axis Handler
2011-12-23 11:02 1117转自:http://weblogs.asp.net/jdanf ... -
Axis 1.4 将WSDL文件逆向后String数组只变成String
2011-12-22 08:26 1957这些天在对一个项目扩展功能时使用Axis 1. ... -
实现Axis web service 的数字证书认证(CLIENT-CERT)
2011-12-09 12:28 3704本文参考自:J2EE Web服务开发系列之十二: 实现安全的 ... -
生成SOAP消息示例
2011-09-27 11:36 11222调用 web service 时生成soap消息的区别, ... -
Axis 1.4 上传二进制文件(base64Binary)
2011-04-22 16:32 2015服务端代码: package samples.userg ... -
Axis 1.4 WSDL2Java、Java2WSDL的使用
2011-04-21 16:52 3399d:>java -classpath % ... -
在axis1.4中传递复杂类型数组参数(ArrayMapping)
2011-04-21 11:50 3675Axis1.4环境配置: 配置一些工具在命 ... -
axis2 学习(rpc)
2011-04-15 16:03 2111刚开始学习时,可不必考虑某些包的功能。我当前是把所有的包都导进 ... -
xfire 学习
2011-04-14 13:45 788我 -
学习dom4j的jaxb实现(半成品)
2011-03-08 16:47 1241primer.xml <?xml version=&q ... -
使用dom4j修改xml元素
2011-02-21 15:47 12223预先编写一个xml文件book ... -
使用 dom4j编写一个简单输出到文件的例子
2011-02-21 15:03 1060代码编写是参考这篇文档: http://blog.csd ...
相关推荐
Axis开发Web Service实例,介绍AXIS的三种方法
axis web service client 源码
基于AXIS2实现Web Service开发
介绍AXIS WEB Service的安装 入门及应用 WEB Service
axis web service的教程,入门到精通
本资源是Web Service 的框架之一 Axis 集成Web网站示例代码
通过该实验将掌握配置MyEclipse7.0的axis Web Service的开发环境,通过Top-Down方式创建、发布基于axis Web Service的基本步骤,进一步加深学生对XML、WSDL、SOAP等Web Service概念的理解。
本案例为java开发的axis的web service案例。下载后直接部署到tomcat下即可运行。大家互相学习。
axis实现的web service例子,并做了一些封装,分为服务端和客户端两个项目,可以直接使用到自己的项目中
用axis2开发web service,过程比用axis1开发web service简单
web service在web接口系统中是jms中很不错的一个选择。而axis又是开发web service的不二人选。本文通过理论结合实例的方式讲解如何通过axis来开发web service。所有实例代码均可copy运行成功。
axis1.4 spring3.0 集成 实现 web service 服务端, axis1.4 客户端认证,授权,访问日志记录,集成spring 解决 PHP 调用web service 无法认证,和解析soap 模板
web service axis 1.6。配置说明,客户端,服务端代码
使用AXIS开发Web Service 客户端调用的三种方式都有完整例子及步骤
Axis2创建web service快速入门
Axis2 Web Service 开发教程, axis2_WebService_开发指南
MyEclipse下开发Web Service(Axis)
web service axis1.4所有的jar
web service架设完整流程,内附图解教学