Spring WS - ไคลเอนต์การเขียน

ในบทนี้เราจะเรียนรู้วิธีการสร้างไคลเอนต์สำหรับเว็บแอ็พพลิเคชันเซิร์ฟเวอร์ที่สร้างในSpring WS - เซิร์ฟเวอร์การเขียนโดยใช้ Spring WS

ขั้นตอน คำอธิบาย
1 อัพเดตโปรเจ็กต์ countryService ภายใต้แพคเกจ com.tutorialspoint ตามที่อธิบายไว้ในบท Spring WS - Writing Server
2 สร้าง CountryServiceClient.java ภายใต้แพ็กเกจ com.tutorialspoint.client และ MainApp.java ภายใต้แพ็คเกจ com.tutorialspoint ตามที่อธิบายในขั้นตอนต่อไปนี้

CountryServiceClient.java

package com.tutorialspoint.client;

import org.springframework.ws.client.core.support.WebServiceGatewaySupport;
import com.tutorialspoint.GetCountryRequest;
import com.tutorialspoint.GetCountryResponse;

public class CountryServiceClient extends WebServiceGatewaySupport {
   public GetCountryResponse getCountryDetails(String country){
      String uri = "http://localhost:8080/countryService/";
      GetCountryRequest request = new GetCountryRequest();
      request.setName(country);

      GetCountryResponse response =(GetCountryResponse) getWebServiceTemplate()
         .marshalSendAndReceive(uri, request);
      return response;
   }
}

MainApp.java

package com.tutorialspoint;

import org.springframework.oxm.jaxb.Jaxb2Marshaller;
import com.tutorialspoint.client.CountryServiceClient;

public class MainApp {
   public static void main(String[] args) {
      CountryServiceClient client = new CountryServiceClient();
      Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
      marshaller.setContextPath("com.tutorialspoint");
      client.setMarshaller(marshaller);
      client.setUnmarshaller(marshaller);
      GetCountryResponse response = client.getCountryDetails("United States");

      System.out.println("Country : " + response.getCountry().getName());
      System.out.println("Capital : " + response.getCountry().getCapital());
      System.out.println("Population : " + response.getCountry().getPopulation());
      System.out.println("Currency : " + response.getCountry().getCurrency());
   }
}

เริ่มบริการเว็บ

เริ่มเซิร์ฟเวอร์ Tomcat และตรวจสอบให้แน่ใจว่าเราสามารถเข้าถึงหน้าเว็บอื่น ๆ จากโฟลเดอร์ webapps โดยใช้เบราว์เซอร์มาตรฐาน

ทดสอบไคลเอนต์บริการเว็บ

คลิกขวาที่ MainApp.java ในแอปพลิเคชันของคุณภายใต้ Eclipse และใช้ run as Java Applicationคำสั่ง หากทุกอย่างเรียบร้อยกับแอพพลิเคชั่นมันจะพิมพ์ข้อความต่อไปนี้

Country : United States
Capital : Washington
Population : 46704314
Currency : USD

ที่นี่เราได้สร้างลูกค้า - CountryServiceClient.javaสำหรับบริการเว็บที่ใช้ SOAP MainApp ใช้ CountryServiceClient เพื่อเข้าชมบริการเว็บทำการโพสต์คำขอและรับข้อมูล