Example tutorial for developing webservice server
Written in front:
There are many methods and frameworks for developing webservices, such as cxf, etc., but these must use the annotation function when you write service classes. If the current jdk is 1.4, then the annotation function cannot be used. So the axis tool can be used here.
1. Required jar package:
2. Generally, webservice is used in web projects at work, so when creating a web project, The required jar package is placed in the lib directory
3. In the web.xml file, add
<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>
4. Create a service class, an interface, and an implementation class That’s it, first the interface
package edu.hue.server;public interface SayHello {public String say(String name); }
Then the implementation class of the interface
package edu.hue.server;public class SayHelloImpl implements SayHello{public String say(String name) {return "Hello my friend " + name; } }
5. Create it below WEB-INF server-config.wsdd (Create this file directly, then copy the following code, and then add your own service configuration as needed. In fact, this file can be generated by yourself. You need to create a deploy.wsdd yourself to start the project. After running, server-config.wsdd will be automatically generated. For convenience, the process is omitted here. You only need to add your own service to server-config.wsdd. Learn how to use it first)
<?xml version="1.0" encoding="UTF-8"?> <deployment> <!-- 这里的globalConfiguration暂时不用管是什么意思,可以先注释掉,不影响结果 <globalConfiguration> <parameter name="sendMultiRefs" value="true"/> <parameter name="disablePrettyXML" value="true"/> <parameter name="adminPassword" value="admin"/> <parameter name="attachments.Directory" value="E:\sotfWares\sotfware\Tomcat\apache-tomcat-7.0.62-windows-x86\apache-tomcat-7.0.62\webapps\test_axis3\WEB-INF\attachments"/> <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"/> <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></handler> <handler></handler> <handler></handler> <!-- 这里的几个服务也可以先注释掉 这是自带的服务 注释后就只显示自己的服务<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> <requestflow> <handler></handler> <handler></handler> </requestflow> <parameter></parameter> <parameter></parameter> <parameter></parameter> <parameter></parameter> <parameter></parameter> <parameter></parameter> </transport> <transport> <responseflow> <handler></handler> </responseflow> </transport> <!-- 配置自己的服务 --> <service> <parameter></parameter> <parameter></parameter> </service> </deployment>
Parameter explanation: name: a name for the service here is called sayHello, and then the following value="Fill in here is the full path of the implementation class of your service", almost these two parameters need to be changed, the others Just copy it
6. Run the project, enter in the browser: localhost:8080/test_axis3_stub/services, press Enter, and you can access it.
Localhost:8080/test_axis3_stub (project name)/services (the service access path is configured in web.xml to intercept /services/*, so you only need to enter services here to access)
What is mentioned here is a simple introduction. If it involves complex parameters, such as the transfer of beans, you need to study it further. (It seems that you also need to make relevant configurations when configuring the service in server-config.wsdd)
The above is the detailed content of Example tutorial for developing webservice server. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Atom editor mac version download
The most popular open source editor

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment