suchen
HeimJavajavaLernprogrammBeispiel-Tutorial für die Entwicklung eines Webservice-Servers

Beispiel-Tutorial für die Entwicklung eines Webservice-Servers

Jun 27, 2017 am 09:28 AM
webwebservice开发快速服务

Vorher geschrieben:

Es gibt viele Methoden und Frameworks zum Entwickeln von Webservices, wie z. B. cxf usw., diese müssen jedoch die Annotationsfunktion verwenden, wenn Sie Serviceklassen schreiben. Wenn das aktuelle JDK 1.4 ist, kann die Anmerkungsfunktion nicht verwendet werden. Daher kann hier das Achsenwerkzeug verwendet werden.

1. Erforderliches JAR-Paket:

2. Im Allgemeinen wird Webservice in Webprojekten verwendet, also beim Erstellen eines Webprojekts Pakete werden im lib-Verzeichnis abgelegt

3 Fügen Sie in der Datei web.xml

<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 hinzu Implementieren Sie einfach die Klasse, zuerst die Schnittstelle

package edu.hue.server;public interface SayHello {public String say(String name);
}

Dann die Implementierungsklasse der Schnittstelle

package edu.hue.server;public class SayHelloImpl implements SayHello{public String say(String name) {return "Hello my friend " + name;
    }

}


5. Erstellen Sie unten server-config.wsdd unter WEB-INF (erstellen Sie diese Datei direkt, kopieren Sie dann den folgenden Code und fügen Sie dann nach Bedarf die Konfiguration Ihres eigenen Dienstes hinzu. Tatsächlich kann diese Datei von Ihnen selbst generiert werden. Sie müssen sie erstellen Nachdem Sie das Projekt gestartet haben, wird server-config.wsdd automatisch generiert. Der Vorgang wird hier weggelassen. Sie müssen nur Ihren eigenen Dienst zu server-config.wsdd hinzufügen es zuerst)

<?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>

Parametererklärung: Name: ein Name für den Dienst, hier ist sayHello, und dann der folgende Wert="Füllen Sie hier den vollständigen Pfad der Implementierung ein Klasse Ihres Dienstes“, fast Diese beiden Parameter müssen geändert werden, die anderen können kopiert werden

6. Führen Sie das Projekt aus, geben Sie im Browser Folgendes ein: localhost:8080/test_axis3_stub/services, drücken Sie die Eingabetaste und Sie können darauf zugreifen.

Localhost:8080/test_axis3_stub (Projektname)/services (der Dienstzugriffspfad ist in web.xml so konfiguriert, dass er /services/* abfängt, sodass Sie hier nur Dienste eingeben müssen, um darauf zuzugreifen)

Was hier erwähnt wird, ist eine einfache Einführung. Wenn es sich um komplexe Parameter wie die Übertragung von Bohnen handelt, müssen Sie diese weiter untersuchen. (Es scheint, dass Sie auch relevante Konfigurationen vornehmen müssen, wenn Sie Dienste in server-config.wsdd konfigurieren)

Das obige ist der detaillierte Inhalt vonBeispiel-Tutorial für die Entwicklung eines Webservice-Servers. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen