Spring FrameworkによるXFireを利用したWebサービス開発
Springを使用してXFireでWebServiceを開発する手順は次のとおりです。
- XFire の依存関係を追加する
Mavenプロジェクトでは、pom.xmlファイルに以下の依存を追加できます。
<dependency>
<groupId>org.codehaus.xfire</groupId>
<artifactId>xfire-spring</artifactId>
<version>1.2.6</version>
</dependency>
- Webサービスインタフェースの作成
Javaインターフェースを作成し、Webサービスのメソッドを定義します。たとえば、
public interface MyWebService {
String sayHello(String name);
}
- Webサービスインターフェイスの実装
WebServiceインターフェースを実装するクラスを作成する。例えば、
public class MyWebServiceImpl implements MyWebService {
public String sayHello(String name) {
return "Hello, " + name + "!";
}
}
- Springの設定ファイルを配置する
Spring構成ファイルにXFire関連設定を追加します。たとえば、「xfire-servlet.xml」という構成ファイルを作成し、以下の内容を追加できます。
<bean id="myWebService" class="com.example.MyWebServiceImpl" />
<bean id="xfire" class="org.codehaus.xfire.spring.XFireExporter">
<property name="serviceFactory">
<bean class="org.codehaus.xfire.service.DefaultServiceFactory"/>
</property>
<property name="serviceConfigurations">
<list>
<bean class="org.codehaus.xfire.service.binding.ObjectServiceConfiguration"/>
</list>
</property>
<property name="service" ref="myWebService" />
</bean>
- サーブレットの配置
web.xmlでSpringのDispatcherServletを設定し、「xfire-servlet.xml」の設定ファイルを使用するように明示する。例えば、
<servlet>
<servlet-name>xfire</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:xfire-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>xfire</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
- アプリを起動する
アプリケーションを起動し、http://localhost:8080/services/MyWebService にアクセスして WebService サービを利用します。
上記は、Spring による XFire の利用手順の概略です。実際の環境に合わせて適時調整してください。