我在的项目中使用到了webservice,使用的是axis2.
myeclipse5.5,axis1.4.1,tmcat5.5.27
首先,建立一个web项目,在lib中导入axis2的所有包。
修改web.xml。
如下:
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <!DOCTYPE web-app
- PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd">
- <web-app>
- <display-name>Apache-Axis2</display-name>
- <servlet>
- <servlet-name>AxisServlet</servlet-name>
- <display-name>Apache-Axis Servlet</display-name>
- <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>AxisServlet</servlet-name>
- <url-pattern>/services/*</url-pattern>
- </servlet-mapping>
- </web-app>
建立web服务类:
- package com.axis.service;
- public class BookService {
- private Book onlyBook;
- public BookService() {
- onlyBook = new Book();
- onlyBook.setAuthor("Dan Diephouse");
- onlyBook.setTitle("Using Axis2");
- onlyBook.setIsbn("0123456789");
- }
- public Book[] getBooks() {
- return new Book[]{onlyBook};
- }
- public Book findBook(String isbn) {
- if (isbn.equals(onlyBook.getIsbn()))
- return onlyBook;
- return null;
- }
- }
- package com.axis.service;
- public class Book {
- private String title;
- private String isbn;
- private String author;
- public String getIsbn() {
- return isbn;
- }
- public void setIsbn(String isbn) {
- this.isbn = isbn;
- }
- public String getTitle() {
- return title;
- }
- public void setTitle(String title) {
- this.title = title;
- }
- public String getAuthor() {
- return author;
- }
- public void setAuthor(String author) {
- this.author = author;
- }
- }
写webservices的配置文件:services.xml
- services.xml
- <serviceGroup>
- <service name="BookService"
- targetNamespace="http://ws.apache.org/axis2/samples/book/">
- <description>
- Book sample service
- </description>
- <schema schemaNamespace="http://ws.apache.org/axis2/samples/book/xsd/"/>
- <parameter name="ServiceClass" locked="false">com.axis.service.BookService</parameter>
- <operation name="getBooks">
- <messageReceiver class="org.apache.axis2.rpc.receivers.RPcmessageReceiver"/>
- </operation>
- <operation name="findBook">
- <messageReceiver class="org.apache.axis2.rpc.receivers.RPcmessageReceiver"/>
- </operation>
- </service>
- </serviceGroup>
项目和axis的结构如下图:
最后,将项目部署到服务器,运行。
访问:http://localhost:8080/AxisTest/services/BookService?wsdl,可以看到服务的wsdl描述。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。