開發基於xfire的webservice的兩種方式

一. 經過MyEclipse工具,導入webservice庫到web project或新建webservice工程。自動將普通的javabean(必需要以接口和實現類的方式出現)發佈爲webservice。在WebRoot下生成一個WebServices目錄,目錄下有一個services.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://xfire.codehaus.org/config/1.0"> <service> <name>GetUserInfo</name> <serviceClass> com.wltx.webservice.server.UserInfoInterfase </serviceClass> <implementationClass> com.wltx.webservice.server.UserInfoImpl </implementationClass> <style>wrapped</style> <use>literal</use> <scope>application</scope> </service></beans> 在web.xml文件中會自動配置 <servlet> <servlet-name>XFireServlet</servlet-name> <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> <servlet-class>org.codehaus.xfire.spring.XFireSpringServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping> 在瀏覽器輸入訪問路徑+services,會出現一個wsdl的連接,成功。 【也能夠利用Altova XMLSpy 工具,在soap中create new soap request,輸入wsdl連接,配置參數,而後send,能夠獲得返回結果】 《注意: xfire1.2.6自帶的是spring1.2.6,若是項目中有spring更高版本的jar文件,要刪除掉,這點很差》 2、xfire和spring集成,好處:由spring容器管理,能夠注入 service或DAO 修改上面工程: 一、 修改web.xml <servlet> <servlet-name>XFireServlet</servlet-name> <!-- 去掉工具生成,集成spring --> <!-- <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>--> <servlet-class>org.codehaus.xfire.spring.XFireSpringServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> 二、 刪除WebRoot下的WebServices目錄 三、 若是是spring分散裝備,新建application-webservice.xml 第一步添加: <import resource="classpath:org/codehaus/xfire/spring/xfire.xml" /> 第二步: 將本身的service接口和實現類作配置 <bean id="getUserInfo" class="com.wltx.webservice.server.UserInfoImpl" singleton="true"> <property name="manageUserService"> <ref bean="manageUserService" /> </property> </bean> <bean name="GetUserInfoService" class="org.codehaus.xfire.spring.ServiceBean"> <property name="serviceBean" ref="getUserInfo"/> <property name="serviceClass" value="com.wltx.webservice.server.UserInfoInterfase"/> </bean>
相關文章
相關標籤/搜索