JAVA 에서 XFire 를 사용 하여 WebService 인 터 페 이 스 를 호출 합 니 다.

4422 단어 자바Webservicexfire
우선 hello World 를 예 로 들 면인터넷 에서 많이 봤 어 요.
1. 서버 (클 라 이언 트 에 Webservice 인터페이스 제공)
개발 절차: 1. 프로젝트 생 성
File - > New - > Web Service Project, 웹 서비스 Project 창 을 팝 업 합 니 다. ProjectName (WebServiceProject) 을 작성 하고 XFire 를 선택 한 다음 next 를 실행 해 야 합 니 다.
                    생 성 이 완료 되면 생 성 된 웹. xml 파일 을 엽 니 다. XFire 가 설정 되 어 있 습 니 다.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    <servlet-name>XFireServlet</servlet-name>
    <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>XFireServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

2. WebService 서비스 설정 services. xml 만 들 기
<?xml version="1.0" encoding="UTF-8"?>
 <beans xmlns="http://xfire.codehaus.org/config/1.0">
     <service>
         <name>IMyService</name>
         <namespace>com.demo.service</namespace>
         <serviceClass>com.demo.service.IIMyService</serviceClass>
         <implementationClass>com.demo.service.IMyServiceImpl</implementationClass>
         <style>wrapped</style>
         <use>literal</use>
         <scope>application</scope>
     </service>
</beans>
3. 인터페이스 와 기본 구현 생 성
IIMyService.java
package com.demo.service;public interface IIMyService {public String example(String message);}
IMyServiceImpl.java
package com.demo.service;public class IMyServiceImpl implements IIMyService {public String example (String message) {/ TODO 는 자신의 논리 return message 를 씁 니 다.} 서버 코드 생 성 이 완료 되 었 습 니 다.테스트
http://localhost:9999/WebServiceProject/services/IMyService?wsdl 성공 후
2. 클 라 이언 트 (서버 에서 제공 하 는 WebService 인터페이스 방법 호출)
1. Hello World 프로젝트 의 클래스 를 만 들 것 입 니 다.만약 당신 이 아직 이렇게 하지 않 았 다 면, 당신 이 추가 해 야 할 XFireHTTP 클 라 이언 트 라 이브 러 리 는 자바 테스트 클 라 이언 트 의 구축 경 로 를 포함 할 것 입 니 다.
(1) 포장 에서 HelloWorld 항목 을 오른쪽 단추 로 클릭 하고 Build Path > 컨 텍스트 메뉴 에서 라 이브 러 리 추가 (2) MyEclipse 도서관 선택 (3) 에서 선택 한 XFire HTTP 클 라 이언 트 라 이브 러 리 선택
2. HelloWorldClient 클래스
package com.myeclipse.client;

import java.net.MalformedURLException;

import org.codehaus.xfire.XFireFactory;
import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;

import java.net.MalformedURLException;
import java.net.URL;

import org.codehaus.xfire.client.Client;
import com.demo.client.IIMyService;

public class HelloWorldClient {

	public static void main(String[] args)throws MalformedURLException,
    Exception  { 
//	    Service srvcModel = new   ObjectServiceFactory().create(IIMyService.class);  
//	    XFireProxyFactory factory =   
//	       new XFireProxyFactory(XFireFactory.newInstance().getXFire());  
//	    String helloWorldURL =  
//	       "http://localhost:9999/WebServiceProject/services/MyService";  
//	    try {  
//	    	IIMyService srvc = (IIMyService)factory.create( srvcModel, helloWorldURL);  
//	       String result = srvc.example("hello world");  
//	       System.out.print(result);  
//	    } catch (MalformedURLException e) {  
//	       e.printStackTrace();  
//	    } 
	    Client client = new Client(new URL(
	            "http://localhost:9999/WebServiceProject/services/IMyService?wsdl"));
	    Object[] results = client
	            .invoke("example", new Object[] { "hello world" });
	    System.out.println(results[0]);
	    
	  } 

}
3 성공:)
주:http://www.myeclipseide.com/documentation/quickstarts/webservices/

좋은 웹페이지 즐겨찾기