Brapの作成WebService

3242 ワード

BrapによるWebServiceの開発,BrapによるWebService暴露クラス,ProxyService letによる関連クラスの実現.関連する構成の初期化パラメータが必要です.サービス、authorizationProvider、authenticationProviderなどが実現されます.
 
サービスインタフェース:
package com.easyway.remoting.braps;



/**
 *        
 * @author longgangbai
 *
 */
public interface HelloService {
    public String sayHello(String name);
}

 
インタフェース実装クラス:
package com.easyway.remoting.braps;
/**
 *          
 * @author longgangbai
 *
 */
public class HelloServiceImpl implements HelloService {
    public String sayHello(String name) {
      return "Hello world, " + name;
    }
}

 
web.xml構成:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
		 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
		 version="2.4">


 <!--     brap      -->
	<servlet>
		<servlet-name>hello</servlet-name>
		<servlet-class>no.tornado.brap.servlet.ProxyServlet</servlet-class>
		<!--      bean   -->
        <init-param>
            <param-name>service</param-name>
            <param-value>com.easyway.remoting.braps.HelloServiceImpl</param-value>
        </init-param>
        <init-param>
           <param-name>authorizationProvider</param-name>
           <param-value>no.tornado.brap.auth.AuthenticationNotRequiredAuthorizer</param-value>
        </init-param>
        <init-param>
           <param-name>authenticationProvider</param-name>
           <param-value>no.tornado.brap.auth.AuthenticationNotRequiredAuthenticator</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
	</servlet>
   <!--         -->
	<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/remoting/hello</url-pattern>
	</servlet-mapping>

    
</web-app>

 
クライアント呼び出しコード:
package com.easyway.ws.brap.service.client;

import java.net.MalformedURLException;

import no.tornado.brap.client.ServiceProxyFactory;

import com.easyway.remoting.braps.HelloService;

/**
 *        
 * @author longgangbai
 *
 */
public class BrapClient {
	public static void main(String[] args) throws MalformedURLException {
		//        
		HelloService service = ServiceProxyFactory.createProxy(
				HelloService.class,
				"http://localhost:8080/BrapServiceWS/remoting/hello");
		//      
		System.out.println(service.sayHello("Hello"));

	}
}